:root{
  --paper:#f2eee4;
  --paper-2:#e9e2d3;
  --surface:#fffdf8;
  --ink:#1c211f;
  --forest:#183b32;
  --forest-2:#102e27;
  --forest-soft:#dce6df;
  --wine:#7a3932;
  --brass:#b6843f;
  --brass-soft:#efe2c5;
  --muted:#666a64;
  --line:#d8cfbf;
  --line-dark:#b8ab97;
  --max:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.68 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:var(--max);margin:auto;padding:0 30px}
.site-header{height:78px;background:var(--forest-2);border-bottom:1px solid #284a42;position:sticky;top:0;z-index:20;box-shadow:0 5px 18px rgba(24,35,31,.08)}
.header-inner{height:100%;display:flex;align-items:center}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}
.brand-mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.4);background:#244c42;color:#fff;font:700 11px/1 Georgia,serif;letter-spacing:.08em;box-shadow:inset 0 0 0 3px rgba(255,255,255,.04)}
.brand-text{display:flex;flex-direction:column;line-height:1.05}
.brand-text b{font-family:Georgia,"Times New Roman",serif;font-size:17px;font-weight:600;letter-spacing:.005em}
.brand-text small{margin-top:5px;color:#b9c9c3;font-size:9px;text-transform:uppercase;letter-spacing:.16em}
.site-header nav{display:flex;gap:27px;margin-left:56px}
.site-header nav a,.header-about{font-size:13px;text-decoration:none;color:#d8e2de}
.site-header nav a:hover,.header-about:hover{color:#fff}
.header-about{margin-left:auto;border-left:1px solid #35564e;padding-left:24px}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;color:var(--forest-2);letter-spacing:-.025em;margin-top:0}
h1{font-size:clamp(46px,5vw,72px);line-height:1.02}
h2{font-size:clamp(29px,3vw,41px);line-height:1.14}
h3{font-size:22px;line-height:1.25}
.overline,.section-heading>div>span,.article-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:var(--wine)}
.underlink{color:var(--wine);font-weight:700;text-underline-offset:4px}

/* Home: restrained library character */
.home-intro{position:relative;background:linear-gradient(90deg,#f7f1e4 0,#f7f1e4 68%,#ece4d3 68%,#ece4d3 100%);border-bottom:1px solid var(--line);padding:82px 0 76px;overflow:hidden}
.home-intro:after{content:"";position:absolute;right:5%;top:0;width:230px;height:100%;opacity:.16;background:repeating-linear-gradient(90deg,transparent 0 28px,var(--forest) 29px 31px,transparent 32px 55px,var(--wine) 56px 58px,transparent 59px 84px);pointer-events:none}
.intro-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.28fr) 390px;gap:74px;align-items:start}
.home-intro h1{margin:14px 0 20px;max-width:760px}
.home-intro h1 span{display:block;color:var(--wine);font-size:.56em;line-height:1.25;margin-top:13px;letter-spacing:-.01em}
.home-intro p{font-size:18px;color:#4f5651;max-width:770px}
.catalog-search{margin-top:36px;max-width:740px;background:var(--surface);border:1px solid var(--line-dark);box-shadow:0 12px 30px rgba(55,46,32,.06)}
.catalog-search-head{display:flex;justify-content:space-between;gap:20px;padding:11px 15px;background:var(--forest);color:#fff;border-bottom:1px solid var(--forest-2)}
.catalog-search-head b{font-family:Georgia,serif;font-weight:500}
.catalog-search-head span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#cbd9d4;align-self:center}
.searchbox{margin:0;padding:16px}
.searchbox label{display:block;font-size:11px;font-weight:800;margin-bottom:8px;text-transform:uppercase;letter-spacing:.08em;color:#5a5b56}
.searchbox>div{display:flex;border:1px solid var(--line-dark);background:#fff}
.searchbox input{flex:1;border:0;padding:14px 15px;font-size:14px;outline:none;background:#fffdf9}
.searchbox button{border:0;border-left:1px solid var(--line-dark);background:var(--wine);color:#fff;padding:0 22px;cursor:pointer;font-weight:700}
.searchbox button:hover{background:#673029}
.searchbox small{display:block;color:#8a857b;margin-top:9px;font-size:11px}
.index-panel{background:var(--surface);border:1px solid var(--line-dark);box-shadow:0 16px 34px rgba(55,46,32,.08);position:relative}
.index-panel:before{content:"КАТАЛОГ";position:absolute;right:13px;top:-29px;font:700 9px/1 Arial,sans-serif;letter-spacing:.16em;color:var(--forest);border:1px solid var(--line-dark);border-bottom:0;padding:9px 11px 8px;background:var(--surface)}
.index-title{padding:15px 16px;border-bottom:2px solid var(--forest);font:500 19px/1.2 Georgia,serif;color:var(--forest-2)}
.index-panel a{display:grid;grid-template-columns:46px 1fr;gap:9px;padding:15px 16px;border-bottom:1px solid var(--line);text-decoration:none;background:linear-gradient(90deg,transparent 0 43px,#e1d8c9 43px 44px,transparent 44px)}
.index-panel a:last-child{border-bottom:0}
.index-panel a:hover{background-color:#f6f0e3}
.index-panel a span{font:700 10px/1.3 "Courier New",monospace;color:var(--wine);letter-spacing:.03em;padding-top:2px}
.index-panel a b{font-family:Georgia,serif;font-size:15px;font-weight:500}
.index-panel a em{grid-column:2;color:#77766f;font-style:normal;font-size:11px;margin-top:-3px}

.rule-section{padding:68px 0;border-bottom:1px solid var(--line)}
.rule-section.alt{background:#f8f4ea}
.section-heading{display:grid;grid-template-columns:1fr minmax(280px,.65fr);gap:55px;align-items:end;margin-bottom:31px}
.section-heading h2{margin:7px 0 0}
.section-heading>p{margin:0;color:var(--muted)}
.section-heading>a{justify-self:end}
.section-heading.simple{display:block}

/* Shelf/category blocks */
.knowledge-map{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line-dark);background:var(--surface);box-shadow:0 12px 28px rgba(55,46,32,.05)}
.knowledge-map>div{padding:25px 23px 27px;border-right:1px solid var(--line);min-height:230px;position:relative}
.knowledge-map>div:last-child{border-right:0}
.knowledge-map>div:before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:var(--forest)}
.knowledge-map>div:nth-child(2):before{background:var(--wine)}
.knowledge-map>div:nth-child(3):before{background:var(--brass)}
.knowledge-map>div:nth-child(4):before{background:#496675}
.knowledge-map h3{margin:4px 0 9px;font-size:23px}
.knowledge-map p{color:var(--muted);font-size:13px;min-height:64px}
.knowledge-map a{display:block;color:var(--wine);font-size:13px;margin-top:6px;text-underline-offset:3px}

.foundation-list{border-top:2px solid var(--forest);background:var(--surface);border-left:1px solid var(--line);border-right:1px solid var(--line)}
.foundation-list a{display:grid;grid-template-columns:72px 1fr 190px;gap:22px;align-items:center;padding:22px 20px;border-bottom:1px solid var(--line);text-decoration:none}
.foundation-list a:hover{background:#faf6ed}
.foundation-list a:hover b{color:var(--wine)}
.foundation-list .num{font:700 11px/1.3 "Courier New",monospace;color:var(--wine);letter-spacing:.05em}
.foundation-list b{font-family:Georgia,serif;font-size:21px;font-weight:500}
.foundation-list p{margin:4px 0 0;color:var(--muted);font-size:13px}
.foundation-list em{text-align:right;font-style:normal;color:#7d786f;font-size:11px}

.split-section{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.term-preview{margin:0;background:var(--surface);border:1px solid var(--line)}
.term-preview div{display:grid;grid-template-columns:105px 1fr;padding:13px 16px;border-bottom:1px solid var(--line)}
.term-preview div:last-child{border-bottom:0}
.term-preview dt{font-family:Georgia,serif;font-size:18px;color:var(--forest)}
.term-preview dd{margin:0;color:var(--muted);font-size:13px}
.tool-preview{border-top:2px solid var(--forest);background:var(--surface);border-left:1px solid var(--line);border-right:1px solid var(--line)}
.tool-preview a{display:flex;justify-content:space-between;gap:20px;padding:17px 16px;border-bottom:1px solid var(--line);text-decoration:none}
.tool-preview a:hover{background:#faf6ed}
.tool-preview a:hover b{color:var(--wine)}
.tool-preview b{font-family:Georgia,serif;font-size:18px;font-weight:500}
.tool-preview span{color:#7d786f;font-size:11px}
.editorial-strip{background:var(--forest-2);color:#fff;padding:36px 0;border-top:5px solid var(--brass)}
.editorial-strip .wrap{display:grid;grid-template-columns:1fr 1.2fr auto;gap:45px;align-items:center}
.editorial-strip span{display:block;color:#b8ccc4;font-size:9px;text-transform:uppercase;letter-spacing:.14em}
.editorial-strip strong{font:500 21px Georgia}
.editorial-strip p{margin:0;color:#c7d4cf;font-size:13px}
.editorial-strip a{color:#fff;font-size:13px}

/* Shared pages */
.page-head{background:#f8f4ea;border-bottom:1px solid var(--line);padding:65px 0 50px;position:relative}
.page-head:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:4px;background:linear-gradient(90deg,var(--forest) 0 34%,var(--wine) 34% 58%,var(--brass) 58% 72%,#627b84 72%)}
.page-head-grid{display:grid;grid-template-columns:1fr 250px;gap:80px;align-items:end}
.page-head h1{margin:9px 0 14px}
.page-head p{font-size:17px;color:var(--muted);max-width:760px}
.narrow{max-width:900px}
.library-stats{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;border-left:2px solid var(--brass);padding-left:25px}
.library-stats b{font:31px Georgia;color:var(--forest)}
.library-stats span{font-size:11px;color:#716f68;align-self:center}
.library-shell{display:grid;grid-template-columns:220px 1fr;gap:54px;padding-top:48px;padding-bottom:90px}
.library-nav{position:sticky;top:108px;align-self:start;display:flex;flex-direction:column;background:#e9e2d3;border:1px solid var(--line-dark);padding:17px 18px}
.library-nav strong{font:500 17px Georgia,serif;margin-bottom:10px;color:var(--forest)}
.library-nav button{border:0;border-bottom:1px solid #d2c6b4;background:none;text-align:left;padding:9px 0;font-size:13px;color:#5f625d;cursor:pointer}
.library-nav button.active,.library-nav button:hover{color:var(--wine);font-weight:700}
.library-nav hr{border:0;border-top:2px solid var(--forest);width:100%;margin:16px 0 12px}
.library-nav a{font-size:12px;color:#5c625d;margin:4px 0}
.library-search{display:flex;align-items:center;gap:20px;background:var(--surface);border:1px solid var(--line-dark);padding:12px 13px;margin-bottom:10px}
.library-search:before{content:"Каталожный поиск";font:700 9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:var(--wine);white-space:nowrap}
.library-search input{flex:1;border:0;border-left:1px solid var(--line);padding:8px 12px;background:transparent;outline:none}
.library-search span{font-size:11px;color:#7a756d;white-space:nowrap}
.library-row{display:grid;grid-template-columns:125px 1fr 170px;gap:25px;padding:23px 18px;border-bottom:1px solid var(--line);background:rgba(255,253,248,.56)}
.library-row:nth-child(even){background:rgba(248,244,234,.85)}
.library-row:hover{background:#fffaf0}
.library-type{font:700 10px/1.5 "Courier New",monospace;text-transform:uppercase;letter-spacing:.04em;color:var(--wine);padding-top:4px}
.library-row a{text-decoration:none}
.library-row h2{font-size:22px;margin:0 0 5px}
.library-row a:hover h2{color:var(--wine)}
.library-row p{margin:0;color:var(--muted);font-size:13px}
.library-meta{display:flex;flex-direction:column;align-items:flex-end;color:#7e786f;font-size:10px}
.library-meta span+span{margin-top:2px}
.handbook{padding-top:55px;padding-bottom:90px;max-width:900px}
.handbook-intro{border-left:4px solid var(--brass);background:#f8f4ea;padding:16px 20px;margin-bottom:30px}
.handbook-intro b{font:22px Georgia}
.handbook-intro p{color:var(--muted)}
.handbook ol{list-style:none;padding:0;margin:0;border-top:2px solid var(--forest)}
.handbook li a{display:grid;grid-template-columns:65px 1fr 80px;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);text-decoration:none}
.handbook li span{font:700 10px "Courier New",monospace;color:var(--wine)}
.handbook li b{font:19px Georgia;font-weight:500}
.handbook li p{margin:4px 0 0;color:var(--muted);font-size:13px}
.handbook li em{text-align:right;font-style:normal;color:#807a71;font-size:11px}
.handbook-after{margin-top:48px;padding-top:28px;border-top:2px solid var(--forest)}
.glossary-search{margin-top:25px}
.glossary-search input{width:100%;max-width:480px;padding:12px;border:1px solid var(--line-dark);background:#fffdf8}
.glossary{padding-top:45px;padding-bottom:90px;max-width:900px}
.glossary dl{margin:0;background:var(--surface);border:1px solid var(--line)}
.glossary-entry{display:grid;grid-template-columns:170px 1fr;gap:35px;padding:20px;border-bottom:1px solid var(--line)}
.glossary-entry:last-child{border-bottom:0}
.glossary-entry dt{font:22px Georgia;color:var(--forest)}
.glossary-entry dd{margin:0;color:#59605b}
.tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:48px;padding-bottom:90px}
.calc{background:var(--surface);border-top:5px solid var(--forest);padding:24px;border-left:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 8px 20px rgba(55,46,32,.04)}
.calc:nth-child(2){border-top-color:var(--wine)}
.calc:nth-child(3){border-top-color:var(--brass)}
.calc-head{display:grid;grid-template-columns:32px 1fr;gap:12px}.calc-head>span{font:700 10px "Courier New",monospace;color:var(--wine)}
.calc h2{font-size:25px;margin:0}.calc-head p{margin:3px 0 20px;color:var(--muted);font-size:12px}
.calc label{display:block;font-size:11px;font-weight:700;margin:13px 0}.calc input{display:block;width:100%;margin-top:5px;border:1px solid var(--line-dark);padding:10px 11px;font-size:14px;background:#fffdf9}
.calc output{display:block;margin-top:20px;padding-top:15px;border-top:1px solid var(--line);font:24px Georgia;color:var(--wine)}
.about-grid{display:grid;grid-template-columns:1fr 310px;gap:80px;padding-top:48px;padding-bottom:90px}.about-main h2{font-size:28px;margin-top:35px}.about-main p{color:#53605a}.about-card{background:#e9e2d3;border:1px solid var(--line-dark);border-top:5px solid var(--forest);padding:18px}.about-card>span{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#757269}.about-card>strong{display:block;font:28px Georgia;margin:5px 0 10px}.about-card p{font-size:13px;color:var(--muted)}.about-card hr{border:0;border-top:1px solid var(--line-dark);margin:20px 0}.about-card a{display:block;font-size:12px;color:var(--wine);margin:5px 0}
.article-layout{display:grid;grid-template-columns:minmax(0,790px) 245px;gap:75px;padding-top:55px;padding-bottom:90px}.breadcrumbs{display:flex;gap:7px;color:#7d786f;font-size:11px;margin-bottom:27px}.breadcrumbs a{text-underline-offset:3px}.article-label{margin-bottom:9px}.article h1{font-size:clamp(42px,4.7vw,59px);margin-bottom:17px}.article .lead{font-size:19px;color:#56605b;margin-bottom:20px}.article-meta{display:flex;gap:20px;flex-wrap:wrap;padding:12px 0 18px;border-top:2px solid var(--forest);border-bottom:1px solid var(--line);font-size:10px;color:#7e786f;margin-bottom:35px}.article-meta b{color:#4d5751}.article h2{font-size:29px;margin:43px 0 13px;padding-top:6px}.article p{margin:0 0 17px}.article table{width:100%;border-collapse:collapse;margin:24px 0 30px;font-size:13px;background:var(--surface)}.article th,.article td{padding:12px;border:1px solid var(--line);text-align:left;vertical-align:top}.article th{font-size:10px;text-transform:uppercase;letter-spacing:.08em;background:#e9e2d3}.article pre{background:var(--forest-2);color:#eef3ef;padding:19px;overflow:auto;font:13px/1.65 Consolas,monospace}.article code{background:#e8e1d5;padding:2px 5px}.inline-note{border-left:4px solid var(--brass);background:#f4ead3;padding:16px 18px;margin:25px 0}.plain-link,.text-cta{color:var(--wine);font-weight:700;text-underline-offset:3px}.article-author{margin-top:48px;padding-top:18px;border-top:2px solid var(--forest)}.article-author>span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#827d74}.article-author>b{font:19px Georgia}.article-author p{font-size:12px;color:#7a756d;max-width:580px;margin-top:5px}.article-aside{position:sticky;top:108px;align-self:start;background:#e9e2d3;border:1px solid var(--line-dark);padding:0 16px}.aside-block{border-top:1px solid var(--line-dark);padding:14px 0 19px;display:flex;flex-direction:column}.aside-block:first-child{border-top:0}.aside-block b{font-size:9px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px;color:var(--forest)}.aside-block a,.aside-block span{font-size:11px;color:#62665f;margin:4px 0;text-underline-offset:3px}.aside-block a:hover{color:var(--wine)}
.site-footer{background:var(--forest-2);color:#dce6e1;border-top:5px solid var(--brass);padding:49px 0 20px}.footer-grid{display:grid;grid-template-columns:1.4fr .55fr .8fr;gap:60px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start}.footer-brand{font:25px Georgia;text-decoration:none;color:#fff}.footer-grid p{font-size:12px;color:#aebdb7;max-width:470px}.footer-grid b{font-size:9px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px;color:#e8d8b5}.footer-grid a,.footer-grid span{font-size:11px;color:#bdcbc6;text-decoration:none;margin:3px 0}.footer-grid a:hover{color:#fff}.disclosure{border-top:1px solid #36534c;margin-top:35px;padding-top:15px;color:#8ea199;font-size:10px}.notfound{padding-top:90px;padding-bottom:130px}.notfound>span{font:72px Georgia;color:#a69a87}.notfound h1{font-size:42px}

@media(max-width:1000px){.intro-grid,.page-head-grid,.split-section,.about-grid,.article-layout{grid-template-columns:1fr}.home-intro{background:#f7f1e4}.index-panel{max-width:650px}.site-header nav{display:none}.header-about{margin-left:auto}.knowledge-map{grid-template-columns:1fr 1fr}.knowledge-map>div:nth-child(2){border-right:0}.knowledge-map>div:nth-child(3){border-top:1px solid var(--line)}.knowledge-map>div:nth-child(4){border-top:1px solid var(--line);border-right:0}.editorial-strip .wrap{grid-template-columns:1fr}.library-shell{grid-template-columns:1fr}.library-nav{position:static;display:none}.tools-grid{grid-template-columns:1fr}.article-aside{display:none}.footer-grid{grid-template-columns:1fr 1fr}.page-head-grid{gap:25px}.library-stats{border-left:0;padding-left:0}}
@media(max-width:650px){.wrap{padding-left:18px;padding-right:18px}.site-header{height:68px}.brand-text small{display:none}.home-intro{padding:54px 0}.intro-grid{gap:42px}h1{font-size:43px}.home-intro p{font-size:16px}.catalog-search-head{display:block}.catalog-search-head span{display:block;margin-top:4px}.searchbox>div{display:block}.searchbox button{width:100%;height:44px;border-left:0;border-top:1px solid var(--line-dark)}.rule-section{padding:50px 0}.section-heading{grid-template-columns:1fr;gap:12px}.section-heading>a{justify-self:start}.foundation-list a{grid-template-columns:48px 1fr}.foundation-list em{grid-column:2;text-align:left}.knowledge-map{grid-template-columns:1fr}.knowledge-map>div{border-right:0;border-top:1px solid var(--line)}.knowledge-map>div:first-child{border-top:0}.split-section{gap:55px}.library-row{grid-template-columns:1fr;gap:7px;padding-left:12px;padding-right:12px}.library-type{padding-top:0}.library-meta{align-items:flex-start;flex-direction:row;gap:8px;flex-wrap:wrap}.library-search{display:block}.library-search:before{display:block;margin-bottom:6px}.library-search input{width:100%;border-left:0;border-top:1px solid var(--line);margin:4px 0 8px}.handbook li a{grid-template-columns:43px 1fr}.handbook li em{grid-column:2;text-align:left}.glossary-entry{grid-template-columns:1fr;gap:4px}.tools-grid{padding-top:35px}.about-grid{gap:45px}.article-layout{padding-top:37px}.article h1{font-size:39px}.article .lead{font-size:17px}.footer-grid{grid-template-columns:1fr;gap:30px}}


/* v7 polished library */
:root{--paper:#f4f1e9;--paper-2:#ece7dc;--surface:#fffdf9;--ink:#202521;--forest:#24473d;--forest-2:#17342d;--forest-soft:#e2ebe6;--wine:#814b45;--brass:#aa854c;--muted:#66706a;--line:#ddd7cb;--line-dark:#c8c0b2;--max:1180px;--radius:8px}
body{background:var(--paper);font-size:15.5px;line-height:1.72}
.wrap{max-width:var(--max);padding-left:36px;padding-right:36px}
.site-header{height:74px;background:rgba(23,52,45,.98);border-bottom:1px solid rgba(255,255,255,.09);box-shadow:0 6px 25px rgba(23,35,31,.10)}
.brand{gap:13px}.brand-mark{width:36px;height:36px;border-radius:6px;border-color:rgba(255,255,255,.22);background:#2b5146;box-shadow:none}
.brand-text b{font-size:17px;letter-spacing:-.01em}.brand-text small{font-size:8.5px}.site-header nav{gap:25px;margin-left:62px}.site-header nav a,.header-about{font-size:12.5px}
h1,h2,h3{color:#17342d;letter-spacing:-.032em}h1{font-size:clamp(44px,4.8vw,66px);line-height:1.04}h2{font-size:clamp(28px,2.75vw,38px)}h3{font-size:21px}
.home-intro{padding:76px 0 70px;background:linear-gradient(90deg,rgba(255,253,249,.93) 0 69%,rgba(235,230,218,.72) 69% 100%),var(--paper)}
.home-intro:after{right:3.5%;width:205px;opacity:.075;background:repeating-linear-gradient(90deg,transparent 0 34px,var(--forest) 35px 37px,transparent 38px 72px)}
.intro-grid{grid-template-columns:minmax(0,1.35fr) 360px;gap:70px;align-items:center}.home-intro h1{max-width:730px;margin:13px 0 21px}.home-intro h1 span{font-size:.51em;color:#7d4943}.home-intro p{font-size:17px;max-width:720px}
.catalog-search,.index-panel,.library-nav,.calc,.about-card,.article-aside{border-radius:var(--radius)}
.catalog-search{max-width:700px;margin-top:31px;overflow:hidden;border-color:var(--line-dark);box-shadow:0 11px 30px rgba(37,44,39,.055)}
.catalog-search-head{background:#24473d;border:0}.searchbox>div{overflow:hidden;border-radius:5px}.searchbox button{background:#7e4b45}
.index-panel{overflow:hidden;border-color:#cbc4b7;box-shadow:0 14px 38px rgba(31,38,34,.065)}.index-panel:before{display:none}.index-title{background:#f1ece2;border-bottom:1px solid #cfc8bd;font-size:17px}
.index-panel a{padding:14px 18px;background:var(--surface);border-bottom-color:#e1dbd0}.index-panel a:hover{background:#f7f3eb}.index-panel a b{font-size:14px}
.rule-section{padding:64px 0}.rule-section.alt{background:#f8f5ee}.section-heading{grid-template-columns:minmax(0,1.15fr) minmax(280px,.62fr);gap:60px;margin-bottom:29px}.section-heading>p{max-width:440px;font-size:14px}
.knowledge-map{grid-template-columns:repeat(4,1fr);gap:14px;border:0;background:transparent;box-shadow:none}.knowledge-map>div{min-height:220px;padding:25px 23px 23px;background:var(--surface);border:1px solid var(--line)!important;border-radius:7px;box-shadow:0 5px 18px rgba(35,43,38,.035)}
.knowledge-map>div:before{left:22px;right:auto;width:45px;height:3px}.knowledge-map h3{font-size:21px}.knowledge-map p{font-size:12.5px;min-height:68px}.knowledge-map a{font-size:12.5px}
.foundation-list{overflow:hidden;border:1px solid var(--line);border-top:3px solid var(--forest);border-radius:7px}.foundation-list a{grid-template-columns:72px 1fr 165px;padding:20px 22px}.foundation-list b{font-size:19px}
.split-section{gap:54px}.term-preview,.tool-preview{overflow:hidden;border:1px solid var(--line);border-radius:7px}.tool-preview{border-top:3px solid var(--forest)}.term-preview dt,.tool-preview b{font-size:17px}
.editorial-strip{padding:31px 0;border-top:3px solid var(--brass)}.editorial-strip .wrap{gap:38px}.editorial-strip strong{font-size:19px}
.page-head{padding:59px 0 45px;background:#f8f5ee}.page-head:after{height:3px;background:#24473d}.page-head-grid{gap:68px}
.library-shell{grid-template-columns:205px minmax(0,1fr);gap:44px;padding-top:44px}.library-nav{background:#eee9df;border-color:var(--line)}.library-search{border-radius:6px;border-color:var(--line)}
.library-row{grid-template-columns:112px minmax(0,1fr) 145px;gap:22px;padding:21px 17px;background:transparent}.library-row:nth-child(even){background:rgba(255,255,255,.32)}.library-row:hover{background:#fbf8f2}.library-row h2{font-size:20px}
.glossary dl{overflow:hidden;border-radius:7px}.calc{border:1px solid var(--line);border-top:3px solid var(--forest);box-shadow:0 7px 22px rgba(35,43,38,.04)}
.about-card{border:1px solid var(--line);border-top:3px solid var(--forest);background:#eee9df}.article-aside{border-color:var(--line);background:#eee9df}
.article-layout{grid-template-columns:minmax(0,760px) 235px;gap:66px}.article h1{font-size:clamp(40px,4.3vw,56px)}.article-meta{border-top:1px solid #9eafa8}.inline-note{border-left:3px solid var(--brass);border-radius:0 6px 6px 0}
.site-footer{border-top:3px solid var(--brass)}
@media(max-width:1100px){.intro-grid{grid-template-columns:minmax(0,1.2fr) 340px;gap:48px}.site-header nav{gap:18px;margin-left:38px}.knowledge-map{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1000px){.home-intro{background:#f8f5ee}.home-intro:after{display:none}}
@media(max-width:650px){.wrap{padding-left:19px;padding-right:19px}.home-intro{padding:49px 0 52px}.knowledge-map{grid-template-columns:1fr}.knowledge-map>div{min-height:auto}}

/* =========================================================
   v8 — editorial library with permanent left navigation
   ========================================================= */
:root{--sidebar-width:248px;--header-height:74px;--content-max:1120px}
body{background:#f6f4ef}
.site-header{left:0;right:0;width:100%;z-index:50}
.site-header .wrap{max-width:none;padding-left:26px;padding-right:34px}
.header-context{margin-left:34px;padding-left:24px;border-left:1px solid rgba(255,255,255,.14);font-size:11.5px;color:#afc0ba;letter-spacing:.01em}
.header-about{margin-left:auto}
.global-sidebar{position:fixed;z-index:35;left:0;top:var(--header-height);bottom:0;width:var(--sidebar-width);padding:24px 19px 22px;overflow-y:auto;background:#fff;border-right:1px solid #dedbd4;box-shadow:4px 0 18px rgba(25,34,30,.025);scrollbar-width:thin;scrollbar-color:#d3d0c8 transparent}
.global-sidebar::-webkit-scrollbar{width:7px}.global-sidebar::-webkit-scrollbar-thumb{background:#d3d0c8;border-radius:9px}.global-sidebar::-webkit-scrollbar-track{background:transparent}
.sidebar-search{height:39px;display:grid;grid-template-columns:25px 1fr;align-items:center;border-bottom:1px solid #d9d6d0;color:#686d69}
.sidebar-search>span{font:25px/1 Georgia,serif;transform:rotate(-15deg);color:#39433e}.sidebar-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#252b28;font:13px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}.sidebar-search input::placeholder{color:#8b8e8b}
.sidebar-rule{height:1px;margin:14px 0;background:#efede8}.sidebar-menu{display:flex;flex-direction:column;gap:3px}.sidebar-menu a{min-height:43px;display:grid;grid-template-columns:31px 1fr;gap:10px;align-items:center;padding:5px 7px;border-radius:7px;color:#3d4541;text-decoration:none;font-size:13.5px;font-weight:500;transition:background .13s ease,color .13s ease}.sidebar-menu a:hover{background:#f3f4f1;color:#17342d}.sidebar-menu a.active{background:#e9eee9;color:#173f34;font-weight:650}
.nav-icon{width:29px;height:29px;display:grid;place-items:center;border:1px solid rgba(0,0,0,.055);border-radius:7px;font-size:9.5px;font-weight:800;letter-spacing:-.02em;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.nav-all{background:#294b41;font-size:17px;font-weight:500}.nav-basics{background:#557766}.nav-economics{background:#9a6d48}.nav-analytics{background:#526b82}.nav-traffic{background:#806056}.nav-practice{background:#6c7454}.nav-glossary{background:#886b3e;font-size:8px}.nav-tools{background:#4e6b65;font-size:15px;font-family:Georgia,serif}
.sidebar-secondary{display:flex;flex-direction:column;padding:0 7px}.sidebar-secondary a{padding:7px 1px;color:#6b716d;text-decoration:none;font-size:11.5px}.sidebar-secondary a:hover,.sidebar-secondary a.active{color:#173f34;text-decoration:underline;text-underline-offset:3px}.sidebar-foot{margin-top:24px;padding:14px 7px 0;border-top:1px solid #efede8;color:#8a8e89}.sidebar-foot span{display:block;font:14px Georgia,"Times New Roman",serif;color:#59625d}.sidebar-foot small{display:block;margin-top:3px;font-size:9.5px}
main,.site-footer{margin-left:var(--sidebar-width)}main .wrap,.site-footer .wrap{max-width:var(--content-max)}
.home-intro{background:#faf9f6;padding-top:68px;padding-bottom:62px}.home-intro:after{display:none}.intro-grid{display:block}.home-intro h1{max-width:800px}.home-intro p{max-width:780px}.catalog-search{max-width:720px}
.knowledge-map{grid-template-columns:repeat(2,minmax(0,1fr))}.knowledge-map>div{min-height:190px}.page-head .wrap{max-width:var(--content-max)}
.library-shell{grid-template-columns:1fr;max-width:var(--content-max)}.library-nav{position:static;display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:0 0 18px;border:0;border-radius:0;background:transparent}.library-nav strong{width:100%;margin-bottom:3px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#777d78}.library-nav button{padding:7px 11px;border:1px solid #d8d5ce;border-radius:999px;background:#fff}.library-nav button.active{background:#25473d;border-color:#25473d;color:#fff}.library-nav hr,.library-nav>a{display:none}
.article-layout{max-width:var(--content-max)}.article-editorial{margin-top:48px;padding-top:17px;border-top:1px solid #c9c5bc}.article-editorial span{display:block;color:#53605a;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.article-editorial p{max-width:590px;margin-top:6px;color:#777c78;font-size:11.5px}
.rule-section.alt{background:#f0eee8}.site-footer{position:relative}
@media(max-width:1050px){:root{--sidebar-width:0px}.header-context{display:none}.global-sidebar{position:sticky;top:var(--header-height);width:100%;height:auto;bottom:auto;padding:9px 14px;display:flex;gap:10px;align-items:center;overflow-x:auto;overflow-y:hidden;border-right:0;border-bottom:1px solid #ddd9d1;box-shadow:0 5px 15px rgba(30,37,33,.035)}.sidebar-search,.sidebar-rule,.sidebar-secondary,.sidebar-foot{display:none}.sidebar-menu{flex-direction:row;gap:5px;white-space:nowrap}.sidebar-menu a{min-height:37px;grid-template-columns:26px auto;padding:4px 9px 4px 5px}.nav-icon{width:25px;height:25px;border-radius:6px;font-size:8px}.nav-all{font-size:14px}main,.site-footer{margin-left:0}.knowledge-map{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.site-header .wrap{padding-left:16px;padding-right:16px}.global-sidebar{top:68px}.sidebar-menu a span:last-child{font-size:12px}.knowledge-map{grid-template-columns:1fr}}


/* v9: library index uses the permanent left navigation; no duplicate filter pills */
.library-shell{display:block!important;max-width:1120px!important;padding-top:42px!important;padding-bottom:72px!important}
.library-main{width:100%}
.library-nav{display:none!important}
.catalog-bar{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:0 2px 12px;border-bottom:1px solid #cfcac0;color:#747a76}
.catalog-bar #activeTopicLabel{font-family:Georgia,"Times New Roman",serif;font-size:24px;color:#1d3d34}
.catalog-bar #libraryCount{font-size:11px;letter-spacing:.04em}
.library-search{margin:16px 0 7px!important;padding:0!important;border:0!important;background:transparent!important}
.library-search input{width:100%;padding:12px 14px;border:1px solid #d3cfc6;border-radius:5px;background:#fffdf9;font:13px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;outline:none}
.library-search input:focus{border-color:#7b9189;box-shadow:0 0 0 3px rgba(67,101,89,.08)}
.library-row{grid-template-columns:145px minmax(0,1fr) 145px!important;padding:22px 12px!important}
.library-type{font-size:10px!important;color:#7c817d!important;letter-spacing:.02em}
.library-meta span:last-child{color:#9a9e99}

/* Keep the left navigation sober: less app-like, more editorial */
.sidebar-menu{gap:1px!important}
.sidebar-menu a{border-radius:4px!important;padding-left:5px!important}
.sidebar-menu a.active{background:#edf0ec!important;box-shadow:inset 2px 0 0 #315447}
.nav-icon{border-radius:5px!important;box-shadow:none!important}
.sidebar-secondary a{line-height:1.35}

/* Copy feels like a reference publication, so give text a little more room */
.article p,.about-main p,.handbook p{max-width:760px}
.article .lead{max-width:780px}
.article table{margin-top:18px;margin-bottom:30px}
.article pre{margin-top:16px;margin-bottom:22px}
.article-editorial{margin-bottom:14px}

@media(max-width:700px){
 .catalog-bar{align-items:flex-start;flex-direction:column;gap:3px}
 .library-row{grid-template-columns:1fr!important;gap:8px!important}
 .library-meta{display:flex!important;gap:10px!important;flex-wrap:wrap}
}


/* v10 — stronger library feel + richer tools */
.catalog-ledger{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  max-width:900px;
  margin-top:18px;
}
.ledger-card{
  padding:16px 18px 18px;
  background:linear-gradient(180deg,#fffdf8 0%,#f6f1e5 100%);
  border:1px solid #ddd5c6;
  border-radius:12px;
  box-shadow:0 8px 22px rgba(39,45,40,.05);
  position:relative;
}
.ledger-card:before{
  content:"";
  position:absolute;
  left:18px; top:12px;
  width:48px; height:2px;
  background:#b08d5c;
}
.ledger-card span{
  display:block;
  margin-top:10px;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#7f6956;
}
.ledger-card b{
  display:block;
  margin-top:8px;
  color:#17342d;
  font-size:25px;
  letter-spacing:-.02em;
}
.ledger-card p{
  margin-top:8px;
  color:#616864;
  font-size:13px;
  line-height:1.55;
}
.shelf-label{
  display:inline-block;
  margin-bottom:10px;
  padding:4px 9px;
  border-radius:999px;
  background:#f1eadc;
  border:1px solid #ddd0b6;
  color:#7f6745;
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.library-arrivals .arrival-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.arrival-card{
  padding:20px 20px 18px;
  background:#fff;
  border:1px solid #dcd4c6;
  border-radius:12px;
  box-shadow:0 10px 24px rgba(34,40,37,.04);
}
.arrival-code{
  color:#866a43;
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.arrival-card h3{
  margin:11px 0 10px;
  font-size:22px;
  line-height:1.18;
}
.arrival-card h3 a{color:#17342d;text-decoration:none}
.arrival-card h3 a:hover{text-decoration:underline}
.arrival-card p{color:#606762;font-size:14px;line-height:1.6}
.arrival-card span{display:block;margin-top:14px;color:#8b908b;font-size:12px}
.catalog-note{
  margin:0 0 16px;
  padding:10px 12px;
  background:#f4efe5;
  border:1px solid #e3dac8;
  border-radius:10px;
  color:#6a6f6b;
  font-size:13px;
}
.tool-anchor-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:28px;
  margin-bottom:16px;
}
.tool-anchor-list a{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 14px;
  background:#fff;
  border:1px solid #d9d1c1;
  border-radius:999px;
  color:#26473d;
  text-decoration:none;
  font-size:13px;
  font-weight:600;
}
.tool-anchor-list a:hover{background:#f7f3eb}
.tool-index{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-bottom:22px;
}
.tool-category{
  padding:18px 18px 16px;
  background:#fff;
  border:1px solid #dcd4c6;
  border-radius:12px;
}
.tool-category span{
  display:block;
  color:#866a43;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.tool-category h2{margin:8px 0 8px;font-size:24px}
.tool-category p{margin:0;color:#616864;font-size:13px;line-height:1.6}
.tools-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  padding-bottom:48px;
}
.calc{
  padding:18px 18px 16px;
  background:#fffdf8;
}
.calc-head h2{font-size:23px;line-height:1.18}
.calc-head p{font-size:13px;line-height:1.55}
.calc output{
  margin-top:16px;
  display:block;
  padding:14px 16px;
  background:#20453c;
  color:#fff;
  border-radius:10px;
  font-size:28px;
  font-weight:700;
  letter-spacing:-.02em;
}
.calc-note{
  margin-top:10px;
  color:#7b807c;
  font-size:12px;
  line-height:1.55;
}
@media(max-width:1050px){
  .catalog-ledger,.library-arrivals .arrival-grid,.tool-index,.tools-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .catalog-ledger,.library-arrivals .arrival-grid,.tool-index,.tools-grid{grid-template-columns:1fr}
}


/* =========================================================
   v11 — library as visual language, not copy
   ========================================================= */
:root{
  --paper:#f4f0e6;
  --paper-light:#fbf8f1;
  --ink:#232621;
  --green:#173f34;
  --green-soft:#e4ebe5;
  --brass:#a88958;
  --wine:#7f4b45;
  --line:#d7cfbf;
}

body{
  background:
    radial-gradient(circle at 20% 0%,rgba(255,255,255,.55),transparent 28%),
    radial-gradient(circle at 80% 40%,rgba(122,96,59,.025),transparent 32%),
    linear-gradient(#f6f2e9,#f2eee5);
}

/* leather-bound top strip */
.site-header{
  background:
    linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.035)),
    #183d33;
  border-bottom:1px solid #b39563;
  box-shadow:0 4px 16px rgba(32,38,34,.10), inset 0 -1px rgba(255,255,255,.05);
}
.site-header:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-3px;height:2px;
  background:linear-gradient(90deg,transparent 0 4%,#b89967 18%,#d2ba91 50%,#b89967 82%,transparent 96%);
  opacity:.72;
}
.brand-mark{
  border-radius:3px;
  background:#f2eadb;
  color:#183d33;
  border:1px solid #d2bc91;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.42);
}
.brand-text b{font-family:Georgia,"Times New Roman",serif;letter-spacing:.01em}

/* sidebar: quiet row of book spines rather than app buttons */
.global-sidebar{
  background:
    linear-gradient(90deg,rgba(130,96,54,.035),transparent 8px),
    #f8f4eb;
  border-right:1px solid #cfc5b4;
  box-shadow:4px 0 18px rgba(30,35,31,.035), inset -5px 0 14px rgba(92,71,43,.02);
}
.global-sidebar:after{
  content:"";
  position:absolute;
  left:14px;right:14px;bottom:66px;height:1px;
  background:#cabda8;
  box-shadow:0 4px 0 rgba(255,255,255,.75);
}
.sidebar-search{
  background:#fffdf8;
  border:1px solid #d6cdbc;
  border-radius:4px;
  padding:0 9px;
  box-shadow:inset 0 1px 2px rgba(72,60,45,.03);
}
.sidebar-rule{background:#d8cfbf}
.sidebar-menu{gap:5px}
.sidebar-menu a{
  position:relative;
  min-height:42px;
  border-radius:3px;
  padding-left:7px;
  border:1px solid transparent;
}
.sidebar-menu a:after{
  content:"";
  position:absolute;
  left:7px;right:7px;bottom:-3px;height:1px;
  background:rgba(117,92,59,.18);
}
.sidebar-menu a:hover{
  background:rgba(255,255,255,.68);
  border-color:#e0d8c9;
}
.sidebar-menu a.active{
  background:#fffdf8;
  border-color:#d5cab7;
  box-shadow:2px 3px 0 rgba(116,91,56,.07);
}
.nav-icon{
  width:25px;
  height:32px;
  border-radius:2px 5px 5px 2px;
  border:1px solid rgba(50,45,35,.12);
  box-shadow:inset -3px 0 rgba(255,255,255,.10), 1px 1px 0 rgba(0,0,0,.03);
  font-family:Georgia,"Times New Roman",serif;
}
.nav-all{background:#2e5448}
.nav-basics{background:#5d7868}
.nav-economics{background:#9a734e}
.nav-analytics{background:#526a79}
.nav-traffic{background:#81584f}
.nav-practice{background:#69714e}
.nav-glossary{background:#8b6c3f}
.nav-tools{background:#4c6d66}

/* paper page */
main{
  background:
    linear-gradient(90deg,rgba(145,114,69,.018) 1px,transparent 1px),
    linear-gradient(rgba(145,114,69,.012) 1px,transparent 1px),
    #f7f4ec;
  background-size:28px 28px,28px 28px,auto;
}
.home-intro,.page-head{
  background:linear-gradient(180deg,#fbf9f4 0%,#f6f1e8 100%);
  border-bottom:1px solid #d7cfbf;
}

/* catalog search as a refined index-card drawer */
.catalog-search{
  border-radius:4px;
  border:1px solid #cfc3ae;
  box-shadow:0 12px 26px rgba(54,49,41,.055), inset 0 0 0 4px rgba(255,255,255,.26);
}
.catalog-search-head{
  background:#20473c;
  border-bottom:2px solid #a98a5b;
}
.searchbox{background:#fffdf8}
.searchbox>div{border-radius:3px}
.searchbox button{background:#7c4d46}

/* content cards borrow proportions from book covers, without literal labels */
.knowledge-map{gap:18px}
.knowledge-map>div{
  position:relative;
  min-height:205px;
  padding:25px 24px 24px 31px;
  border-radius:4px 9px 9px 4px;
  background:linear-gradient(90deg,#efe8db 0 7px,#fffdf8 7px 100%);
  border:1px solid #d5cbbb !important;
  box-shadow:5px 8px 20px rgba(45,42,36,.045);
}
.knowledge-map>div:before{
  content:"";
  position:absolute;
  left:7px;top:0;bottom:0;width:1px;height:auto;
  background:#d5c3a5;
}
.knowledge-map>div:after{
  content:"";
  position:absolute;
  top:13px;right:13px;width:20px;height:3px;
  background:#b3915e;
  opacity:.55;
}

.foundation-list{
  border-radius:4px;
  border:1px solid #d3c8b7;
  border-top:0;
  box-shadow:0 10px 24px rgba(48,43,36,.035);
}
.foundation-list a{
  position:relative;
  background:#fffdf9;
  border-bottom:1px solid #ddd4c5;
}
.foundation-list a:before{
  content:"";
  position:absolute;left:0;top:0;bottom:0;width:5px;
  background:#315c4f;
  opacity:.78;
}
.foundation-list a:nth-child(2):before{background:#966d4e}
.foundation-list a:nth-child(3):before{background:#566f80}

.term-preview,.tool-preview{
  background:#fffdf8;
  border-color:#d5cbbb;
  box-shadow:0 9px 22px rgba(48,43,36,.035);
}
.term-preview div,.tool-preview a{
  border-bottom-color:#e1d8ca;
}

/* article list as tidy catalog cards */
.library-row{
  position:relative;
  margin-bottom:8px;
  background:#fffdf8 !important;
  border:1px solid #d8cebe;
  border-radius:4px;
  box-shadow:2px 4px 0 rgba(108,86,53,.035);
}
.library-row:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;width:4px;
  background:#365e51;
}
.library-row:nth-child(2n):before{background:#9a724e}
.library-row:nth-child(3n):before{background:#5d7281}
.library-row:hover{
  transform:translateY(-1px);
  box-shadow:4px 7px 14px rgba(52,47,39,.055);
}
.library-type{font-family:Georgia,"Times New Roman",serif;color:#7c6850}
.library-meta{border-left:1px solid #e0d7c8;padding-left:16px}

/* article pages: subtle printed-book cues */
.article{
  background:transparent;
}
.article h1,.page-head h1{
  font-family:Georgia,"Times New Roman",serif;
  letter-spacing:-.018em;
}
.article h2,.article h3{
  font-family:Georgia,"Times New Roman",serif;
  letter-spacing:-.01em;
}
.article-meta{
  border-top:1px solid #c6b89e;
  border-bottom:1px solid #ddd3c2;
  padding:10px 0;
}
.article-aside{
  background:#f1eadf;
  border:1px solid #d2c4ae;
  box-shadow:inset 4px 0 #aa8c5d;
}
.inline-note{
  background:#f3ecdf;
  border-left:4px solid #a98a5b;
}

/* tools: cards resemble reference slips, not dashboard widgets */
.tool-anchor-list a{
  border-radius:3px;
  background:#fffdf8;
  border-color:#d5cab9;
}
.tool-category{
  border-radius:4px;
  background:linear-gradient(#fffdf8,#f7f1e6);
  border-color:#d5cab9;
  box-shadow:0 7px 16px rgba(47,43,36,.035);
}
.calc{
  position:relative;
  border-radius:4px;
  background:#fffdf8;
  border:1px solid #d5cab9;
  border-top:1px solid #d5cab9;
  box-shadow:3px 6px 0 rgba(104,82,48,.045);
}
.calc:before{
  content:"";
  position:absolute;left:0;top:0;bottom:0;width:5px;
  background:#31594d;
}
.calc:nth-child(3n/**/+2):before{background:#90624f}
.calc:nth-child(3n):before{background:#657689}
.calc-head>span{
  font-family:Georgia,"Times New Roman",serif;
  color:#8d7450;
}
.calc input{
  background:#fbf9f4;
  border-color:#d9d0c1;
  border-radius:3px;
}
.calc output{
  border-radius:3px;
  background:#24493f;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
  font-family:Georgia,"Times New Roman",serif;
}

/* footer like the quiet endpaper of a book */
.site-footer{
  background:#15382f;
  border-top:3px solid #a98a5b;
}
.site-footer:before{
  content:"";
  display:block;
  height:1px;
  background:#d4bb91;
  opacity:.45;
}

@media(max-width:1050px){
  .global-sidebar{background:#f8f4eb}
  .sidebar-menu a:after{display:none}
  .nav-icon{height:25px;border-radius:3px}
}


/* =========================================================
   v12 — visual library refinement
   Library cues are decorative, not copy-driven.
   ========================================================= */

:root{
  --vellum:#f6f1e7;
  --vellum-light:#fcfaf5;
  --binding:#173d33;
  --binding-2:#214d40;
  --gilt:#b59867;
  --gilt-soft:#d6c39d;
  --paper-edge:#d7cfbf;
}

/* A page-like content field with a faint binding shadow */
main{
  position:relative;
  box-shadow:inset 9px 0 24px rgba(69,55,37,.025);
}
main:before{
  content:"";
  position:fixed;
  top:74px;
  left:248px;
  bottom:0;
  width:1px;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(181,152,103,.35),rgba(181,152,103,.08) 60%,transparent);
}

/* Header: quieter, more like a bound reference volume */
.site-header{
  background:
    radial-gradient(circle at 14% 20%,rgba(255,255,255,.035),transparent 17%),
    linear-gradient(180deg,#1d463a 0%,#173b32 100%);
}
.site-header .brand{
  position:relative;
}
.site-header .brand:after{
  content:"";
  position:absolute;
  left:45px;
  bottom:-10px;
  width:54px;
  height:1px;
  background:var(--gilt);
  opacity:.55;
}

/* Sidebar gets a subtle wooden-shelf rhythm without literal illustrations */
.global-sidebar{
  background:
    linear-gradient(90deg,rgba(114,83,45,.035),transparent 7px),
    repeating-linear-gradient(180deg,
      transparent 0 46px,
      rgba(142,112,70,.045) 46px 47px,
      transparent 47px 92px
    ),
    #f9f5ed;
}
.sidebar-menu a{
  overflow:visible;
}
.sidebar-menu a:before{
  content:"";
  position:absolute;
  left:36px;
  right:8px;
  bottom:2px;
  height:1px;
  background:linear-gradient(90deg,rgba(162,133,91,.32),rgba(162,133,91,.05));
}
.sidebar-menu a.active:before{
  background:linear-gradient(90deg,rgba(162,133,91,.62),rgba(162,133,91,.12));
}

/* Hero: editorial copy + abstract stack of books */
.intro-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.3fr) 310px!important;
  gap:68px!important;
  align-items:center!important;
}
.hero-copy{
  min-width:0;
}
.library-visual{
  align-self:stretch;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:420px;
}
.visual-frame{
  width:286px;
  height:336px;
  position:relative;
  border:1px solid #cdbfa8;
  border-radius:6px;
  background:
    linear-gradient(90deg,rgba(142,108,64,.025),transparent 15%),
    linear-gradient(180deg,#fbf8f0,#eee6d7);
  box-shadow:
    14px 18px 34px rgba(54,45,34,.08),
    inset 0 0 0 7px rgba(255,255,255,.34);
}
.visual-frame:before,
.visual-frame:after{
  content:"";
  position:absolute;
  left:22px;
  right:22px;
  height:9px;
  border-radius:2px;
  background:linear-gradient(180deg,#7f6344,#654b33);
  box-shadow:0 2px 0 rgba(255,255,255,.35);
}
.visual-frame:before{top:144px}
.visual-frame:after{top:263px}
.visual-shelf{
  position:absolute;
  left:28px;
  right:28px;
  display:flex;
  align-items:flex-end;
  gap:7px;
}
.shelf-one{top:47px;height:94px}
.shelf-two{top:169px;height:91px}
.book{
  display:block;
  position:relative;
  border-radius:2px 4px 4px 2px;
  border:1px solid rgba(50,42,31,.14);
  box-shadow:
    inset -3px 0 rgba(255,255,255,.09),
    2px 2px 0 rgba(62,47,31,.035);
}
.book:before,
.book:after{
  content:"";
  position:absolute;
  left:4px;
  right:4px;
  height:1px;
  background:rgba(223,199,151,.55);
}
.book:before{top:10px}
.book:after{bottom:10px}
.b1{width:29px;height:79px;background:#315a4e}
.b2{width:38px;height:91px;background:#85584f}
.b3{width:27px;height:70px;background:#647786}
.b4{width:44px;height:84px;background:#9b744d}
.b5{width:31px;height:76px;background:#596d52}
.b6{width:36px;height:75px;background:#65768a}
.b7{width:27px;height:88px;background:#32594d}
.b8{width:45px;height:68px;background:#8b6550}
.b9{width:36px;height:81px;background:#82683f}

.reading-card{
  position:absolute;
  right:21px;
  bottom:18px;
  width:104px;
  height:73px;
  padding:12px;
  transform:rotate(-3deg);
  background:#fffdf8;
  border:1px solid #cfc2ab;
  border-radius:2px;
  box-shadow:4px 6px 11px rgba(60,48,32,.08);
}
.reading-card span{
  font-family:Georgia,"Times New Roman",serif;
  font-size:15px;
  font-weight:bold;
  color:#31574b;
}
.reading-card div{
  height:2px;
  margin-top:8px;
  background:#d6cdbf;
}
.reading-card div:nth-child(3){width:74%}
.reading-card div:nth-child(4){width:55%}

/* Search feels like a card drawer rather than a web widget */
.catalog-search{
  max-width:700px;
  position:relative;
}
.catalog-search:before,
.catalog-search:after{
  content:"";
  position:absolute;
  z-index:-1;
  left:16px;
  right:16px;
  height:7px;
  border:1px solid #d7cdbd;
  border-top:0;
  background:#f0e9dd;
}
.catalog-search:before{bottom:-6px}
.catalog-search:after{left:28px;right:28px;bottom:-11px;background:#e9e0d1}

/* A restrained "book edge" on topic blocks */
.knowledge-map>div{
  transition:transform .16s ease,box-shadow .16s ease;
}
.knowledge-map>div:hover{
  transform:translateY(-2px);
  box-shadow:7px 12px 24px rgba(45,42,36,.065);
}
.knowledge-map h3{
  font-family:Georgia,"Times New Roman",serif;
}
.knowledge-map>div:nth-child(1){background:linear-gradient(90deg,#e3dbcc 0 8px,#fffdf8 8px 100%)}
.knowledge-map>div:nth-child(2){background:linear-gradient(90deg,#e5d7c9 0 8px,#fffdf8 8px 100%)}
.knowledge-map>div:nth-child(3){background:linear-gradient(90deg,#d9e0df 0 8px,#fffdf8 8px 100%)}
.knowledge-map>div:nth-child(4){background:linear-gradient(90deg,#dedfd1 0 8px,#fffdf8 8px 100%)}

/* Article catalog: add tiny clipped corners and paper depth */
.library-row{
  clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,0 100%);
}
.library-row:after{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:7px;
  height:7px;
  background:linear-gradient(45deg,#c8b99f 50%,transparent 51%);
  opacity:.55;
}

/* Article body resembles a printed reference page */
.article-layout{
  position:relative;
}
.article-layout:before{
  content:"";
  position:absolute;
  left:-28px;
  top:12px;
  bottom:24px;
  width:1px;
  background:linear-gradient(#c6b28c,rgba(198,178,140,.18));
}
.article h2{
  position:relative;
}
.article h2:before{
  content:"";
  position:absolute;
  left:-24px;
  top:.55em;
  width:11px;
  height:1px;
  background:#b79a68;
}
.article blockquote,
.inline-note{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.45);
}

/* Tool cards: index-card tabs, still clearly utilities */
.calc{
  overflow:visible;
}
.calc:after{
  content:"";
  position:absolute;
  top:-1px;
  right:18px;
  width:34px;
  height:8px;
  border:1px solid #cdbfa8;
  border-bottom:0;
  border-radius:4px 4px 0 0;
  background:#e9dfce;
}
.calc:nth-child(2n):after{background:#e0e6e3}
.calc:nth-child(3n):after{background:#eaded8}

/* Tiny right-edge bookmarks visible on desktop only */
@media(min-width:1200px){
  main:after{
    content:"";
    position:fixed;
    right:0;
    top:190px;
    width:9px;
    height:112px;
    background:
      linear-gradient(#8c5f50 0 26px,transparent 26px 37px,#60788a 37px 64px,transparent 64px 75px,#9b7b4f 75px 102px,transparent 102px);
    opacity:.62;
    border-radius:3px 0 0 3px;
    pointer-events:none;
  }
}

@media(max-width:1050px){
  main:before{display:none}
  .intro-grid{grid-template-columns:1fr!important}
  .library-visual{display:none}
}

@media(max-width:650px){
  .article-layout:before,
  .article h2:before{display:none}
}


/* =========================================================
   v13 — cleaned visual system
   ========================================================= */

:root{
  --green:#21483d;
  --green-dark:#173b32;
  --green-soft:#e6ece8;
  --cream:#f6f2e9;
  --paper:#fbf9f4;
  --ink:#252a26;
  --muted:#68706b;
  --brass:#aa8d61;
  --line:#d9d2c6;
}

.library-visual{display:none!important}

/* Hero back to one clear editorial column */
.intro-grid{
  display:block!important;
}
.home-intro .wrap{
  max-width:1120px;
}
.home-intro h1{
  max-width:820px;
}
.home-intro p{
  max-width:790px;
}
.catalog-search{
  max-width:760px;
}

/* One palette. No rainbow category coding. */
.nav-icon,
.nav-all,
.nav-basics,
.nav-economics,
.nav-analytics,
.nav-traffic,
.nav-practice,
.nav-glossary,
.nav-tools{
  background:var(--green)!important;
  color:#fff!important;
}
.sidebar-menu a.active .nav-icon{
  background:var(--green-dark)!important;
  outline:1px solid var(--brass);
  outline-offset:1px;
}

.knowledge-map>div,
.knowledge-map>div:nth-child(1),
.knowledge-map>div:nth-child(2),
.knowledge-map>div:nth-child(3),
.knowledge-map>div:nth-child(4){
  background:linear-gradient(90deg,#e9e2d5 0 7px,#fffdf8 7px 100%)!important;
}
.knowledge-map>div:after{
  background:var(--brass)!important;
}

.foundation-list a:before,
.foundation-list a:nth-child(2):before,
.foundation-list a:nth-child(3):before{
  background:var(--green)!important;
}

.library-row:before,
.library-row:nth-child(2n):before,
.library-row:nth-child(3n):before{
  background:var(--green)!important;
}

.calc:before,
.calc:nth-child(3n/**/+2):before,
.calc:nth-child(3n):before{
  background:var(--green)!important;
}
.calc:after,
.calc:nth-child(2n):after,
.calc:nth-child(3n):after{
  background:#e9dfce!important;
}

/* Remove visual noise added in previous iteration */
main:after{display:none!important}
.site-header .brand:after{display:none}
.global-sidebar{
  background:
    linear-gradient(90deg,rgba(114,83,45,.025),transparent 7px),
    #f9f6ef;
}
.global-sidebar:after{display:none}

.sidebar-menu a:before{
  background:linear-gradient(90deg,rgba(170,141,97,.24),rgba(170,141,97,.03));
}

/* Cleaner starter list now that document codes are gone */
.foundation-list a{
  grid-template-columns:1fr 165px!important;
}
.foundation-list a>div{
  grid-column:1;
}
.foundation-list a>em{
  grid-column:2;
}

/* Tools: four cards, not a dashboard */
.tools-intro{
  max-width:900px;
  padding-top:28px;
  padding-bottom:10px;
}
.tools-intro p{
  margin:0;
  padding:14px 17px;
  background:#f1ece2;
  border-left:3px solid var(--brass);
  color:#626963;
  font-size:14px;
  line-height:1.65;
}
.tools-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px!important;
  padding-top:16px;
}
.calc{
  padding:22px 22px 19px!important;
  border-radius:5px!important;
  box-shadow:0 7px 18px rgba(43,42,37,.035)!important;
}
.calc-head{
  margin-bottom:18px;
}
.calc-head>span{
  color:var(--brass)!important;
}
.calc output{
  background:var(--green)!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:24px!important;
}
.calc label{
  color:#4d5550;
}
.calc input:focus{
  border-color:#8fa69d;
  outline:2px solid rgba(33,72,61,.10);
  outline-offset:1px;
}

/* Footer rebuilt from scratch */
.site-footer{
  margin-left:var(--sidebar-width);
  padding:0!important;
  background:var(--green-dark)!important;
  border-top:2px solid var(--brass)!important;
}
.site-footer:before{display:none!important}
.footer-main{
  min-height:128px;
  display:grid;
  grid-template-columns:minmax(250px,1fr) auto;
  gap:48px;
  align-items:center;
  padding-top:30px;
  padding-bottom:28px;
}
.footer-identity .footer-brand{
  display:inline-block;
  color:#fff;
  font:600 20px/1.2 Georgia,"Times New Roman",serif;
  text-decoration:none;
}
.footer-identity p{
  margin:7px 0 0;
  color:#bfcac5;
  font-size:13px;
}
.footer-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px 24px;
}
.footer-links a{
  color:#dce4e0;
  text-decoration:none;
  font-size:13px;
}
.footer-links a:hover{
  color:#fff;
  text-decoration:underline;
  text-underline-offset:3px;
}
.footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:30px;
  padding-top:14px;
  padding-bottom:17px;
  border-top:1px solid rgba(255,255,255,.11);
  color:#9eafa8;
  font-size:10.5px;
}

/* Remove old footer layout rules from affecting new markup */
.footer-grid,.disclosure{display:none!important}

@media(max-width:1050px){
  .site-footer{margin-left:0}
}
@media(max-width:760px){
  .tools-grid{grid-template-columns:1fr!important}
  .footer-main{
    grid-template-columns:1fr;
    gap:20px;
  }
  .footer-links{
    justify-content:flex-start;
  }
  .footer-bottom{
    flex-direction:column;
    gap:5px;
  }
  .foundation-list a{
    grid-template-columns:1fr!important;
  }
  .foundation-list a>em{
    grid-column:1;
    text-align:left;
  }
}


/* =========================================================
   v15 — keep green base, add a few restrained secondary accents
   ========================================================= */
:root{
  --green:#21483d;
  --green-dark:#173b32;
  --brass:#aa8d61;
  --slate:#6f8085;
  --terracotta:#8b675e;
  --olive:#7b8661;
  --paper:#fbf9f4;
  --line:#d9d2c6;
}

/* Keep header and footer green, but introduce secondary colors in details */
.brand-mark{
  background:#f4efe5 !important;
  color:#25463c !important;
}

/* Left nav: green stays dominant, but icons get subtle variety */
.nav-all{background:var(--green) !important;color:#fff !important}
.nav-basics{background:#d7c7aa !important;color:#31413c !important;border-color:#cab998 !important}
.nav-economics{background:#c7d5d1 !important;color:#2e3d3f !important;border-color:#b7c5c1 !important}
.nav-analytics{background:#d9d1e4 !important;color:#443e55 !important;border-color:#cbc1d9 !important}
.nav-traffic{background:#d9cbc3 !important;color:#4b403b !important;border-color:#cabbb1 !important}
.nav-practice{background:#d4d8c5 !important;color:#3f4739 !important;border-color:#c4c9b5 !important}
.nav-glossary{background:#e3d7bf !important;color:#4b4334 !important;border-color:#d3c6aa !important}
.nav-tools{background:#c8d6d7 !important;color:#304244 !important;border-color:#b6c5c6 !important}
.sidebar-menu a.active .nav-icon,
.sidebar-menu a:hover .nav-icon{
  filter:saturate(1.03);
}
.sidebar-menu a.active{
  background:#f0eadf !important;
}

/* Search and small buttons get a warm neutral instead of more green */
.searchbox button{
  background:#7c6858 !important;
}
.searchbox button:hover{
  background:#6f5d4f !important;
}
.library-nav button.active{
  background:#7b6755 !important;
  border-color:#7b6755 !important;
}

/* Topic cards keep clean look, with light accent spines */
.knowledge-map>div:nth-child(1){background:linear-gradient(90deg,#e7dbc5 0 7px,#fffdf8 7px 100%) !important}
.knowledge-map>div:nth-child(2){background:linear-gradient(90deg,#d7e1df 0 7px,#fffdf8 7px 100%) !important}
.knowledge-map>div:nth-child(3){background:linear-gradient(90deg,#ddd7ea 0 7px,#fffdf8 7px 100%) !important}
.knowledge-map>div:nth-child(4){background:linear-gradient(90deg,#dfd5cf 0 7px,#fffdf8 7px 100%) !important}

/* Foundation and previews: vary top accents slightly */
.foundation-list{border-top:3px solid var(--green) !important}
.tool-preview{border-top:3px solid var(--slate) !important}
.term-preview{border-top:3px solid var(--brass) !important}
.about-card{border-top:3px solid var(--terracotta) !important}

/* Library rows get gentler accents instead of one repeated green */
.library-row:nth-child(4n/**/+1):before{background:var(--green) !important}
.library-row:nth-child(4n/**/+2):before{background:var(--slate) !important}
.library-row:nth-child(4n/**/+3):before{background:var(--brass) !important}
.library-row:nth-child(4n/**/+4):before{background:var(--terracotta) !important}

/* Tools: only a little variation */
.calc:nth-child(1):before{background:var(--green) !important}
.calc:nth-child(2):before{background:var(--slate) !important}
.calc:nth-child(3):before{background:var(--brass) !important}
.calc:nth-child(4):before{background:var(--terracotta) !important}
.calc output{
  background:#f3efe7 !important;
  color:#243831 !important;
  border:1px solid #ddd4c6;
}
.calc-head>span{
  color:#8d7554 !important;
}

/* Small content accents */
.inline-note{
  background:#f5eee2 !important;
  border-left-color:var(--brass) !important;
}
.article h2:before{
  background:var(--brass) !important;
}

/* Footer links slightly warmer for balance */
.footer-links a:hover{
  color:#f2e6cf !important;
}


/* v16 — expanded editorial content */
.article-sources{
  margin:38px 0 10px;
  padding:17px 19px 15px;
  background:#f4efe6;
  border:1px solid #ddd2c2;
  border-left:3px solid #aa8d61;
  border-radius:4px;
}
.article-sources>b{
  display:block;
  margin-bottom:8px;
  color:#39433e;
  font-size:12px;
  letter-spacing:.04em;
}
.article-sources ul{
  margin:0;
  padding-left:18px;
}
.article-sources li{
  margin:6px 0;
  color:#777d78;
  font-size:12px;
  line-height:1.45;
}
.article-sources a{
  color:#526b70;
  text-underline-offset:2px;
}
.article code{
  padding:2px 5px;
  background:#eee9df;
  border:1px solid #ded6c9;
  border-radius:3px;
  color:#584e43;
  font-size:.9em;
}

/* v17 practical reading additions */
.next-reading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0 6px}.next-reading a{display:flex;flex-direction:column;padding:13px 14px;background:#fffdf8;border:1px solid #ddd5c8;border-radius:5px;text-decoration:none}.next-reading b{color:#253c35;font-size:14px}.next-reading span{margin-top:4px;color:#737974;font-size:11.5px}.next-reading a:hover{background:#f8f3ea}@media(max-width:700px){.next-reading{grid-template-columns:1fr}}


/* =========================================================
   v18 — slightly larger reading text + interactive terms
   ========================================================= */

body{
  font-size:16.5px !important;
  line-height:1.72 !important;
}

.home-intro p{
  font-size:18px !important;
  line-height:1.72 !important;
}

.section-heading>p,
.knowledge-map p,
.foundation-list p,
.term-preview dd,
.tool-preview span,
.about-main p,
.handbook p{
  line-height:1.68;
}

.article p,
.article li{
  font-size:17px;
  line-height:1.76;
}

.article .lead{
  font-size:20px !important;
  line-height:1.62;
}

.article table{
  font-size:14px !important;
  line-height:1.55;
}

.library-row p{
  font-size:13.5px;
  line-height:1.58;
}

.glossary-entry dd{
  font-size:14.5px;
  line-height:1.65;
}

/* Technical terms are visibly interactive, but not loud. */
.term-help{
  appearance:none;
  -webkit-appearance:none;
  display:inline;
  position:relative;
  padding:0 1px;
  margin:0;
  border:0;
  border-bottom:1px dotted #88734f;
  background:transparent;
  color:#304e45;
  font:inherit;
  line-height:inherit;
  font-weight:600;
  cursor:help;
  text-decoration:none;
  text-underline-offset:3px;
}

.term-help:hover,
.term-help:focus-visible,
.term-help[aria-expanded="true"]{
  color:#6f5740;
  border-bottom-style:solid;
  background:rgba(179,151,103,.09);
  border-radius:2px;
  outline:none;
}

.term-help:focus-visible{
  box-shadow:0 0 0 2px rgba(168,141,97,.18);
}

/* Small marker makes it obvious that the word can be opened. */
.term-help:after{
  content:"?";
  display:inline-grid;
  place-items:center;
  width:12px;
  height:12px;
  margin-left:3px;
  transform:translateY(-1px);
  border:1px solid #b49b72;
  border-radius:50%;
  color:#806b4c;
  font:700 8px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  vertical-align:middle;
  opacity:.78;
}

.term-tooltip{
  position:fixed;
  z-index:1000;
  width:min(330px,calc(100vw - 28px));
  padding:14px 15px 13px;
  background:#fffdf8;
  border:1px solid #d3c7b4;
  border-radius:7px;
  box-shadow:0 15px 38px rgba(42,38,31,.16);
  color:#353b37;
  opacity:0;
  transform:translateY(4px);
  pointer-events:none;
  transition:opacity .12s ease,transform .12s ease;
}

.term-tooltip.open{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}

.term-tooltip:before{
  content:"";
  position:absolute;
  width:9px;
  height:9px;
  background:#fffdf8;
  border-left:1px solid #d3c7b4;
  border-top:1px solid #d3c7b4;
  transform:rotate(45deg);
  top:-5px;
  left:22px;
}

.term-tooltip[data-side="top"]:before{
  top:auto;
  bottom:-5px;
  transform:rotate(225deg);
}

.term-tooltip .term-en{
  display:block;
  margin-bottom:4px;
  color:#765f42;
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
}

.term-tooltip strong{
  display:block;
  margin-bottom:6px;
  color:#213e35;
  font:600 17px/1.25 Georgia,"Times New Roman",serif;
}

.term-tooltip p{
  margin:0;
  font-size:13px !important;
  line-height:1.55 !important;
  color:#59615c;
}

.term-tooltip .term-hint{
  display:block;
  margin-top:9px;
  padding-top:8px;
  border-top:1px solid #ebe4d8;
  color:#91918b;
  font-size:9.5px;
}

@media(max-width:650px){
  body{font-size:16px !important}
  .home-intro p{font-size:17px !important}
  .article p,.article li{font-size:16.5px}
  .article .lead{font-size:18px !important}
  .term-tooltip{
    width:calc(100vw - 24px);
  }
}

.term-tooltip:before{left:var(--arrow-left,22px)!important}


/* =========================================================
   v19 — source policy + glossary alignment cleanup
   ========================================================= */

/* Source note is deliberately non-clickable. */
.source-note{
  margin-top:34px;
  padding:14px 16px;
  background:#f4efe5;
  border:1px solid #dfd5c4;
  border-left:3px solid #a88d63;
  border-radius:5px;
}
.source-note b{
  display:block;
  margin-bottom:5px;
  color:#4f594f;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.source-note p{
  margin:0!important;
  max-width:720px;
  color:#70756f;
  font-size:12.5px!important;
  line-height:1.58!important;
}

/* Glossary stays a glossary: no tooltip buttons inside term headings. */
.glossary{
  max-width:980px;
}
.glossary dl{
  background:#fffdf8;
  border-color:#d9d1c4;
}
.glossary-entry{
  grid-template-columns:minmax(190px,230px) minmax(0,1fr);
  gap:30px;
  align-items:start;
  padding:21px 24px;
}
.glossary-entry dt{
  min-width:0;
  margin:0;
  padding:0;
  text-align:left!important;
  font:600 20px/1.25 Georgia,"Times New Roman",serif!important;
  color:#24483e!important;
  overflow-wrap:break-word;
  word-break:normal;
  hyphens:none;
}
.glossary-entry dd{
  min-width:0;
  margin:0;
  padding-top:1px;
  color:#59615c;
  text-align:left;
  font-size:15px;
  line-height:1.65;
}

/* Even if old cached markup somehow contains a term helper here,
   neutralize it so it cannot break the row. */
.glossary .term-help{
  display:inline!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:inherit!important;
  font:inherit!important;
  font-weight:inherit!important;
  cursor:default!important;
  box-shadow:none!important;
}
.glossary .term-help:after{
  display:none!important;
}

/* Slightly cleaner narrow-screen glossary. */
@media(max-width:720px){
  .glossary{
    padding-top:28px;
  }
  .glossary-entry{
    grid-template-columns:1fr!important;
    gap:7px!important;
    padding:18px 17px!important;
  }
  .glossary-entry dt{
    font-size:19px!important;
    line-height:1.25!important;
  }
  .glossary-entry dd{
    font-size:14.5px;
    line-height:1.62;
  }
}


/* =========================================================
   v20 — readability and practical-content cleanup
   ========================================================= */

/* Remaining text that was still too small */
.brand-text small{font-size:10px!important}
.header-context{font-size:12.5px!important}
.overline,
.section-heading>div>span,
.article-label{font-size:11.5px!important}
.searchbox label{font-size:12px!important}
.searchbox small{font-size:12.5px!important}
.foundation-list em{font-size:12.5px!important}
.tool-preview span{font-size:12.5px!important}
.editorial-strip span{font-size:10.5px!important}
.editorial-strip p{font-size:13.5px!important;line-height:1.6}
.library-type{font-size:11.5px!important}
.library-meta{font-size:11.5px!important;line-height:1.5}
.breadcrumbs{font-size:12.5px!important}
.article-meta{font-size:12px!important}
.article th{font-size:11.5px!important}
.article-editorial span{font-size:10.5px!important}
.article-editorial p{font-size:13px!important;line-height:1.6!important}
.aside-block b{font-size:10.5px!important}
.aside-block a,
.aside-block span{font-size:12.5px!important;line-height:1.45}
.sidebar-secondary a{font-size:12.5px!important}
.sidebar-foot small{font-size:10.5px!important}
.about-card>span{font-size:10.5px!important}
.about-card a{font-size:13px!important}
.footer-links a{font-size:13.5px!important}
.footer-bottom{font-size:11.5px!important}
.next-reading span{font-size:12.5px!important}
.calc label{font-size:13px!important}
.calc-note{font-size:13px!important;line-height:1.6!important}

/* No source-verification plaques. */
.source-note{display:none!important}

/* Internal page heads no longer reserve room for statistic counters */
.page-head-grid{
  grid-template-columns:minmax(0,820px)!important;
}
.library-stats{display:none!important}

/* The material list shows a topic, not a running counter */
.catalog-bar{
  justify-content:flex-start!important;
}
#libraryCount{display:none!important}

/* Practical cheat sheets */
.cheat-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  padding-top:38px;
  padding-bottom:80px;
}
.cheat-card{
  padding:24px 24px 22px;
  background:#fffdf8;
  border:1px solid #d9d1c4;
  border-top:3px solid #a88d63;
  border-radius:6px;
  box-shadow:0 8px 22px rgba(43,39,33,.035);
}
.cheat-card:nth-child(2n){
  border-top-color:#6f8085;
}
.cheat-head>span{
  display:block;
  margin-bottom:7px;
  color:#806b4b;
  font-size:11px;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.cheat-head h2{
  margin:0;
  font-size:25px;
  line-height:1.2;
}
.check-list{
  margin:18px 0 20px;
  padding:0;
  list-style:none;
}
.check-list li{
  position:relative;
  margin:0;
  padding:9px 0 9px 27px;
  border-bottom:1px solid #eee7dc;
  color:#525a55;
  font-size:15px;
  line-height:1.55;
}
.check-list li:last-child{border-bottom:0}
.check-list li:before{
  content:"✓";
  position:absolute;
  left:2px;
  top:9px;
  color:#31564b;
  font-weight:800;
}
.cheat-card>a{
  color:#6d5540;
  font-size:14px;
  font-weight:700;
  text-underline-offset:3px;
}

/* Tools: source of traffic is the main warning, not a footnote */
.tools-intro{
  max-width:980px!important;
}
.traffic-impact{
  padding:20px 22px;
  background:#f0ece3;
  border:1px solid #d8cdbc;
  border-left:4px solid #6f8085;
  border-radius:5px;
}
.traffic-impact strong{
  display:block;
  color:#253f37;
  font:600 21px/1.25 Georgia,"Times New Roman",serif;
}
.traffic-impact p{
  margin:8px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#535d58!important;
  font-size:15px!important;
  line-height:1.65!important;
}
.tool-demo-note{
  margin:12px 0 0!important;
  padding:0 2px!important;
  border:0!important;
  background:transparent!important;
  color:#777d78!important;
  font-size:12.5px!important;
}

/* Expanded glossary needs a little more breathing room */
.glossary-entry{
  padding-top:22px!important;
  padding-bottom:22px!important;
}
.glossary-entry dt{
  font-size:20.5px!important;
}
.glossary-entry dd{
  font-size:15.5px!important;
}

/* Keep main reading text comfortable */
.library-row p{font-size:14px!important}
.about-main p{font-size:16.5px!important;line-height:1.72}
.handbook li p{font-size:15px!important;line-height:1.62}

@media(max-width:760px){
  .cheat-grid{grid-template-columns:1fr}
  .cheat-card{padding:20px 18px}
}


/* =========================================================
   v21 — source presets, softer formulas, richer homepage
   ========================================================= */

/* Slightly larger interface text outside article bodies */
.home-intro p{font-size:19px;color:#4f5651;max-width:770px}
.section-heading p,
.knowledge-map p,
.foundation-list p,
.term-preview dd,
.tool-preview span,
.calc-head p,
.cheat-card p,
.page-head p,
.about-card p,
.footer-identity p{
  font-size:15.5px!important;
  line-height:1.68!important;
}
.searchbox small,
.catalog-note,
.footer-bottom,
.tool-demo-note,
.library-meta,
.arrival-card span{
  font-size:13px!important;
  line-height:1.6!important;
}

/* Homepage rail */
.intro-grid{grid-template-columns:minmax(0,1.2fr) 360px!important;align-items:start}
.intro-rail{display:flex;flex-direction:column;gap:16px;position:relative;z-index:1}
.hero-card{
  background:#fffdf9;
  border:1px solid #d9d2c5;
  border-radius:12px;
  box-shadow:0 12px 28px rgba(34,40,37,.05);
  padding:20px 20px 18px;
}
.hero-card>span{
  display:block;
  margin-bottom:10px;
  color:#856a47;
  font-size:11px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.hero-counter{background:linear-gradient(180deg,#fffdf9 0%,#f5f0e6 100%)}
.hero-counter strong{display:block;font:700 58px/1 Georgia,"Times New Roman",serif;color:#17342d}
.hero-counter em{display:block;margin-top:4px;font-style:normal;color:#51605a;font-size:18px}
.hero-counter p,.hero-note p{margin:12px 0 0;color:#5c6460;font-size:14px;line-height:1.6}
.hero-route b{display:block;margin:0 0 10px;font:500 23px/1.25 Georgia,"Times New Roman",serif;color:#17342d}
.hero-route a{display:block;padding:10px 0;border-top:1px solid #e6ddcf;text-decoration:none;color:#28473f;font-size:14px;font-weight:600}
.hero-route a:first-of-type{border-top:0}
.hero-route a:hover{color:#814b45}
.hero-note{border-left:4px solid #b58b51}

/* Tools source preset card */
.tools-preset-panel{padding-top:22px;padding-bottom:4px}
.preset-card{
  display:grid;
  grid-template-columns:1.15fr .95fr;
  gap:28px;
  align-items:start;
  padding:23px 24px;
  background:#f7f3ea;
  border:1px solid #ddd5c8;
  border-radius:10px;
  box-shadow:0 10px 24px rgba(36,43,38,.04);
}
.preset-copy span{
  display:block;
  margin-bottom:8px;
  color:#876f4e;
  font-size:11px;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.preset-copy h2{margin:0 0 10px;font-size:29px;line-height:1.18}
.preset-copy p{margin:0;color:#5a625d;font-size:15.5px;line-height:1.66}
.preset-controls label{display:block;margin-bottom:8px;color:#49524d;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.preset-controls select{
  width:100%;height:48px;padding:0 14px;background:#fff;border:1px solid #cfc4b4;border-radius:8px;
  font-size:15px;color:#23342f;outline:none;appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,#7b6650 50%),linear-gradient(135deg,#7b6650 50%,transparent 50%);
  background-position:calc(100% - 22px) calc(1em + 6px),calc(100% - 16px) calc(1em + 6px);
  background-size:6px 6px,6px 6px;background-repeat:no-repeat
}
.preset-controls small{display:block;margin-top:12px;color:#6c736e;font-size:13px;line-height:1.6}

/* Softer formula/code blocks in articles */
.article pre{
  background:linear-gradient(180deg,#f8f3e9 0%,#f3ecdf 100%)!important;
  color:#254238!important;
  border:1px solid #d8cfbf!important;
  border-left:4px solid #708289!important;
  border-radius:8px!important;
  padding:18px 20px!important;
  font:600 13px/1.7 Consolas,monospace!important;
  box-shadow:0 8px 18px rgba(34,41,37,.03);
}

/* A touch more polish for the main page */
.editorial-strip{background:linear-gradient(90deg,#17342d 0%,#22473e 62%,#6f8085 100%)!important;border-top:4px solid var(--brass)!important}
.catalog-search{border-radius:10px;overflow:hidden}
.knowledge-map>div{box-shadow:0 8px 18px rgba(35,42,38,.03)}
.term-preview,.tool-preview,.foundation-list,.hero-card{overflow:hidden}

@media(max-width:1050px){
  .intro-grid{grid-template-columns:1fr!important}
  .intro-rail{margin-top:20px}
  .preset-card{grid-template-columns:1fr}
}
@media(max-width:700px){
  .hero-counter strong{font-size:48px}
  .preset-copy h2{font-size:25px}
}


/* =========================================================
   v22 — smarter search and tidier catalog visuals
   ========================================================= */

.search-suggestions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.search-suggestions a{
  display:inline-flex;
  align-items:center;
  min-height:33px;
  padding:0 12px;
  background:#f8f2e7;
  border:1px solid #ddd1be;
  border-radius:999px;
  color:#365149;
  text-decoration:none;
  font-size:12px;
  font-weight:600;
}
.search-suggestions a:hover{background:#f0e6d6;color:#7b3934}
.hero-links{display:flex;flex-direction:column;gap:8px}
.hero-links a{
  display:block;
  padding:10px 12px;
  background:#f8f2e8;
  border:1px solid #ddd2c2;
  border-radius:8px;
  text-decoration:none;
  color:#29433b;
  font-size:14px;
  font-weight:600;
}
.hero-links a:hover{background:#f1e7d8;color:#7a4039}
.hero-note{border-left:4px solid #8a9da3}

.library-search{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px 16px;
  align-items:center;
  margin:18px 0 14px!important;
  padding:14px 16px!important;
  background:#fffdf9!important;
  border:1px solid #d8d0c2!important;
  border-radius:10px!important;
  box-shadow:0 10px 24px rgba(38,45,40,.04)!important;
}
.library-search:before{
  grid-column:1/-1;
  margin-bottom:0!important;
  color:#8a5c43!important;
  letter-spacing:.14em!important;
}
.library-search input{
  grid-column:1/2;
  width:100%;
  min-height:46px;
  padding:12px 14px!important;
  border:1px solid #d7cfbf!important;
  border-radius:8px!important;
  background:#fff!important;
  font-size:14px!important;
}
.library-search span{
  grid-column:2/3;
  font-size:12px!important;
  color:#6f746f!important;
  white-space:nowrap;
}
.library-empty{
  margin:0 0 16px;
  padding:16px 18px;
  background:#fbf6ed;
  border:1px solid #e2d8ca;
  border-left:4px solid #a87956;
  border-radius:8px;
}
.library-empty b{display:block;margin-bottom:5px;color:#243c35;font-size:15px}
.library-empty p{margin:0;color:#646a65;font-size:14px;line-height:1.6}
#libraryRows{display:flex;flex-direction:column;gap:12px}
.library-row.is-filtered-out{display:none!important}
.library-row,
.library-row:nth-child(even),
.library-row:hover{
  position:relative;
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr) 138px!important;
  gap:20px!important;
  align-items:start;
  padding:18px 20px!important;
  margin:0!important;
  background:#fffdf9!important;
  border:1px solid #ddd5c8!important;
  border-radius:12px!important;
  box-shadow:0 10px 22px rgba(36,43,38,.035);
  overflow:hidden;
}
.library-row:before,
.library-row:after,
.library-row:nth-child(2n):before,
.library-row:nth-child(3n):before,
.library-row:nth-child(4n/**/+1):before,
.library-row:nth-child(4n/**/+2):before,
.library-row:nth-child(4n/**/+3):before,
.library-row:nth-child(4n/**/+4):before{
  content:none!important;
  display:none!important;
}
.library-type{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  width:max-content;
  padding:0 14px;
  border:1px solid #d8cfbf;
  border-radius:999px;
  background:#f7f1e5;
  color:#745d46!important;
  font:700 11px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  letter-spacing:.05em!important;
  text-transform:uppercase;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}
.library-row h2{
  margin:2px 0 8px!important;
  font-size:24px!important;
  line-height:1.22!important;
}
.library-row p{
  margin:0!important;
  color:#5d645f!important;
  font-size:14.5px!important;
  line-height:1.67!important;
}
.library-meta{
  align-items:flex-end!important;
  justify-content:flex-start;
  gap:4px;
  padding-top:4px;
  color:#7a7872!important;
  font-size:11px!important;
}
.library-meta span{
  display:inline-flex;
  justify-content:flex-end;
}
.catalog-bar{
  padding:0 2px 14px!important;
  border-bottom:1px solid #d5cfc3!important;
}
.catalog-bar #activeTopicLabel{font-size:26px!important}
.page-head p{max-width:820px}

@media(max-width:920px){
  .library-search{grid-template-columns:1fr!important}
  .library-search span{grid-column:1/-1;white-space:normal}
  .library-row{grid-template-columns:1fr!important}
  .library-meta{align-items:flex-start!important;flex-direction:row!important;flex-wrap:wrap}
}
@media(max-width:700px){
  .search-suggestions{gap:8px}
  .search-suggestions a{font-size:11px;padding:0 10px;min-height:31px}
  .library-row{padding:16px 14px!important;border-radius:10px!important}
  .library-row h2{font-size:21px!important}
}


/* =========================================================
   v23 — quieter home rail and softer strip
   ========================================================= */
.home-intro{padding-top:66px!important;padding-bottom:58px!important}
.intro-grid{grid-template-columns:minmax(0,1.22fr) 320px!important;gap:54px!important;align-items:start!important}
.intro-rail{display:flex;flex-direction:column;gap:12px;align-self:start}
.catalog-search{max-width:760px!important}
.searchbox small{font-size:12px!important;line-height:1.6;color:#6a6f69!important}
.search-suggestions{display:none!important}
.hero-card{
  border:1px solid #ddd5c8!important;
  border-radius:10px!important;
  background:#fffdf8!important;
  box-shadow:0 10px 24px rgba(41,45,39,.04)!important;
}
.hero-counter,.hero-note{display:none!important}
.hero-route{padding:18px 18px 16px!important;border-left:3px solid #8b9c98!important}
.hero-route > span{color:#8a5d45!important;font-size:10px!important;letter-spacing:.14em!important}
.hero-route > b{display:block;margin:3px 0 10px;font:500 24px/1.2 Georgia,"Times New Roman",serif;color:#18342d}
.hero-route a{
  display:block;
  padding:10px 0;
  border-top:1px solid #e6ded1;
  text-decoration:none;
  color:#25423a;
  font-size:14px;
}
.hero-route a:first-of-type{border-top:0}
.hero-route a:hover{color:#7b4038}
.hero-compact-meta{
  margin:0 0 8px!important;
  font-size:13px!important;
  line-height:1.55!important;
  color:#5f6661!important;
}
.hero-compact-meta strong{font-weight:700;color:#18342d}
.editorial-strip{
  background:#28443d!important;
  border-top:3px solid #b28a57!important;
}
.editorial-strip .wrap{gap:34px!important}
.editorial-strip p{color:#d7e1dd!important}
.editorial-strip span{color:#bfcdc8!important}
.editorial-strip a{color:#f4f6f5!important}

@media(max-width:1100px){
  .intro-grid{grid-template-columns:1fr!important}
  .intro-rail{margin-top:18px!important;max-width:460px}
}
@media(max-width:700px){
  .hero-route{padding:16px 15px!important}
  .hero-route > b{font-size:21px!important}
}


/* =========================================================
   v24 — clearer knowledge sections and real traffic directory
   ========================================================= */
.home-sections{background:#f7f3eb!important}
.section-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.section-card{
  position:relative;
  min-height:250px;
  padding:23px 22px 20px;
  background:#fffdf9;
  border:1px solid #ddd5c8;
  border-radius:10px;
  box-shadow:0 8px 20px rgba(36,42,38,.03);
  overflow:hidden;
}
.section-card:after{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:3px;
  background:#b08c5d;
}
.section-card:nth-child(2):after{background:#7e8e93}
.section-card:nth-child(3):after{background:#8b675e}
.section-card:nth-child(4):after{background:#365248}
.section-card:nth-child(5):after{background:#7b8661}
.section-card:nth-child(6):after{background:#9a8060}
.section-number{font-size:11px;font-weight:700;letter-spacing:.13em;color:#8a7659}
.section-card h3{margin:9px 0 10px;font-size:25px}
.section-card p{margin:0 0 19px;color:#5d6560;font-size:14.5px;line-height:1.65}
.section-links{display:flex;flex-direction:column;border-top:1px solid #eee7dc}
.section-links a{padding:9px 0;border-bottom:1px solid #eee7dc;color:#355149;text-decoration:none;font-size:13px;font-weight:600}
.section-links a:hover{color:#7b4038}
.section-card-traffic{background:linear-gradient(180deg,#fffdf9,#f1f5f2)}

.traffic-home{padding:68px 0;background:#fffdf9;border-top:1px solid #e2dbcf;border-bottom:1px solid #e2dbcf}
.traffic-home-head{display:grid;grid-template-columns:1.05fr .8fr;gap:60px;align-items:end;margin-bottom:28px}
.traffic-home-head span{display:block;color:#814b45;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.14em}
.traffic-home-head h2{margin:7px 0 0;font-size:39px}
.traffic-home-head p{margin:0;color:#606863;font-size:15px;line-height:1.65}
.traffic-source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.traffic-source-grid>a{min-height:185px;padding:19px 18px;background:#f9f6ef;border:1px solid #ddd5c8;border-radius:9px;text-decoration:none;transition:.15s ease}
.traffic-source-grid>a:hover{transform:translateY(-2px);background:#fff;box-shadow:0 8px 18px rgba(39,44,40,.05)}
.traffic-source-grid span{display:block;color:#8a6d50;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.traffic-source-grid b{display:block;margin:9px 0 8px;color:#213d35;font:500 20px/1.24 Georgia,"Times New Roman",serif}
.traffic-source-grid p{margin:0;color:#626a65;font-size:13px;line-height:1.6}
.traffic-source-all{background:#eef2ef!important;border-color:#cfd9d4!important}

.traffic-intro{padding-top:34px}
.traffic-principle{padding:18px 20px;background:#f3eee4;border:1px solid #ddd2c1;border-left:4px solid #7d8f91;border-radius:6px}
.traffic-principle strong{font:500 22px Georgia,"Times New Roman",serif;color:#223d35}
.traffic-principle p{margin:7px 0 0;color:#5d6660;font-size:15px;line-height:1.65}
.traffic-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-top:28px;padding-bottom:48px}
.traffic-directory article{padding:23px 23px 21px;background:#fffdf9;border:1px solid #ddd5c8;border-radius:10px;box-shadow:0 8px 20px rgba(36,42,38,.03)}
.traffic-tag{display:inline-block;padding:5px 9px;background:#f2ecdf;border:1px solid #dfd4c2;border-radius:5px;color:#7a6046;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}
.traffic-directory h2{margin:12px 0 9px;font-size:28px}
.traffic-directory article>p{color:#5e6661;font-size:15px;line-height:1.65}
.traffic-directory dl{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:17px 0}
.traffic-directory dl div{padding:10px 9px;background:#f6f2e9;border-radius:5px}
.traffic-directory dt{color:#7f817c;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.traffic-directory dd{margin:5px 0 0;color:#31463f;font-size:12px;font-weight:700}
.traffic-directory article>a{color:#744f3e;font-size:13px;font-weight:700;text-underline-offset:3px}
.traffic-policy-note{margin-bottom:28px;padding:23px 24px;background:#f2efe8;border:1px solid #dcd5c9;border-radius:8px}
.traffic-policy-note h2{margin:0 0 8px;font-size:27px}
.traffic-policy-note p{margin:0;color:#5b635e;font-size:14.5px;line-height:1.7}
.traffic-next{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:80px}
.traffic-next a{padding:10px 13px;background:#fffdf9;border:1px solid #ddd5c8;border-radius:6px;color:#345047;text-decoration:none;font-size:13px;font-weight:600}
.traffic-next a:hover{background:#f4eee4}

@media(max-width:1000px){
  .section-grid{grid-template-columns:repeat(2,1fr)}
  .traffic-source-grid{grid-template-columns:repeat(2,1fr)}
  .traffic-home-head{grid-template-columns:1fr;gap:12px}
}
@media(max-width:750px){
  .section-grid,.traffic-source-grid,.traffic-directory{grid-template-columns:1fr}
  .section-card{min-height:auto}
  .traffic-directory dl{grid-template-columns:1fr 1fr}
}


/* =========================================================
   v25 — distinct sections, deeper traffic, richer restrained palette
   ========================================================= */

/* Home hero: no floating route card. */
.home-intro{background:linear-gradient(135deg,#fbf8f1 0%,#f4eee4 68%,#eef2f0 100%)!important}
.intro-grid{display:block!important;max-width:980px!important}
.catalog-search{max-width:780px!important}
.intro-rail{display:none!important}
.home-start-line{display:flex;align-items:center;gap:12px;margin-top:24px;padding-top:17px;border-top:1px solid #ded5c8;color:#6d716d;font-size:13px}
.home-start-line a{color:#6f4e3e;font-weight:700;text-underline-offset:3px}

/* Section cards get separate identities without turning into rainbow UI. */
.section-card{border-top-width:3px!important;box-shadow:0 8px 22px rgba(36,42,38,.035)!important}
.section-card:nth-child(1){background:#fffaf0!important;border-top-color:#b18b52!important}
.section-card:nth-child(2){background:#faf4f1!important;border-top-color:#9a685e!important}
.section-card:nth-child(3){background:#f2f7f8!important;border-top-color:#718891!important}
.section-card:nth-child(4){background:#f2f7f3!important;border-top-color:#527567!important}
.section-card:nth-child(5){background:#f7f6ef!important;border-top-color:#858c63!important}
.section-card:nth-child(6){background:#f7f4f8!important;border-top-color:#80768c!important}
.section-card:after{display:none!important}
.section-card h3 a{color:inherit;text-decoration:none}
.section-card h3 a:hover{color:#75483d}
.section-number{background:rgba(255,255,255,.62)!important;border:1px solid rgba(155,138,111,.25);border-radius:5px;padding:3px 7px;width:max-content}

/* Traffic home: a few quiet color families. */
.traffic-source-grid>a:nth-child(4n/**/+1){background:#fbf5ea!important;border-top:3px solid #ae8955!important}
.traffic-source-grid>a:nth-child(4n/**/+2){background:#f1f6f7!important;border-top:3px solid #748b94!important}
.traffic-source-grid>a:nth-child(4n/**/+3){background:#f2f6f2!important;border-top:3px solid #6f876e!important}
.traffic-source-grid>a:nth-child(4n/**/+4){background:#f8f2f0!important;border-top:3px solid #946b62!important}
.traffic-source-grid>a:hover{background:#fff!important}

/* Dedicated category pages */
.section-landing-head{border-bottom:0!important}
.section-landing-head:after{display:none!important}
.section-landing-head .wrap{max-width:1040px}
.section-basics-page .section-landing-head{background:linear-gradient(135deg,#fbf3e5,#f6efe6)!important;border-bottom:3px solid #b18b52!important}
.section-economics-page .section-landing-head{background:linear-gradient(135deg,#faf0ec,#f6f0ea)!important;border-bottom:3px solid #9a685e!important}
.section-analytics-page .section-landing-head{background:linear-gradient(135deg,#edf4f5,#f5f2eb)!important;border-bottom:3px solid #718891!important}
.section-practice-page .section-landing-head{background:linear-gradient(135deg,#f3f5ea,#f7f1e9)!important;border-bottom:3px solid #858c63!important}
.section-feature{display:grid;grid-template-columns:minmax(0,1.5fr) .75fr;gap:36px;padding-top:42px;padding-bottom:38px}
.section-feature>div{padding:28px 30px;background:#fffdf9;border:1px solid #ddd4c5;border-radius:10px;box-shadow:0 10px 25px rgba(40,44,39,.04)}
.section-feature>div>span{display:block;color:#835f48;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}
.section-feature h2{margin:10px 0 9px;font-size:31px}
.section-feature p{margin:0 0 17px;color:#5a625d;font-size:15px;line-height:1.68}
.section-feature a{color:#6f4b3c;font-weight:700;text-underline-offset:3px}
.section-feature aside{padding:24px;background:#f2eee6;border:1px solid #ded5c7;border-radius:10px;align-self:stretch}
.section-feature aside b{font:500 21px Georgia,"Times New Roman",serif;color:#263f37}
.section-feature aside p{color:#616863;font-size:14px;line-height:1.65}
.section-groups{padding-bottom:48px}
.section-group{padding:30px 0;border-top:1px solid #ddd5c8}
.section-group h2{font-size:29px;margin-bottom:16px}
.section-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.section-entry{display:block;padding:20px;background:#fffdf9;border:1px solid #ddd5c8;border-radius:9px;text-decoration:none;transition:.15s ease}
.section-entry:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(40,45,40,.05)}
.section-entry b{display:block;color:#243d35;font:500 20px/1.28 Georgia,"Times New Roman",serif}
.section-entry p{margin:8px 0 12px;color:#606762;font-size:14px;line-height:1.6}
.section-entry span{color:#795543;font-size:12px;font-weight:700}
.section-bottom-links{display:flex;gap:22px;padding-top:18px;padding-bottom:74px;border-top:1px solid #ddd5c8}
.section-bottom-links a{color:#5a645f;font-size:13px;font-weight:700;text-underline-offset:3px}

/* Traffic directory concrete cards */
.traffic-directory{gap:16px!important}
.traffic-directory .traffic-card{position:relative;overflow:hidden;border-top:3px solid #b08a55!important}
.traffic-directory .traffic-card:nth-child(3n/**/+2){border-top-color:#718891!important;background:#f9fbfb!important}
.traffic-directory .traffic-card:nth-child(3n){border-top-color:#78866a!important;background:#fafbf7!important}
.traffic-directory dl{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.traffic-directory dl div{min-height:72px;padding:11px 10px!important;background:#f4efe6!important;border:1px solid #e5dccf}
.traffic-directory dt{font-size:10px!important}
.traffic-directory dd{font-size:13px!important;line-height:1.35}
.traffic-cost-note{grid-column:1/-1;margin:0 0 28px;padding:13px 16px;background:#f4f0e8;border-left:3px solid #9b8061;color:#6d736e;font-size:12.5px;line-height:1.6}

/* Source guide summary box */
.source-cost-box{margin:24px 0 30px;padding:16px 18px;background:#f3efe6;border:1px solid #ddd4c5;border-left:4px solid #83969a;border-radius:7px}
.source-cost-box span{display:block;margin-bottom:5px;color:#7b5e48;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.11em}
.source-cost-box p{margin:0!important;color:#515b56;font-size:14.5px!important;line-height:1.65!important}

/* Keep page-head category accents varied elsewhere too */
.page-head{background:linear-gradient(135deg,#f8f4ec 0%,#f1eee7 72%,#eef2f0 100%)!important}

@media(max-width:900px){
  .section-feature{grid-template-columns:1fr}
  .section-entry-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .section-bottom-links{flex-direction:column;gap:9px}
  .traffic-directory dl{grid-template-columns:1fr!important}
}


/* =========================================================
   v26 — fixed green base, richer accents, live search, author card
   ========================================================= */

/* Main green identity intentionally unchanged. Secondary color only. */
:root{
  --accent-sand:#b28b55;
  --accent-clay:#9b6c62;
  --accent-slate:#718994;
  --accent-olive:#828b65;
  --accent-lilac:#82778f;
}

/* Live search suggestions */
.autocomplete-host{position:relative!important}
.autocomplete-box{
  position:absolute;z-index:90;left:0;right:0;top:calc(100% + 7px);
  max-height:390px;overflow:auto;padding:6px;background:#fffdf9;
  border:1px solid #cfc5b6;border-radius:9px;
  box-shadow:0 18px 42px rgba(31,37,33,.16);
}
.autocomplete-box[hidden]{display:none!important}
.autocomplete-box a{
  display:grid!important;grid-template-columns:96px minmax(0,1fr)!important;gap:2px 12px!important;
  padding:11px 12px!important;border:0!important;border-radius:6px!important;
  color:#243d35!important;text-decoration:none!important;background:transparent!important;
}
.autocomplete-box a+a{border-top:1px solid #eee7dc!important}
.autocomplete-box a:hover,.autocomplete-box a.active{background:#f2eee5!important}
.autocomplete-box a>span{grid-row:1/3;color:#8a674d!important;font-size:10px!important;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding-top:3px}
.autocomplete-box a>b{font:600 15px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#24453b}
.autocomplete-box a>small{font-size:11.5px!important;line-height:1.45!important;color:#777b77!important;white-space:normal!important}
.autocomplete-empty{padding:13px 14px;color:#707671;font-size:12.5px;line-height:1.55}
.sidebar-search .autocomplete-box{left:-3px;right:-3px;top:43px}
.sidebar-search .autocomplete-box a{grid-template-columns:1fr!important}
.sidebar-search .autocomplete-box a>span{grid-row:auto;font-size:9px!important}
.sidebar-search .autocomplete-box a>small{display:none}
.library-search .autocomplete-box{top:88px;left:16px;right:16px}

/* Category pages get different structure, while the header/green base stays fixed */
.section-feature aside{position:relative;overflow:hidden}
.section-feature aside:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent-sand)}
.section-economics-page .section-feature aside:before{background:var(--accent-clay)}
.section-analytics-page .section-feature aside:before{background:var(--accent-slate)}
.section-practice-page .section-feature aside:before{background:var(--accent-olive)}
.section-mini-route{display:flex;flex-direction:column;margin-top:16px;border-top:1px solid #ded6c9}
.section-mini-route a{padding:9px 0;border-bottom:1px solid #e5ded3;color:#385249!important;font-size:12.5px!important;text-decoration:none;font-weight:700}
.section-group-head{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-bottom:16px}
.section-group-head h2{margin:0!important}
.section-group-head>span{color:#8a8e89;font-size:11px}
.section-entry{position:relative;overflow:hidden}
.section-entry:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#c3aa82}
.section-economics-page .section-entry:before{background:#bf978e}
.section-analytics-page .section-entry:before{background:#9db1b8}
.section-practice-page .section-entry:before{background:#abb18d}
.section-entry:hover{border-color:#cfc4b4}

/* Author card */
.about-grid{grid-template-columns:minmax(0,1fr) 360px!important;gap:66px!important}
.author-card{
  padding:0!important;background:#fffdf8!important;border:1px solid #d7cebf!important;
  border-top:3px solid #9b6c62!important;border-radius:10px!important;overflow:hidden;
  box-shadow:0 12px 30px rgba(39,42,37,.055);
}
.author-head{display:grid;grid-template-columns:62px 1fr;gap:14px;align-items:center;padding:20px 20px 17px;background:linear-gradient(135deg,#f6efe5,#eef3f0)}
.author-monogram{width:58px;height:58px;display:grid;place-items:center;border-radius:8px;background:#21483d;color:#fff;font:600 19px/1 Georgia,"Times New Roman",serif;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.author-head span{display:block;color:#87654d;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}
.author-head strong{display:block;margin-top:3px;font:600 24px/1.1 Georgia,"Times New Roman",serif;color:#203b33}
.author-head small{display:block;margin-top:5px;color:#6e7772;font-size:11.5px}
.author-intro{margin:0!important;padding:18px 20px 15px!important;color:#535d57!important;font-size:14.5px!important;line-height:1.68!important}
.author-focus{padding:0 20px}
.author-focus>div{display:grid;grid-template-columns:82px 1fr;gap:9px;padding:10px 0;border-top:1px solid #ebe3d7}
.author-focus b{color:#2d4a41;font-size:12px}
.author-focus span{color:#727872;font-size:12px;line-height:1.45}
.author-note{margin:14px 20px 0!important;padding:13px 14px!important;background:#f5efe5;border-left:3px solid #a88a61;color:#666d68!important;font-size:12.5px!important;line-height:1.55!important}
.author-links{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:16px 20px 20px}
.author-links a{display:block!important;margin:0!important;padding:10px 11px;border:1px solid #d9d0c3;border-radius:6px;background:#fbf8f2;color:#375149!important;text-decoration:none;font-size:12px!important;font-weight:700;text-align:center}
.author-links a:hover{background:#f1ece3}

/* Fine color balance: green remains primary, sections get restrained companions */
.section-basics-page .section-group:nth-child(2) .section-entry{background:#fffaf2}
.section-economics-page .section-group:nth-child(2) .section-entry{background:#fcf7f5}
.section-analytics-page .section-group:nth-child(2) .section-entry{background:#f7fafb}
.section-practice-page .section-group:nth-child(2) .section-entry{background:#fafaf5}
.home-sections .section-card:nth-child(6){border-top-color:var(--accent-lilac)!important}

@media(max-width:900px){
  .about-grid{grid-template-columns:1fr!important;gap:34px!important}
  .author-card{max-width:520px}
}
@media(max-width:650px){
  .autocomplete-box a{grid-template-columns:1fr!important}
  .autocomplete-box a>span{grid-row:auto}
  .autocomplete-box a>small{display:none}
  .author-head{grid-template-columns:52px 1fr;padding:17px}
  .author-monogram{width:50px;height:50px}
  .author-head strong{font-size:21px}
  .author-focus,.author-intro{padding-left:17px!important;padding-right:17px!important}
  .author-links{padding-left:17px;padding-right:17px}
}

/* v26.1 small cleanup */
.searchbox>div.autocomplete-host{overflow:visible!important}
.library-search.autocomplete-host{overflow:visible!important}
.sidebar-search.autocomplete-host{overflow:visible!important}
.section-group-head{justify-content:flex-start!important}
.section-group-head>span{display:none!important}


/* =========================================================
   v27 — beginner path + fully clickable cards
   ========================================================= */

/* Entire cards clearly behave as controls */
[data-card-link]{
  cursor:pointer;
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background-color .15s ease;
}
[data-card-link]:hover{
  transform:translateY(-2px);
  border-color:#c7b99f!important;
  box-shadow:0 13px 28px rgba(38,42,37,.075)!important;
}
[data-card-link]:focus-visible{
  outline:3px solid rgba(181,139,81,.26);
  outline-offset:3px;
}
[data-card-link]:active{transform:translateY(0)}
.section-card[data-card-link]:hover h3 a,
.library-row[data-card-link]:hover h2,
.traffic-card[data-card-link]:hover h2{color:#7b4038!important}

/* Newcomer path: one continuous, quiet route instead of four floating cards */
.beginner-path{
  padding:36px 0 42px;
  background:#f7f3eb;
  border-bottom:1px solid #ddd5c8;
}
.beginner-path-head{
  display:grid;
  grid-template-columns:minmax(250px,.72fr) minmax(0,1fr);
  gap:44px;
  align-items:end;
  margin-bottom:19px;
}
.beginner-path-head>span{
  grid-column:1;
  color:#84684a;
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.beginner-path-head h2{
  grid-column:1;
  margin:5px 0 0;
  font-size:31px;
  line-height:1.16;
}
.beginner-path-head p{
  grid-column:2;
  grid-row:1/3;
  align-self:end;
  margin:0;
  color:#666d68;
  font-size:15px;
  line-height:1.65;
  max-width:470px;
}
.beginner-path-line{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid #d9d0c1;
  border-radius:10px;
  overflow:hidden;
  background:#fffdf9;
  box-shadow:0 8px 24px rgba(38,42,37,.035);
}
.beginner-step{
  min-width:0;
  position:relative;
  display:grid;
  grid-template-columns:27px minmax(0,1fr);
  gap:11px;
  padding:18px 16px 15px;
  border-right:1px solid #e1d9cc;
  background:#fffdf9;
}
.beginner-step:last-child{border-right:0}
.beginner-step:hover{background:#faf5ec!important}
.beginner-step>span{
  width:25px;height:25px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#e8dfcf;
  color:#3c514a;
  font-size:11px;
  font-weight:800;
}
.beginner-step b{
  display:block;
  margin:1px 0 6px;
  color:#203b33;
  font:600 17px/1.26 Georgia,"Times New Roman",serif;
}
.beginner-step p{
  margin:0!important;
  color:#69706b!important;
  font-size:12.5px!important;
  line-height:1.55!important;
}
.beginner-step i{
  grid-column:2;
  margin-top:11px;
  color:#856148;
  font-size:11.5px;
  font-style:normal;
  font-weight:700;
}

/* Beginner-facing category cards: less jargon, more obvious action */
.section-card{
  min-height:245px;
}
.section-card h3{font-size:26px!important}
.section-card p{font-size:14.5px!important;line-height:1.62!important}
.section-links a{position:relative;z-index:2}

/* Traffic directory cards are actionable across their whole surface */
.traffic-card[data-card-link] a{position:relative;z-index:2}
.traffic-card[data-card-link]:after{
  content:"Открыть разбор →";
  position:absolute;
  right:20px;
  bottom:17px;
  color:#86664d;
  font-size:11px;
  font-weight:700;
  opacity:0;
  transition:opacity .14s ease;
  pointer-events:none;
}
.traffic-card[data-card-link]:hover:after{opacity:1}

/* Library rows: remove any doubt that the card is clickable */
.library-row[data-card-link]{cursor:pointer}
.library-row[data-card-link] a{position:relative;z-index:2}

@media(max-width:1050px){
  .beginner-path-head{grid-template-columns:1fr;gap:6px}
  .beginner-path-head>span,.beginner-path-head h2,.beginner-path-head p{grid-column:1;grid-row:auto}
  .beginner-path-head p{margin-top:7px}
  .beginner-path-line{grid-template-columns:1fr 1fr}
  .beginner-step:nth-child(2){border-right:0}
  .beginner-step:nth-child(-n/**/+2){border-bottom:1px solid #e1d9cc}
}
@media(max-width:650px){
  .beginner-path{padding:30px 0 34px}
  .beginner-path-head h2{font-size:27px}
  .beginner-path-line{grid-template-columns:1fr}
  .beginner-step{border-right:0!important;border-bottom:1px solid #e1d9cc!important}
  .beginner-step:last-child{border-bottom:0!important}
  .beginner-step p{font-size:13px!important}
}


/* =========================================================
   v28 — beginner language pass
   ========================================================= */
.beginner-term-note{
  margin-top:22px;
  margin-bottom:-4px;
  color:#68706b;
  font-size:13.5px;
  line-height:1.55;
}
.beginner-term-note a{
  color:#7b5542;
  font-weight:700;
  text-underline-offset:3px;
}
.home-path-card p,
.section-entry p,
.traffic-card p,
.section-feature p,
.section-group p{
  font-size:15px!important;
  line-height:1.68!important;
}


/* =========================================================
   v29 — fewer choices on starter screens + mobile drawer
   ========================================================= */
.section-links{display:none!important}
.section-card-action{
  display:inline-block;
  margin-top:16px;
  color:#6f553f;
  font-size:13px;
  font-weight:700;
}
.section-card:hover .section-card-action{color:#173d33}

/* Beginner path reads as a sequence, not four unrelated buttons */
.beginner-path-line{position:relative}
.beginner-step{min-height:150px}
.beginner-step i{opacity:.68}

/* Start page: one obvious route, secondary reading visually quieter */
.starter-five{margin-top:0!important}
.starter-five li a{background:#fffdf8}
.starter-extra{margin-top:42px!important}
.starter-extra .next-reading a{background:#f8f4ec!important;box-shadow:none!important}
.starter-next{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  margin-top:34px;padding:18px 20px;background:#eee8dc;border:1px solid #d8cfbf;border-radius:8px
}
.starter-next span{color:#666c67;font-size:13px}
.starter-next a{color:#173d33;font-weight:800;text-underline-offset:3px}

.section-mini-route{margin-top:14px!important}
.section-mini-route a.section-next-link{
  display:inline-block!important;padding:0!important;border:0!important;background:transparent!important;
  color:#6f553f!important;font-weight:700!important;font-size:13px!important
}

/* Traffic choices are grouped by situation */
.traffic-directory{display:flex!important;flex-direction:column;gap:38px!important}
.traffic-group{display:block}
.traffic-group-head{display:grid;grid-template-columns:minmax(220px,.55fr) 1fr;gap:40px;align-items:end;margin-bottom:15px;padding-bottom:12px;border-bottom:1px solid #d9d2c5}
.traffic-group-head h2{margin:0;font-size:27px}
.traffic-group-head p{margin:0;color:#67706b;font-size:14px;line-height:1.6;max-width:650px}
.traffic-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.traffic-group:nth-child(2) .traffic-group-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.traffic-card{height:100%}

/* Desktop keeps the permanent library rail. */
.mobile-nav-toggle,.mobile-nav-overlay{display:none}

@media(max-width:1050px){
  .header-about{display:none!important}
  .mobile-nav-toggle{
    display:flex;margin-left:auto;align-items:center;gap:8px;height:38px;padding:0 12px;
    background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);border-radius:7px;
    color:#edf3f0;font-size:12px;font-weight:700;cursor:pointer
  }
  .mobile-nav-icon{width:16px;display:flex;flex-direction:column;gap:3px}
  .mobile-nav-icon i{display:block;height:1px;background:#edf3f0;width:100%}
  .global-sidebar{
    display:block!important;position:fixed!important;z-index:90!important;top:var(--header-height)!important;left:0!important;bottom:0!important;
    width:min(330px,calc(100vw - 42px))!important;height:auto!important;padding:22px 18px 26px!important;
    overflow-y:auto!important;overflow-x:hidden!important;background:#fbf8f1!important;border-right:1px solid #d8d0c3!important;
    border-bottom:0!important;box-shadow:12px 0 34px rgba(26,34,30,.16)!important;transform:translateX(-105%);transition:transform .2s ease
  }
  body.mobile-nav-open{overflow:hidden}
  body.mobile-nav-open .global-sidebar{transform:translateX(0)}
  .global-sidebar .sidebar-search,.global-sidebar .sidebar-rule,.global-sidebar .sidebar-secondary,.global-sidebar .sidebar-foot{display:block!important}
  .global-sidebar .sidebar-menu{display:flex!important;flex-direction:column!important;gap:3px!important;white-space:normal!important}
  .global-sidebar .sidebar-menu a{display:grid!important;grid-template-columns:31px 1fr!important;min-height:43px!important;padding:5px 7px!important}
  .global-sidebar .nav-icon{width:29px!important;height:29px!important}
  .mobile-nav-overlay{
    display:block;position:fixed;z-index:80;inset:var(--header-height) 0 0 0;border:0;background:rgba(20,27,24,.34);opacity:0;pointer-events:none;transition:opacity .2s ease
  }
  body.mobile-nav-open .mobile-nav-overlay{opacity:1;pointer-events:auto}
  main,.site-footer{margin-left:0!important}
}

@media(max-width:760px){
  .beginner-path-line{grid-template-columns:1fr!important;gap:10px!important}
  .beginner-step{min-height:auto!important;grid-template-columns:38px 1fr!important;padding:16px!important}
  .beginner-step i{grid-column:2;margin-top:5px!important}
  .section-grid{grid-template-columns:1fr!important;gap:12px!important}
  .section-card{min-height:auto!important;padding:20px 18px!important}
  .section-feature{grid-template-columns:1fr!important;gap:0!important}
  .section-feature aside{border-left:0!important;border-top:1px solid #ddd5c8!important;margin-top:18px;padding-top:18px!important}
  .section-entry-grid{grid-template-columns:1fr!important}
  .section-bottom-links{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .traffic-group-head{grid-template-columns:1fr!important;gap:6px!important}
  .traffic-group-grid,.traffic-group:nth-child(2) .traffic-group-grid{grid-template-columns:1fr!important}
  .traffic-next{display:grid!important;grid-template-columns:1fr!important}
  .starter-next{align-items:flex-start;flex-direction:column;gap:8px}
  .handbook li a{grid-template-columns:42px 1fr!important;gap:10px!important}
  .handbook li em{grid-column:2!important;text-align:left!important;margin-top:3px}
}


/* v29.1 mobile menu cleanup */
@media(max-width:1050px){
  .global-sidebar .sidebar-secondary{
    display:flex!important;
    flex-direction:column!important;
    gap:0!important;
    padding:0 7px!important;
  }
  .global-sidebar .sidebar-secondary a{
    display:block!important;
    padding:8px 1px!important;
    margin:0!important;
  }
  .global-sidebar .sidebar-foot{
    display:block!important;
    margin-top:20px!important;
    padding:14px 7px 0!important;
  }
}


/* =========================================================
   v30 — guided traffic choice, bookmarks, related reading, 3 core tools
   ========================================================= */

/* source chooser */
.source-wizard-section{padding:54px 0;background:#f7f3eb;border-bottom:1px solid #ddd6ca}
.source-wizard-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:44px;padding:28px 30px;background:#fffdf9;border:1px solid #d9d1c4;border-radius:12px;box-shadow:0 12px 30px rgba(37,43,39,.045)}
.source-wizard-intro>span,.wizard-result-label{display:block;margin-bottom:8px;color:#8b6248;font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.source-wizard-intro h2{font-size:31px;margin:0 0 12px}.source-wizard-intro p{margin:0;color:#606862;font-size:15px;line-height:1.68}
.wizard-progress{display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:center;margin-bottom:20px}.wizard-progress>span{color:#737974;font-size:12px;white-space:nowrap}.wizard-progress>div{height:4px;background:#ebe5da;border-radius:4px;overflow:hidden}.wizard-progress i{display:block;width:25%;height:100%;background:#31564b;transition:width .18s ease}
.wizard-question{font:500 25px/1.28 Georgia,"Times New Roman",serif;color:#17342d;margin-bottom:16px}
.wizard-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wizard-option{min-height:54px;padding:11px 14px;text-align:left;background:#faf7f0;border:1px solid #d9d0c2;border-radius:8px;color:#35423d;font-size:14px;cursor:pointer}.wizard-option:hover,.wizard-option:focus-visible{background:#f0ebe1;border-color:#a99a84;outline:none}
.wizard-results-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wizard-result{display:flex;flex-direction:column;padding:17px;background:#faf7f0;border:1px solid #dad1c4;border-radius:9px;text-decoration:none}.wizard-result:nth-child(2){border-top:3px solid #7d9097}.wizard-result:first-child{border-top:3px solid #b28a57}.wizard-result b{font:500 21px/1.25 Georgia,"Times New Roman",serif;color:#17342d}.wizard-result p{margin:7px 0 12px;color:#636a65;font-size:13.5px;line-height:1.58}.wizard-result em{margin-top:auto;font-style:normal;color:#765440;font-size:12.5px;font-weight:700}.wizard-restart{margin-top:13px;padding:0;border:0;background:none;color:#6d716d;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:12px}

/* bookmarks */
.article-actions{display:flex;align-items:center;gap:16px;margin:-18px 0 31px}.bookmark-button{min-height:38px;padding:0 13px;background:#fffaf1;border:1px solid #d8cdbc;border-radius:7px;color:#315048;font-weight:700;cursor:pointer}.bookmark-button:hover{background:#f3ece0}.bookmark-button.saved{background:#e9eee9;border-color:#bccac4;color:#21473c}.saved-link{color:#777c77;font-size:12.5px;text-underline-offset:3px}
.related-reading{margin-top:48px;padding-top:28px;border-top:1px solid #d8d1c5}.related-head span{display:block;color:#866047;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.related-head h2{margin:7px 0 17px;font-size:29px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.related-card{display:flex;flex-direction:column;min-height:166px;padding:16px;background:#fbf8f1;border:1px solid #ddd5c9;border-radius:8px;text-decoration:none}.related-card:hover{background:#f4eee4}.related-card>span{color:#867358;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.related-card>b{margin:8px 0 7px;color:#173b32;font:500 17px/1.28 Georgia,"Times New Roman",serif}.related-card p{margin:0!important;color:#686e69!important;font-size:12.5px!important;line-height:1.5!important}

/* saved page */
.saved-page{padding-top:42px;padding-bottom:80px}.saved-block+.saved-block{margin-top:54px}.saved-block-head{display:flex;justify-content:space-between;gap:20px;align-items:end;padding-bottom:13px;border-bottom:1px solid #d9d2c7}.saved-block-head span{display:block;color:#886149;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.saved-block-head h2{margin:5px 0 0;font-size:31px}.text-button{padding:0;border:0;background:none;color:#747a75;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.saved-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.saved-card{position:relative;display:block;padding:17px 45px 17px 17px;background:#fffdf9;border:1px solid #ddd5c8;border-radius:9px;text-decoration:none}.saved-card:hover{background:#f8f4ec}.saved-card>span{display:block;color:#8b7455;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.saved-card>b{display:block;margin:7px 0 4px;color:#173b32;font:500 19px/1.3 Georgia,"Times New Roman",serif}.saved-card small{color:#7a7e79;font-size:11px}.saved-card-remove{position:absolute;right:12px;top:12px;width:28px;height:28px;border:0;border-radius:5px;background:#f1ece3;color:#746f68;cursor:pointer}.saved-empty{margin-top:17px;padding:19px;background:#f6f1e7;border:1px dashed #d1c6b6;border-radius:8px}.saved-empty b{color:#33453f}.saved-empty p{margin:5px 0 8px;color:#6d726e;font-size:14px}.saved-empty a{color:#754e39;font-weight:700}
.recent-home{padding:48px 0;background:#f7f3eb;border-top:1px solid #ddd5c9}.recent-home-head{display:flex;align-items:end;gap:20px;margin-bottom:16px}.recent-home-head>span{color:#886149;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.recent-home-head h2{margin:0 auto 0 0;font-size:28px}.recent-home-head a{font-size:12.5px;color:#70513e}.recent-home-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}

/* 3 core tools */
.tool-suite{padding-top:42px;padding-bottom:90px}.big-tool{padding:25px 25px 23px;background:#fffdf9;border:1px solid #d9d2c6;border-radius:11px;box-shadow:0 10px 26px rgba(39,44,40,.035)}.big-tool+.big-tool{margin-top:24px}.big-tool:nth-child(2){border-top:3px solid #7d9097}.big-tool:nth-child(3){border-top:3px solid #b28a57}.big-tool-head{display:grid;grid-template-columns:36px 1fr;gap:13px;margin-bottom:19px}.big-tool-head>span{display:grid;place-items:center;width:30px;height:30px;background:#eee6d8;border-radius:6px;color:#725c43;font-size:11px;font-weight:800}.big-tool-head h2{margin:0 0 5px;font-size:29px}.big-tool-head p{margin:0;color:#656c67;font-size:14px;line-height:1.6}.tool-source-note{margin:0 0 18px;padding:12px 14px;background:#f3eee5;border-left:3px solid #819399;color:#555e59;font-size:13.5px;line-height:1.6}.tool-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px 15px}.tool-form-grid label,.compare-side label{display:block;color:#4f5752;font-size:12px;font-weight:700}.tool-form-grid input,.tool-form-grid select,.compare-side input,.compare-side select{display:block;width:100%;min-height:43px;margin-top:6px;padding:9px 11px;background:#fff;border:1px solid #d1c7b8;border-radius:7px;color:#25342f;font-size:14px}.big-tool-result,.diagnostic-result,.compare-result{margin-top:19px;padding:17px;background:#f5f1e9;border:1px solid #dfd6c8;border-radius:8px}.tool-result-main{display:flex;gap:24px;flex-wrap:wrap}.tool-result-stat b{display:block;color:#173c33;font:600 25px/1.15 Georgia,"Times New Roman",serif}.tool-result-stat span{color:#777d78;font-size:11.5px}.big-tool-foot{margin:10px 2px 0;color:#737873;font-size:12px;line-height:1.55}.diagnostic-result h3,.compare-result h3{margin:0 0 8px;font-size:21px}.diagnostic-result p,.compare-result p{margin:6px 0;color:#5b635e;font-size:13.5px;line-height:1.6}.diagnostic-flags{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.diagnostic-flag{padding:10px;background:#fff;border:1px solid #ddd5c8;border-radius:6px}.diagnostic-flag b{display:block;color:#173c33;font-size:16px}.diagnostic-flag span{color:#767b77;font-size:10.5px}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.compare-side{padding:17px;background:#f8f4ec;border:1px solid #dfd7cb;border-radius:8px}.compare-side h3{margin:0 0 14px;font-size:22px}.compare-side label+label{margin-top:10px}.compare-side small{font-weight:400;color:#8a8d89}.compare-table{display:grid;grid-template-columns:1.2fr 1fr 1fr;margin-top:9px;border:1px solid #ddd5c8;border-radius:7px;overflow:hidden}.compare-table>div{padding:10px;border-bottom:1px solid #e4ddd2}.compare-table>div:nth-last-child(-n/**/+3){border-bottom:0}.compare-table>div:nth-child(3n/**/+1){background:#f0ebe2;color:#5a625d;font-size:12px}.compare-table>div:not(:nth-child(3n/**/+1)){background:#fff;text-align:right;color:#273d36;font-weight:700;font-size:13px}

@media(max-width:950px){.source-wizard-card{grid-template-columns:1fr}.related-grid,.recent-home-grid{grid-template-columns:1fr 1fr}.tool-form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.source-wizard-section{padding:40px 0}.source-wizard-card{padding:20px 17px;gap:26px}.wizard-options,.wizard-results-grid,.related-grid,.saved-grid,.recent-home-grid,.compare-grid,.tool-form-grid{grid-template-columns:1fr}.wizard-progress{grid-template-columns:1fr}.wizard-question{font-size:22px}.article-actions{align-items:flex-start;flex-direction:column;gap:9px}.related-card{min-height:auto}.recent-home-head{align-items:flex-start;flex-direction:column;gap:5px}.diagnostic-flags{grid-template-columns:1fr}.compare-table{grid-template-columns:1.1fr 1fr 1fr}}

/* v30.1 saved-card markup fix */
.saved-card{position:relative;display:block;padding:0!important;background:#fffdf9;border:1px solid #ddd5c8;border-radius:9px;text-decoration:none;overflow:hidden}.saved-card:hover{background:#f8f4ec}.saved-card-main{display:block;padding:17px 45px 17px 17px;text-decoration:none}.saved-card-main>span{display:block;color:#8b7455;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.saved-card-main>b{display:block;margin:7px 0 4px;color:#173b32;font:500 19px/1.3 Georgia,"Times New Roman",serif}.saved-card-main small{color:#7a7e79;font-size:11px}


/* =========================================================
   v31 — wizard correctness + unclipped starter list
   ========================================================= */

/* [hidden] must win over component display rules. */
.wizard-options[hidden],
.wizard-results[hidden],
.wizard-question[hidden]{display:none!important}

.wizard-results{min-width:0;width:100%}
.wizard-results-grid{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  width:100%;min-width:0;
}
.wizard-result{min-width:0;overflow:hidden}
.wizard-result small{
  display:block;margin-bottom:7px;color:#86684c;font-size:10.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase
}
.wizard-conflict{
  padding:18px 19px;background:#f8f3e9;border:1px solid #dacdbb;border-left:4px solid #9b6d54;border-radius:8px
}
.wizard-conflict b{display:block;font:500 21px/1.25 Georgia,"Times New Roman",serif;color:#17342d}
.wizard-conflict p{margin:8px 0 12px;color:#616863;font-size:14px;line-height:1.62}
.wizard-conflict a{color:#714f3e;font-size:13px;font-weight:800;text-underline-offset:3px}

/* Start route is a group of clean cards instead of a table touching its edges. */
.handbook{max-width:1000px!important;padding-left:22px!important;padding-right:22px!important}
.handbook ol.starter-five{
  display:flex!important;
  flex-direction:column;
  gap:10px;
  border-top:0!important;
  margin-top:18px!important;
}
.handbook ol.starter-five li{margin:0!important;min-width:0}
.handbook ol.starter-five li a{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 86px!important;
  gap:18px!important;
  align-items:center;
  min-width:0;
  padding:19px 20px!important;
  border:1px solid #ddd5c8!important;
  border-radius:9px;
  background:#fffdf8!important;
  box-shadow:0 6px 17px rgba(38,43,39,.025);
}
.handbook ol.starter-five li a:hover{background:#faf6ee!important;border-color:#cabca8!important}
.handbook ol.starter-five li span{
  align-self:start;padding-top:3px;font-size:11px!important;color:#8a5d45!important
}
.handbook ol.starter-five li b{font-size:20px!important;line-height:1.3}
.handbook ol.starter-five li p{max-width:none!important;margin:5px 0 0!important;font-size:14.5px!important;line-height:1.55!important}
.handbook ol.starter-five li em{
  align-self:start;padding-top:4px;text-align:right!important;white-space:nowrap;font-size:12px!important;color:#777b76!important
}
.handbook-after{border-top:1px solid #d7cfc2!important;margin-top:40px!important}

@media(max-width:700px){
  .handbook{padding-left:16px!important;padding-right:16px!important}
  .handbook ol.starter-five li a{grid-template-columns:34px minmax(0,1fr)!important;gap:10px!important;padding:16px 14px!important}
  .handbook ol.starter-five li em{grid-column:2!important;text-align:left!important;padding-top:0!important;margin-top:4px!important}
  .wizard-results-grid{grid-template-columns:1fr!important}
}


/* =========================================================
   v32 — remembered context, diagnostics, source comparison
   ========================================================= */
.wizard-memory{margin-top:13px;padding:10px 12px;background:#f7f1e7;border:1px solid #ddd3c4;border-radius:7px;color:#636a65;font-size:12.5px;line-height:1.5}.wizard-memory b{color:#173b32}.wizard-memory a{color:#765440;text-underline-offset:3px}.wizard-why{margin:0 0 14px;padding-top:10px;border-top:1px solid #e5ddd1}.wizard-why strong{display:block;margin-bottom:6px;color:#5f655f;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em}.wizard-why span{display:block;position:relative;padding-left:14px;color:#616964;font-size:12.5px;line-height:1.5}.wizard-why span:before{content:"•";position:absolute;left:2px;color:#a27850}.wizard-continuation{display:flex;align-items:center;flex-wrap:wrap;gap:8px 15px;margin-top:14px;padding:12px 14px;background:#f4efe6;border:1px solid #ded5c7;border-radius:8px}.wizard-continuation span{color:#747974;font-size:11.5px}.wizard-continuation a{color:#315349;font-size:12.5px;font-weight:700;text-underline-offset:3px}
.tool-memory{margin-top:28px;padding:15px 18px;background:#f4eee4;border:1px solid #d9cfbf;border-left:4px solid #77908a;border-radius:7px}.tool-memory>span{display:block;color:#846548;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.tool-memory>b{display:block;margin-top:4px;color:#173b32;font:500 21px/1.2 Georgia,"Times New Roman",serif}.tool-memory p{margin:5px 0 0;color:#666d68;font-size:12.5px}.tool-quick-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:13px}.tool-quick-links a,.diagnostic-after a,.traffic-next a{display:inline-flex;align-items:center;min-height:39px;padding:0 13px;background:#fffdf8;border:1px solid #d9d1c4;border-radius:7px;color:#355148;text-decoration:none;font-size:12.5px;font-weight:700}.tool-quick-links a:hover,.diagnostic-after a:hover{background:#f4eee4}
.diagnostic-wizard-page{padding-top:42px;padding-bottom:30px;max-width:980px}.diagnostic-wizard-card{padding:25px;background:#fffdf9;border:1px solid #d9d2c6;border-radius:11px;box-shadow:0 10px 26px rgba(39,44,40,.035)}.problem-source-row{display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:18px;align-items:end;padding-bottom:21px;border-bottom:1px solid #e4ddd2}.problem-source-row label{color:#4f5752;font-size:12px;font-weight:700}.problem-source-row select{display:block;width:100%;min-height:44px;margin-top:7px;padding:9px 11px;background:#fff;border:1px solid #d1c7b8;border-radius:7px;font-size:14px}.problem-source-row>span{color:#797e79;font-size:12px}.problem-step,.problem-follow,.problem-result{padding-top:24px}.problem-step>span,.problem-follow>span,.problem-result>span{display:block;margin-bottom:7px;color:#8b6248;font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.problem-step h2,.problem-follow h2,.problem-result h2{font-size:27px;margin:0 0 16px}.problem-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.problem-options button{min-height:52px;padding:12px 14px;text-align:left;background:#f8f4ec;border:1px solid #d9d0c2;border-radius:8px;color:#29443b;font-size:13.5px;cursor:pointer}.problem-options button:hover{background:#efe8dc;border-color:#c7b89f}.problem-back,.problem-restart{margin-top:14px;padding:0;border:0;background:none;color:#6c716d;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.problem-result ol{margin:15px 0 18px;padding-left:23px;color:#555e59}.problem-result li{margin:9px 0;line-height:1.6}.problem-result-links{display:flex;flex-wrap:wrap;gap:10px}.problem-result-links a{padding:10px 12px;background:#f4eee4;border:1px solid #d9cfbf;border-radius:7px;color:#355148;text-decoration:none;font-size:12.5px;font-weight:700}.diagnostic-after{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:85px}
.source-compare-page{padding-top:38px;max-width:1120px}.source-compare-picker{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:end;padding:20px;background:#f6f1e8;border:1px solid #dbd2c4;border-radius:10px}.source-compare-picker label{color:#4f5752;font-size:12px;font-weight:700}.source-compare-picker select{display:block;width:100%;min-height:45px;margin-top:7px;padding:9px 11px;background:#fff;border:1px solid #d1c7b8;border-radius:7px;font-size:14px}.source-compare-picker>span{padding-bottom:12px;color:#8a8d88;font-size:12px}.source-compare-memory{margin-top:10px;color:#737975;font-size:12px}.source-compare-table{margin-top:18px;border:1px solid #d9d1c4;border-radius:10px;overflow:hidden}.source-compare-row{display:grid;grid-template-columns:190px 1fr 1fr}.source-compare-row>div{padding:15px 17px;border-top:1px solid #e4ddd2;border-right:1px solid #e4ddd2;color:#555e59;font-size:13.5px;line-height:1.6;background:#fffdf9}.source-compare-row>div:last-child{border-right:0}.source-compare-row>div:first-child{background:#f2ece2;color:#5f625d;font-size:12px;font-weight:700}.source-compare-row.source-compare-head>div{border-top:0;background:#ece5d9;color:#173b32;font-weight:800}.source-compare-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:13px}.source-compare-actions a{padding:10px 13px;background:#fffdf8;border:1px solid #d8d0c3;border-radius:7px;color:#355148;text-decoration:none;font-size:12.5px;font-weight:700}.source-compare-note{margin-top:26px;margin-bottom:85px;padding:18px 20px;background:#f5efe5;border-left:4px solid #a58258}.source-compare-note strong{display:block;color:#253d36;font-size:15px}.source-compare-note p{margin:6px 0 0;color:#636a65;font-size:13.5px;line-height:1.6}
@media(max-width:760px){.wizard-continuation{align-items:flex-start;flex-direction:column}.problem-source-row,.source-compare-picker{grid-template-columns:1fr}.problem-source-row>span{align-self:start}.problem-options{grid-template-columns:1fr}.source-compare-picker>span{padding:0}.source-compare-row{grid-template-columns:120px minmax(0,1fr) minmax(0,1fr)}.source-compare-row>div{padding:11px 9px;font-size:11.5px}.source-compare-row>div:first-child{font-size:10.5px}}


/* =========================================================
   v33 — stable continuity without moving the navigation
   ========================================================= */
.continue-home{
  padding:18px 0 6px;
  background:#f7f3eb;
}
.continue-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:30px;
  align-items:center;
  padding:18px 20px;
  background:#fffdf9;
  border:1px solid #ddd5c8;
  border-left:4px solid #8a9a95;
  border-radius:9px;
  box-shadow:0 8px 20px rgba(36,42,38,.035);
}
.continue-copy>span{
  display:block;
  margin-bottom:5px;
  color:#87634c;
  font-size:10px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.continue-copy h2{
  margin:0 0 5px;
  font-size:23px;
  line-height:1.2;
}
.continue-copy p{
  margin:0;
  max-width:730px;
  color:#626963;
  font-size:13.5px;
  line-height:1.58;
}
.continue-actions{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:7px;
  min-width:205px;
}
.continue-primary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 15px;
  background:#27483f;
  border:1px solid #27483f;
  border-radius:7px;
  color:#fff;
  text-decoration:none;
  font-size:13px;
  font-weight:700;
}
.continue-primary:hover{background:#1e3d35}
.continue-secondary{
  color:#6f6961;
  font-size:11.5px;
  text-underline-offset:3px;
}

/* Reading progress is visible only in history cards, never in main navigation. */
.saved-card-main small{
  display:block;
  margin-top:5px;
}

@media(max-width:780px){
  .continue-home{padding-top:12px}
  .continue-card{grid-template-columns:1fr;gap:14px;padding:16px}
  .continue-actions{align-items:flex-start;min-width:0}
  .continue-primary{width:100%}
}


/* =========================================================
   v34 — stable audience mode, reading state and My Path
   ========================================================= */
.sidebar-mode{padding:2px 7px 4px}
.sidebar-mode>span{display:block;margin-bottom:7px;color:#817b70;font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.sidebar-mode-buttons{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.sidebar-mode button,.audience-mode-buttons button,.path-mode-switch button{
  border:1px solid #d8cfbf;background:#fffdf8;color:#59615d;border-radius:6px;cursor:pointer;font:600 11px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;transition:.14s ease
}
.sidebar-mode button{min-height:32px;padding:5px 6px}
.sidebar-mode button:hover,.audience-mode-buttons button:hover,.path-mode-switch button:hover{border-color:#9f8b69;background:#f7f1e6;color:#263f37}
[data-user-mode][aria-pressed="true"]{background:#294a40!important;border-color:#294a40!important;color:#fff!important}
.mode-pro [data-user-mode="pro"][aria-pressed="true"]{background:#647b82!important;border-color:#647b82!important}

.audience-mode-home{padding:18px 0 0;background:#faf8f3}
.audience-mode-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:16px 18px;background:#fffdf8;border:1px solid #ddd5c8;border-left:3px solid #9d8461;border-radius:8px}
.audience-mode-card>div:first-child>span{display:block;color:#8b6c4b;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.audience-mode-card b{display:block;margin-top:4px;color:#1f3e35;font:500 19px/1.25 Georgia,"Times New Roman",serif}
.audience-mode-card p{margin:4px 0 0;max-width:690px;color:#69706b;font-size:12.5px;line-height:1.55}
.audience-mode-buttons{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.audience-mode-buttons button{min-height:38px;padding:0 13px;font-size:12px}
.mode-pro .audience-mode-card{border-left-color:#7b8f96}
.mode-pro .beginner-term-note{display:none!important}
.mode-pro .term-help:after{opacity:.28}

.level-badge{font-size:10px!important;font-weight:700!important;letter-spacing:.02em;color:#77644d!important}
.level-beginner{color:#557167!important}
.level-advanced{color:#7b6650!important}
.mode-pro .level-badge{display:none!important}
.reading-state-badge{display:inline-flex!important;align-items:center;gap:4px;color:#557167!important;font-weight:700!important}
.reading-state-badge.done:before{content:"✓";font-size:10px}
.reading-state-badge.started:before{content:"•";font-size:14px;line-height:8px}

.problem-query-suggestion{margin:0 0 14px;padding:15px 16px;background:#f6efe3;border:1px solid #ded1be;border-left:4px solid #9e7859;border-radius:7px}
.problem-query-suggestion span{display:block;color:#8a6a4e;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.problem-query-suggestion b{display:block;margin:4px 0 5px;color:#213d35;font-size:16px}
.problem-query-suggestion p{margin:0 0 9px;color:#636a65;font-size:13px;line-height:1.55}
.problem-query-suggestion a{color:#6f4f3d;font-size:13px;font-weight:700;text-underline-offset:3px}

.path-dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-top:38px;padding-bottom:85px}
.path-card{padding:21px 22px;background:#fffdf8;border:1px solid #ddd5c8;border-radius:8px;box-shadow:0 8px 20px rgba(42,44,39,.035)}
.path-card>span{display:block;margin-bottom:8px;color:#886b49;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.path-card h2{margin:0 0 8px;font-size:24px}
.path-card p{margin:0;color:#626a65;font-size:14px;line-height:1.62}
.path-wide{grid-column:1/-1;border-left:4px solid #748b84}
.path-mode-card{border-top:3px solid #a88b60}
.path-mode-switch{display:flex;gap:7px;flex-wrap:wrap;margin-top:15px}
.path-mode-switch button{min-height:38px;padding:0 13px}
.path-source-name{display:block;color:#1f3e35;font:500 22px/1.25 Georgia,"Times New Roman",serif}
.path-source-actions,.path-continue-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:12px}
.path-card a{color:#6e4f3c;font-weight:700;text-underline-offset:3px}
.path-progress{height:6px;margin:12px 0 8px;background:#ebe5db;border-radius:99px;overflow:hidden}.path-progress i{display:block;height:100%;background:#668078;border-radius:99px}
.path-action-list{display:flex;flex-direction:column}.path-action-list a{padding:9px 0;border-bottom:1px solid #ece5da}.path-action-list a:last-child{border-bottom:0}

@media(max-width:1050px){.sidebar-mode{display:none}.audience-mode-card{grid-template-columns:1fr}.audience-mode-buttons{justify-content:flex-start}.path-dashboard{grid-template-columns:1fr}.path-wide{grid-column:auto}}
@media(max-width:650px){.audience-mode-home{padding-top:12px}.audience-mode-card{padding:14px}.audience-mode-buttons{display:grid;grid-template-columns:1fr 1fr}.audience-mode-buttons button{padding:0 8px}.path-dashboard{padding-top:25px}.path-card{padding:18px 16px}}


/* =========================================================
   v35 — global audience mode + overload cleanup
   ========================================================= */
.audience-mode-home{display:none!important}
.global-mode-guidance{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-top:18px!important;
  margin-bottom:4px!important;
  padding-top:0!important;
  padding-bottom:0!important;
}
.global-mode-guidance>div{
  min-width:0;
  display:flex;
  align-items:baseline;
  gap:12px;
}
.global-mode-guidance span{
  flex:0 0 auto;
  color:#806748;
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.global-mode-guidance p{
  margin:0;
  color:#626a65;
  font-size:13px;
  line-height:1.5;
}
.global-mode-guidance a{
  flex:0 0 auto;
  color:#29473e;
  font-size:12.5px;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
  border-bottom:1px solid #b9a683;
  padding-bottom:2px;
}
.global-mode-guidance a:hover{color:#7b4139}
.mode-pro .global-mode-guidance span{color:#647982}
.mode-pro .global-mode-guidance a{border-bottom-color:#9baeb1}
.article-mode-guidance{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:12px 16px;
  margin:0 0 28px;
  padding:10px 12px;
  background:#f8f4ec;
  border:1px solid #e2d9cb;
  border-radius:6px;
}
.article-mode-guidance span{
  color:#806748;
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.article-mode-guidance p{margin:0!important;color:#676e69!important;font-size:12.5px!important;line-height:1.5!important}
.article-mode-guidance a{color:#29473e;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}
.mode-pro .article-mode-guidance{background:#f2f5f4;border-color:#d8e0de}
.mode-pro .article-mode-guidance span{color:#647982}
.mode-recommended-tool{
  border-color:#b8a27e!important;
  box-shadow:0 0 0 2px rgba(181,151,103,.08),0 10px 28px rgba(35,42,38,.045)!important;
}
.mode-pro .mode-recommended-tool{border-color:#9aadb0!important;box-shadow:0 0 0 2px rgba(111,128,133,.08),0 10px 28px rgba(35,42,38,.045)!important}
.mode-recommended-tool>.big-tool-head:before{
  content:"Рекомендуем сейчас";
  display:inline-flex;
  grid-column:1/-1;
  width:max-content;
  margin-bottom:2px;
  padding:4px 8px;
  border-radius:999px;
  background:#f0e5d4;
  color:#7d6345;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mode-pro .mode-recommended-tool>.big-tool-head:before{background:#e5eceb;color:#5f777c}
.tool-quick-links{display:none!important}
.footer-links{gap:10px 22px!important}

@media(max-width:1050px){
  /* Mode must remain available inside the mobile drawer on every page. */
  .global-sidebar .sidebar-mode{display:block!important;padding:8px 7px 10px!important}
  .global-sidebar .sidebar-mode>span{display:block!important}
  .global-sidebar .sidebar-mode-buttons{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important}
  .global-mode-guidance{align-items:flex-start;flex-direction:column;gap:7px;margin-top:14px!important}
  .global-mode-guidance>div{display:block}
  .global-mode-guidance p{margin-top:3px}
  .article-mode-guidance{grid-template-columns:1fr;gap:5px}
  .article-mode-guidance a{white-space:normal}
}


/* =========================================================
   v36 — stable wayfinding and dead-end prevention
   ========================================================= */
.header-inner{justify-content:flex-start}
.header-context{margin-left:auto!important;border-left:0!important;padding-left:0!important;text-align:right}

/* Unified article controls */
.article-actions-unified{
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  margin:-15px 0 28px;padding:11px 0 0;
}
.article-actions-unified .bookmark-button{
  min-height:38px;padding:0 13px;border:1px solid #d4cab9;border-radius:7px;
  background:#fbf7ef;color:#4a5650;font-size:12.5px;font-weight:700;cursor:pointer;
}
.article-actions-unified .bookmark-button:hover{background:#f3ecdf;border-color:#c8bba6}
.article-actions-unified .bookmark-button[aria-pressed="true"]{background:#eee5d5;color:#6d563c}
.article-actions-unified .saved-link{font-size:12.5px;color:#76634e;text-underline-offset:3px}

/* One strong next step, two quiet alternatives. */
.related-reading-stable{margin-top:48px;padding-top:27px;border-top:1px solid #d8d0c3}
.related-reading-stable .related-head{margin-bottom:15px}
.related-reading-stable .related-head span{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#876d4e;font-weight:700}
.related-reading-stable .related-head h2{margin:6px 0 0;font-size:28px}
.related-primary{
  display:block;padding:20px 21px;background:#f8f3e9;border:1px solid #d8cebd;border-left:4px solid #7b9089;
  border-radius:8px;text-decoration:none;box-shadow:0 7px 18px rgba(39,45,40,.03)
}
.related-primary>span{display:block;margin-bottom:7px;color:#7e684a;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.related-primary>b{display:block;color:#213d34;font:600 20px/1.3 Georgia,"Times New Roman",serif}
.related-primary>p{margin:7px 0 0!important;color:#5d655f;font-size:14px!important;line-height:1.6!important}
.related-primary:hover{background:#f4ecdf}
.related-secondary{display:flex;gap:17px;align-items:baseline;flex-wrap:wrap;margin-top:13px;padding-left:4px}
.related-secondary>span{color:#86857f;font-size:11px;text-transform:uppercase;letter-spacing:.07em}
.related-secondary a{color:#675948;font-size:13px;text-underline-offset:3px}

.article-exit-nav{
  display:flex;align-items:center;gap:12px 22px;flex-wrap:wrap;
  margin-top:34px;padding-top:18px;border-top:1px solid #e2dbcf;
}
.article-exit-nav a{font-size:12.5px;color:#737770;text-decoration:none}
.article-exit-nav a:first-child{color:#345048;font-weight:700}
.article-exit-nav a:hover{text-decoration:underline;text-underline-offset:3px}
.article-exit-nav a:last-child{margin-left:auto;color:#8a694f}

/* Stable help page */
.help-situations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:38px;padding-bottom:85px}
.help-situation{
  position:relative;padding:22px 22px 20px;background:#fffdf9;border:1px solid #dbd3c6;border-radius:9px;
  box-shadow:0 8px 20px rgba(37,43,39,.035);cursor:pointer;transition:transform .14s ease,box-shadow .14s ease
}
.help-situation:hover{transform:translateY(-2px);box-shadow:0 13px 26px rgba(37,43,39,.055)}
.help-situation>span{display:block;color:#886d4d;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}
.help-situation h2{margin:8px 0 8px;font-size:24px;line-height:1.2}
.help-situation p{margin:0 0 13px;color:#626964;font-size:14.5px;line-height:1.62}
.help-situation a{color:#315149;font-size:13px;font-weight:700;text-underline-offset:3px}

/* Autocomplete now behaves visually like one listbox. */
.autocomplete-box[role="listbox"] a[role="option"]{outline:none}
.autocomplete-box[role="listbox"] a[aria-selected="true"]{background:#eee6d9!important}

@media(max-width:760px){
  .help-situations{grid-template-columns:1fr;padding-top:26px}
  .article-exit-nav a:last-child{margin-left:0;width:100%;padding-top:4px}
  .related-secondary{flex-direction:column;gap:8px;align-items:flex-start}
}


/* v37 — content architecture and problem-first entry points */
.traffic-choice-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;margin-top:18px;padding:18px 20px;background:#fffdf8;border:1px solid #d9d1c4;border-left:4px solid #9b7d56;border-radius:8px;cursor:pointer}
.traffic-choice-entry>div>span{display:block;margin-bottom:4px;color:#8a6b49;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.traffic-choice-entry h2{margin:0 0 5px!important;font-size:22px!important}.traffic-choice-entry p{margin:0;color:#636a65;font-size:13.5px;line-height:1.55}.traffic-choice-entry>a,.wizard-manual-link{color:#315349;font-size:12.5px;font-weight:700;text-underline-offset:3px}.wizard-manual-link{display:inline-block;margin-top:12px}.article-purpose-note{margin-top:18px!important}.section-problems{margin-top:8px}.section-problems .section-group-head p{max-width:650px;color:#68706b;font-size:13px}.article[data-section="Аналитика"] .article-label{color:#687f88}
@media(max-width:700px){.traffic-choice-entry{grid-template-columns:1fr;gap:11px;padding:16px}.traffic-choice-entry>a{justify-self:start}}


/* v38 — resilient card navigation.
   The invisible anchor is a real link: card navigation survives even if optional JS fails. */
[data-card-link]{position:relative}
.card-hit-link{
  position:absolute;
  inset:0;
  z-index:3;
  border-radius:inherit;
  text-decoration:none;
  outline:none;
}
.card-hit-link:focus-visible{
  box-shadow:0 0 0 3px rgba(55,91,78,.22);
}
[data-card-link] > a:not(.card-hit-link),
[data-card-link] button,
[data-card-link] input,
[data-card-link] select,
[data-card-link] textarea,
[data-card-link] label{
  position:relative;
  z-index:4;
}

/* =========================================================
   v47 — concrete traffic source playbooks
   ========================================================= */
.header-about-link{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:7px;
  color:#f1eee7;
  font-size:12px;
  font-weight:700;
  letter-spacing:.02em;
  text-decoration:none;
  transition:background .14s ease,border-color .14s ease;
}
.header-about-link:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.34)}
.nav-playbooks{background:#eee1cc!important;color:#765435!important;font-size:9px!important}
.sidebar-menu a[data-nav="playbooks"]{background:#f6f0e5;border:1px solid #e1d5c2}
.sidebar-menu a[data-nav="playbooks"]:hover,.sidebar-menu a[data-nav="playbooks"].active{background:#ece1cf;border-color:#d2c0a4}

/* Main-page entry to the primary practical section. */
.home-playbooks{padding:58px 0 52px;background:#fffdf9;border-top:1px solid #ddd6ca;border-bottom:1px solid #ddd6ca}
.home-playbooks .traffic-home-head{margin-bottom:24px}
.home-playbook-grid>a{min-height:208px}
.home-playbook-foot{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:18px;padding-top:15px;border-top:1px solid #e2d9cc}
.home-playbook-foot p{margin:0;color:#626963;font-size:13px}
.home-playbook-foot a{color:#294a40;font-size:13px;font-weight:800;text-underline-offset:4px}

/* Entry to concrete plans on the generic traffic page. */
.traffic-playbook-entry{margin-top:34px;padding:31px;background:#27443c;border-radius:11px;color:#f6f2e9;box-shadow:0 14px 34px rgba(28,47,40,.12)}
.traffic-playbook-entry-head{display:grid;grid-template-columns:minmax(0,1fr) .8fr;gap:22px 50px;align-items:end;margin-bottom:21px}
.traffic-playbook-entry-head>span{grid-column:1/-1;color:#d2b98e;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.traffic-playbook-entry-head h2{margin:0;color:#fff;font-size:35px}
.traffic-playbook-entry-head p{margin:0;color:#d4dfdb;font-size:14px;line-height:1.66}
.traffic-playbook-entry .traffic-source-grid>a{min-height:175px;background:#fbf8f1!important;border-color:#d8d0c3!important}
.traffic-playbook-all{display:inline-block;margin-top:18px;color:#fff;font-size:13px;font-weight:800;text-underline-offset:4px}
.traffic-practical-rules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-top:22px}
.traffic-practical-rules>div{padding:17px 16px;background:#f5f0e7;border:1px solid #ded5c7;border-radius:8px}
.traffic-practical-rules span{display:block;color:#9a7752;font-size:10px;font-weight:800;letter-spacing:.12em}
.traffic-practical-rules b{display:block;margin:7px 0 6px;color:#274139;font:600 17px/1.25 Georgia,"Times New Roman",serif}
.traffic-practical-rules p{margin:0;color:#626964;font-size:12.5px;line-height:1.55}

/* Catalog. */
.playbook-page-head{background:linear-gradient(135deg,#f8f2e7,#edf3f0);border-bottom:3px solid #9e7d55}
.playbook-page-head .wrap{max-width:1050px}
.playbook-page-head p{max-width:800px}
.playbook-head-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:23px}
.playbook-head-actions a{display:inline-flex;align-items:center;min-height:42px;padding:0 15px;border:1px solid #cdbfae;border-radius:7px;color:#27483e;font-size:13px;font-weight:800;text-decoration:none;background:#fffdf8}
.playbook-head-actions a:first-child{background:#28483f;border-color:#28483f;color:#fff}
.playbook-method{display:grid;grid-template-columns:.62fr 1.6fr;gap:46px;align-items:center;padding-top:40px;padding-bottom:38px}
.playbook-method>div>span,.playbook-infrastructure>div>span{color:#876846;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.playbook-method h2,.playbook-infrastructure h2{margin:8px 0 0;font-size:30px}
.playbook-method ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none;counter-reset:method}
.playbook-method li{counter-increment:method;padding:15px 13px;background:#f8f4ec;border:1px solid #ded5c6;border-radius:8px}
.playbook-method li:before{content:"0" counter(method);display:block;margin-bottom:9px;color:#9b7953;font-size:10px;font-weight:800;letter-spacing:.1em}
.playbook-method li b{display:block;color:#294139;font-size:13px}
.playbook-method li span{display:block;margin-top:6px;color:#686e69;font-size:11.5px;line-height:1.48}
.playbook-catalog{padding-top:18px;padding-bottom:62px}
.playbook-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.playbook-card{position:relative;display:flex;flex-direction:column;min-height:390px;padding:25px 24px 22px;background:#fffdf9;border:1px solid #dcd3c5;border-top:3px solid #a48257;border-radius:10px;box-shadow:0 9px 24px rgba(38,45,40,.04);transition:transform .14s ease,box-shadow .14s ease}
.playbook-card:nth-child(2){border-top-color:#6f8990;background:#f8fbfb}
.playbook-card:nth-child(3){border-top-color:#6d866f;background:#f8fbf8}
.playbook-card:nth-child(4){border-top-color:#966e64;background:#fbf8f6}
.playbook-card:nth-child(5){border-top-color:#7a8460;background:#fafbf7}
.playbook-card:nth-child(6){border-top-color:#8b6e83;background:#fbf8fb}
.playbook-card:nth-child(7){border-top-color:#657f8b;background:#f8fafb}
.playbook-card:nth-child(8){border-top-color:#8a7358;background:#fbfaf7}
.playbook-card:nth-child(9){border-top-color:#8a6262;background:#fcf8f8}
.playbook-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(38,45,40,.07)}
.playbook-card-top{display:flex;justify-content:space-between;gap:15px;color:#866b4e;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.playbook-card-top small{color:#90918c;font-size:9px}
.playbook-card h2{margin:11px 0 9px;font-size:28px}
.playbook-card>p{margin:0 0 18px;color:#5f6762;font-size:14.5px;line-height:1.63}
.playbook-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:19px 0}
.playbook-facts>div{padding:10px;background:#f1ece3;border:1px solid #e1d8ca;border-radius:6px}
.playbook-facts dt{color:#817f78;font-size:9px;line-height:1.3;text-transform:uppercase;letter-spacing:.07em}
.playbook-facts dd{margin:6px 0 0;color:#31473f;font-size:12px;font-weight:800;line-height:1.35}
.playbook-card-risk{display:flex;gap:9px;margin-top:auto;padding:12px 0 15px;border-top:1px solid #e3dcd1;color:#656b67;font-size:12px;line-height:1.45}
.playbook-card-risk b{flex:0 0 auto;color:#7c6046}
.playbook-card>a{color:#2d5147;font-size:13px;font-weight:800;text-underline-offset:4px}
.playbook-infrastructure{display:grid;grid-template-columns:1fr 1.2fr;gap:55px;align-items:center;margin-bottom:36px;padding:28px 30px;background:#eef3f0;border:1px solid #d4ded9;border-radius:10px}
.playbook-infrastructure p{margin:10px 0 0;color:#616963;font-size:14px;line-height:1.65}
.playbook-template-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.playbook-template-list span{padding:11px 12px;background:#fff;border:1px solid #d8e0dc;border-radius:6px;color:#385249;font-size:12px;font-weight:700}
.playbook-bottom-links{padding-bottom:76px}

/* Detailed playbook. */
.source-playbook-page{padding-top:52px}
.source-playbook-article .article-label{color:#7b6247}
.source-playbook-article .lead{font-size:19px!important;line-height:1.7!important}
.source-playbook-article>.playbook-facts{margin:27px 0 21px}
.source-playbook-article>.playbook-facts>div{padding:13px 12px}
.playbook-risk{margin:0 0 33px;padding:16px 18px;background:#f5eee4;border:1px solid #ddd0be;border-left:4px solid #9b704c;border-radius:7px}
.playbook-risk b{display:block;color:#8a603e;font-size:10px;text-transform:uppercase;letter-spacing:.1em}
.playbook-risk p{margin:5px 0 0!important;color:#5e625e;font-size:14px!important;line-height:1.55!important}
.playbook-fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:34px 0}
.playbook-fit-grid>div{padding:20px 20px 16px;background:#f3f7f3;border:1px solid #d7e0d7;border-radius:9px}
.playbook-fit-grid>div:last-child{background:#f8f2ee;border-color:#e1d5ce}
.playbook-fit-grid h2{margin-top:0!important;font-size:23px!important}
.playbook-fit-grid ul,.playbook-checklist,.playbook-columns ul,.playbook-decision ul,.playbook-tips ul{padding-left:19px}
.playbook-fit-grid li,.playbook-checklist li,.playbook-columns li,.playbook-decision li,.playbook-tips li{margin:8px 0;color:#565f5a;font-size:14px;line-height:1.55}
.playbook-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:17px 0 35px;padding:0;list-style:none}
.playbook-checklist li{position:relative;margin:0;padding:13px 14px 13px 35px;background:#f8f4ec;border:1px solid #e0d7ca;border-radius:7px}
.playbook-checklist li:before{content:"✓";position:absolute;left:13px;top:13px;color:#456c5d;font-weight:900}
.playbook-steps{margin:19px 0 38px;padding:0;list-style:none}
.playbook-steps li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:15px;padding:18px 0;border-top:1px solid #e1dad0}
.playbook-steps li:last-child{border-bottom:1px solid #e1dad0}
.playbook-steps li>span{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:#294940;border-radius:50%;color:#fff;font:600 17px Georgia,"Times New Roman",serif}
.playbook-steps h3{margin:0 0 5px;font-size:20px}
.playbook-steps p{margin:0!important;color:#5f6762!important;font-size:14px!important;line-height:1.62!important}
.playbook-week{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:17px 0 36px;padding:0;list-style:none;counter-reset:week}
.playbook-week li{counter-increment:week;margin:0;padding:14px 14px 14px 42px;background:#eef4f1;border:1px solid #d5dfda;border-radius:7px;position:relative;color:#4d5b55;font-size:13.5px;line-height:1.55}
.playbook-week li:before{content:counter(week);position:absolute;left:14px;top:14px;color:#3e6859;font-weight:900}
.playbook-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:34px 0}
.playbook-columns>div{padding:20px;background:#f8f4ec;border:1px solid #ded5c7;border-radius:9px}
.playbook-columns h2{margin-top:0!important;font-size:23px!important}
.playbook-decision{margin:38px 0;padding:24px;background:#27443c;border-radius:10px}
.playbook-decision h2{margin-top:0!important;color:#fff!important}
.playbook-decision>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.playbook-decision article{padding:17px;background:#fffdf9;border-radius:8px}
.playbook-decision article>span{display:block;color:#477161;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.playbook-decision article:last-child>span{color:#95634e}
.playbook-decision ul{margin-bottom:0}
.playbook-tips{margin:34px 0;padding:22px 24px;background:#f6f0e6;border:1px solid #ded3c2;border-left:4px solid #a68153;border-radius:8px}
.playbook-tips h2{margin-top:0!important}
.playbook-official{margin:34px 0;padding-top:25px;border-top:1px solid #ddd5c9}
.playbook-official p{color:#646b66!important;font-size:13.5px!important}
.playbook-official>div{display:flex;gap:10px;flex-wrap:wrap}
.playbook-official a{display:inline-flex;padding:9px 12px;background:#f5f1e9;border:1px solid #dcd3c5;border-radius:6px;color:#345048;font-size:12px;font-weight:700;text-decoration:none}
.playbook-aside ol{margin:10px 0 14px;padding-left:22px}
.playbook-aside li{margin:8px 0;color:#626a65;font-size:12.5px}

@media(max-width:1050px){
  .sidebar-menu a[data-nav="playbooks"]{background:#f6f0e5}
  .source-playbook-page{padding-top:36px}
}
@media(max-width:900px){
  .traffic-playbook-entry-head,.playbook-method,.playbook-infrastructure{grid-template-columns:1fr;gap:16px}
  .traffic-practical-rules,.playbook-method ol{grid-template-columns:repeat(2,minmax(0,1fr))}
  .playbook-catalog-grid{grid-template-columns:1fr}
  .source-playbook-article>.playbook-facts{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .home-playbooks{padding:38px 0}
  .home-playbook-foot{align-items:flex-start;flex-direction:column;gap:10px}
  .traffic-playbook-entry{margin-top:24px;padding:21px 16px;border-radius:8px}
  .traffic-playbook-entry-head h2{font-size:28px}
  .traffic-practical-rules,.playbook-method ol,.playbook-template-list,.playbook-fit-grid,.playbook-checklist,.playbook-week,.playbook-columns,.playbook-decision>div{grid-template-columns:1fr}
  .playbook-method{padding-top:29px;padding-bottom:26px}
  .playbook-page-head h1{font-size:38px}
  .playbook-head-actions{flex-direction:column}
  .playbook-head-actions a{justify-content:center}
  .playbook-catalog{padding-bottom:42px}
  .playbook-card{min-height:auto;padding:21px 18px}
  .playbook-card h2{font-size:25px}
  .playbook-facts,.source-playbook-article>.playbook-facts{grid-template-columns:1fr}
  .playbook-infrastructure{padding:22px 18px}
  .source-playbook-page{padding-top:24px}
  .source-playbook-article .lead{font-size:17px!important}
  .playbook-steps li{grid-template-columns:36px minmax(0,1fr);gap:11px}
  .playbook-steps li>span{width:34px;height:34px;font-size:15px}
  .playbook-decision{padding:19px 15px}
  .playbook-tips{padding:19px 17px}
}

/* Prevent decorative pseudo-elements from blocking the real hit area. */
[data-card-link]::before,
[data-card-link]::after{pointer-events:none}

/* v39 — interaction stability: no invisible link can enter a grid or cover a control. */
.card-hit-link{display:none!important}
[data-card-link]{position:relative;cursor:pointer}
[data-card-link]:focus-visible{outline:3px solid rgba(55,91,78,.20)!important;outline-offset:3px}
[data-card-link] a,[data-card-link] button,[data-card-link] input,[data-card-link] select,[data-card-link] textarea,[data-card-link] label{position:relative;z-index:2}
[data-card-link]::before,[data-card-link]::after{pointer-events:none}
.beginner-step i a{color:inherit;text-decoration:none;position:relative;z-index:2}
.beginner-step i a:hover{text-decoration:underline;text-underline-offset:3px}


/* v40 — launch-ready content and conversion layer */
.article-depth{margin:34px 0 8px;padding-top:4px;border-top:1px solid #ddd4c5}
.article-depth h2{margin-top:30px}
.partner-next-step{margin:32px 0;padding:20px 22px;border:1px solid #d8cbb8;border-left:3px solid #9b744f;border-radius:8px;background:#fbf7ef}
.partner-next-step>span{display:block;margin-bottom:7px;color:#8a613c;font:700 10px/1.2 "Courier New",monospace;letter-spacing:.08em;text-transform:uppercase}
.partner-next-step p{margin:0 0 12px;max-width:720px;color:#535e58;font-size:14px;line-height:1.65}
.partner-next-step a{font-weight:700;color:#6f482b;text-decoration:underline;text-underline-offset:3px}
@media(max-width:650px){.article-depth{margin-top:26px}.partner-next-step{padding:17px 16px}}

/* v40 — final narrow-screen guards */
@media(max-width:650px){
  .section-heading{grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
  .section-heading>p{max-width:none!important;min-width:0}
  .article{min-width:0}
}
@media(max-width:420px){
  .article table{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .article th,.article td{min-width:105px}
}

/* v41 — first-visit clarity and restrained trust cues */
.home-entry-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:720px;margin:24px 0 20px}
.home-entry-choice{display:flex;flex-direction:column;gap:3px;min-height:100px;padding:15px 16px;border:1px solid var(--line);border-top:3px solid var(--forest);border-radius:8px;background:rgba(255,253,248,.78);text-decoration:none;transition:border-color .16s ease,transform .16s ease,background .16s ease}
.home-entry-choice:nth-child(2){border-top-color:var(--brass)}
.home-entry-choice:hover,.home-entry-choice:focus-visible{border-color:#a99d89;background:var(--surface);transform:translateY(-1px);outline:none}
.home-entry-choice>span{color:#7b756b;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.home-entry-choice>b{font-family:Georgia,"Times New Roman",serif;font-size:19px;font-weight:500;color:var(--forest-2)}
.home-entry-choice>small{margin-top:3px;color:#606862;font-size:12.5px;line-height:1.45}
.home-trust-row{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap;max-width:720px;margin-top:14px;color:#6b6f69;font-size:11.5px}
.home-trust-row>span{position:relative;padding-left:14px}
.home-trust-row>span:before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;border-radius:50%;background:var(--brass)}
.home-trust-row b{color:var(--forest-2)}
.home-trust-row a{margin-left:auto;color:var(--wine);font-weight:700;text-underline-offset:3px}
.wizard-gate{padding:18px 19px;border:1px solid var(--line);border-radius:8px;background:#faf7f0}
.wizard-gate>b{display:block;margin-bottom:5px;font:500 20px/1.25 Georgia,"Times New Roman",serif;color:var(--forest-2)}
.wizard-gate p{margin:0 0 13px;color:#606862;font-size:13.5px;line-height:1.6}
.wizard-gate button{min-height:42px;padding:9px 15px;border:1px solid var(--forest);border-radius:6px;background:var(--forest);color:#fff;font:700 12.5px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;cursor:pointer}
.wizard-gate button:hover,.wizard-gate button:focus-visible{background:var(--forest-2);outline:2px solid rgba(24,59,50,.18);outline-offset:2px}
#wizardGate[hidden],#wizardProgress[hidden],#wizardStartButton[hidden]{display:none!important}

@media(max-width:760px){
  .home-entry-choices{grid-template-columns:1fr;margin-top:20px}
  .home-entry-choice{min-height:auto}
  .home-trust-row{align-items:flex-start;flex-direction:column;gap:5px;margin-top:13px}
  .home-trust-row a{margin-left:0;margin-top:3px}
}

/* v42 — publication polish and accessibility */
.skip-link{
  position:fixed;z-index:200;left:14px;top:10px;
  padding:10px 14px;border-radius:6px;background:#fffdf8;color:#17342d;
  border:2px solid #17342d;font-weight:800;text-decoration:none;
  transform:translateY(-160%);transition:transform .15s ease
}
.skip-link:focus{transform:translateY(0)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(57,93,80,.28);outline-offset:3px
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* v43 — let live search suggestions leave the search card. */
.home-intro:focus-within,
.home-intro:has(.autocomplete-box:not([hidden])){
  overflow:visible!important;
  z-index:40;
}
.catalog-search:focus-within,
.catalog-search:has(.autocomplete-box:not([hidden])){
  overflow:visible!important;
  z-index:100;
}
.catalog-search-head{border-radius:9px 9px 0 0}
.catalog-search .searchbox{border-radius:0 0 9px 9px}

/* v44 — one final mobile contract after the accumulated component rules. */
@media(max-width:760px){
  html,body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }
  main,.site-footer{
    width:100%;
    max-width:100%;
    margin-left:0!important;
  }
  .wrap,
  main .wrap,
  .site-footer .wrap{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  main *,
  .site-footer *{
    min-width:0;
  }
  .intro-grid,
  .page-head-grid,
  .section-heading,
  .knowledge-map,
  .section-grid,
  .split-section,
  .about-grid,
  .article-layout,
  .library-shell,
  .tools-grid,
  .section-feature,
  .section-entry-grid,
  .help-situations,
  .path-dashboard,
  .source-wizard-card,
  .wizard-results-grid,
  .traffic-group-grid,
  .footer-main{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
  }
  .home-intro,
  .page-head,
  .rule-section,
  .article,
  .about-main,
  .library-main,
  .catalog-search,
  .searchbox,
  .searchbox>div,
  .home-entry-choices,
  .home-entry-choice{
    width:100%!important;
    max-width:100%!important;
  }
  .home-intro h1,
  .page-head h1,
  .article h1{
    max-width:100%;
    font-size:clamp(34px,10vw,43px)!important;
    overflow-wrap:anywhere;
  }
  .brand,.brand-text{min-width:0}
  .brand-text b{white-space:nowrap}
  .breadcrumbs{flex-wrap:wrap}
  .autocomplete-box{
    left:0!important;
    right:0!important;
    width:auto!important;
    max-width:100%!important;
    max-height:min(55vh,390px)!important;
    overscroll-behavior:contain;
  }
  .article table{
    display:block;
    width:100%;
    max-width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  .article pre{width:100%;max-width:100%;overflow-x:auto}
  img,svg,video,iframe{max-width:100%;height:auto}
  .footer-links{justify-content:flex-start!important}
}

@media(max-width:650px){
  :root{--header-height:68px}
  .site-header .wrap{padding-left:14px!important;padding-right:14px!important}
  .global-sidebar{top:68px!important;max-width:calc(100vw - 28px)!important}
  .mobile-nav-overlay{inset:68px 0 0!important}
}

@media(max-width:420px){
  .home-intro h1,
  .page-head h1,
  .article h1{font-size:clamp(31px,10vw,38px)!important}
  .author-links{grid-template-columns:1fr!important}
}

/* v45 — stable search inside the mobile navigation drawer. */
@media(max-width:1050px){
  .global-sidebar .sidebar-search{
    display:grid!important;
    grid-template-columns:32px minmax(0,1fr)!important;
    align-items:center!important;
    gap:6px!important;
    width:100%!important;
    height:48px!important;
    min-height:48px!important;
    padding:0 10px!important;
    overflow:visible!important;
  }
  .global-sidebar .sidebar-search>span{
    display:block!important;
    position:static!important;
    width:26px!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    transform:rotate(-15deg)!important;
    font:25px/1 Georgia,"Times New Roman",serif!important;
    color:#39433e!important;
  }
  .global-sidebar .sidebar-search input{
    grid-column:2!important;
    display:block!important;
    width:100%!important;
    height:46px!important;
    min-height:46px!important;
    margin:0!important;
    padding:0 4px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#252b28!important;
    font-size:16px!important;
    line-height:1.3!important;
    appearance:none;
    -webkit-appearance:none;
  }
  .global-sidebar .sidebar-search .autocomplete-box{
    position:absolute!important;
    z-index:140!important;
    top:calc(100% + 8px)!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:none!important;
    max-height:min(360px,calc(100dvh - 190px))!important;
    margin:0!important;
    padding:6px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }
  .global-sidebar .sidebar-search .autocomplete-box a{
    display:block!important;
    position:relative!important;
    min-height:0!important;
    margin:0!important;
    padding:12px!important;
  }
  .global-sidebar .sidebar-search .autocomplete-box a>span{
    display:block!important;
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin:0 0 4px!important;
    padding:0!important;
    transform:none!important;
    color:#8a674d!important;
    font:800 9px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
  }
  .global-sidebar .sidebar-search .autocomplete-box a>b{
    display:block!important;
    margin:0!important;
    font-size:15px!important;
    line-height:1.35!important;
    overflow-wrap:anywhere;
  }
  .global-sidebar .sidebar-search .autocomplete-box a>small{display:none!important}
}

@media(max-width:420px){
  .global-sidebar .sidebar-search .autocomplete-box{
    max-height:min(330px,calc(100dvh - 180px))!important;
  }
}

/* v46 — task-based routes and useful outcomes for section cards. */
.section-outcome{
  display:grid;
  grid-template-columns:minmax(210px,.72fr) minmax(0,1.65fr);
  gap:28px;
  align-items:start;
  margin-top:24px;
  margin-bottom:24px;
  padding:24px 26px;
  border:1px solid #d9d0c2;
  border-left:5px solid #b58a62;
  border-radius:14px;
  background:#f7f2e9;
}
.section-outcome>div>span{
  display:block;
  margin-bottom:6px;
  color:#8a674d;
  font-size:11px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.section-outcome h2{
  margin:0;
  color:#244c41;
  font-size:clamp(21px,2.3vw,30px);
  line-height:1.12;
}
.section-outcome ul{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:outcome;
}
.section-outcome li{
  position:relative;
  min-height:88px;
  padding:15px 14px 14px 42px;
  border:1px solid #e1d8ca;
  border-radius:10px;
  background:#fffdf8;
  color:#3f4742;
  font-size:14px;
  line-height:1.45;
  counter-increment:outcome;
}
.section-outcome li:before{
  content:counter(outcome);
  position:absolute;
  top:14px;
  left:13px;
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#254f43;
  color:#fff;
  font-size:11px;
  font-weight:800;
}
.wizard-plan{
  display:grid;
  gap:3px;
  margin-top:12px;
  padding-top:11px;
  border-top:1px solid #ded5c8;
  color:#4e5651;
  font-size:13px;
  line-height:1.4;
}
.wizard-plan strong{color:#244c41;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.about-quick-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:14px 0 30px;
}
.about-quick-grid a{
  display:flex;
  flex-direction:column;
  gap:7px;
  min-height:132px;
  padding:16px;
  border:1px solid #ddd4c7;
  border-radius:11px;
  background:#fffdf8;
  color:#35413c;
  text-decoration:none;
}
.about-quick-grid a:hover{border-color:#9f795a;transform:translateY(-1px)}
.about-quick-grid b{color:#244c41;font-size:16px;line-height:1.25}
.about-quick-grid span{font-size:13px;line-height:1.42}
.about-quick-grid em{margin-top:auto;color:#8a674d;font-size:12px;font-style:normal;font-weight:800}
@media(max-width:820px){
  .section-outcome{grid-template-columns:1fr;gap:16px;padding:20px}
  .section-outcome ul{grid-template-columns:1fr}
  .section-outcome li{min-height:0}
  .about-quick-grid{grid-template-columns:1fr}
  .about-quick-grid a{min-height:0}
}

/* v48 — one clear traffic section, fewer competing blocks */
.home-source-entry{padding:30px 0;background:#fffdf9;border-top:1px solid #ddd6ca;border-bottom:1px solid #ddd6ca}
.home-source-entry .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:center}
.home-source-entry span,.traffic-hub-title span{display:block;color:#876846;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.home-source-entry h2{margin:6px 0 5px;font-size:31px}
.home-source-entry p{max-width:720px;margin:0;color:#606863;font-size:14px;line-height:1.6}
.home-source-entry>a{display:inline-flex;align-items:center;min-height:42px;padding:0 15px;background:#28483f;border-radius:7px;color:#fff;font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}
.home-source-entry>a:hover{background:#1f3d35}

.traffic-hub-head{background:linear-gradient(135deg,#f8f2e7,#edf3f0);border-bottom:3px solid #9e7d55}
.traffic-hub-head .wrap{max-width:1050px}
.traffic-hub-head p{max-width:760px}
.traffic-hub-main{padding-top:42px;padding-bottom:22px}
.traffic-hub-title{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:22px}
.traffic-hub-title h2{margin:7px 0 0;font-size:34px}
.traffic-hub-title>a{color:#345047;font-size:13px;font-weight:800;text-underline-offset:4px}
.traffic-hub-page .playbook-card{min-height:350px}
.traffic-hub-page .playbook-card>a{margin-top:auto}
.traffic-hub-basics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:16px;padding-bottom:16px}
.traffic-hub-basics>div{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:15px 16px;background:#f5f0e7;border:1px solid #ded5c7;border-radius:8px}
.traffic-hub-basics span{display:grid;place-items:center;width:26px;height:26px;background:#315247;border-radius:50%;color:#fff;font-size:11px;font-weight:800}
.traffic-hub-basics p{margin:2px 0 0;color:#5d6560;font-size:13px;line-height:1.5}
.traffic-hub-basics b{color:#294139}
.traffic-hub-note{margin-top:4px;margin-bottom:28px;color:#777b76;font-size:12px}
.traffic-hub-page .traffic-next{padding-bottom:76px}

@media(max-width:760px){
  .home-source-entry .wrap{grid-template-columns:1fr;gap:16px}
  .home-source-entry>a{justify-self:start}
  .traffic-hub-title{align-items:flex-start;flex-direction:column;gap:10px}
  .traffic-hub-basics{grid-template-columns:1fr}
  .traffic-hub-page .playbook-card{min-height:auto}
}

/* v49 — notes in the sidebar and concrete source playbooks */
.notes-page{padding-top:38px;padding-bottom:80px}
.notes-page>.saved-block,.notes-page>.notes-composer{margin-bottom:48px}
.notes-composer{padding:24px;border:1px solid #d9d0c2;border-top:4px solid #315247;border-radius:11px;background:#fffdf9}
.notes-composer .saved-block-head{margin-bottom:18px}
.notes-composer form{display:grid;gap:14px}
.notes-composer label{display:grid;gap:7px;color:#3f4c46;font-size:12px;font-weight:800;letter-spacing:.03em}
.notes-composer .notes-field{display:grid;gap:7px}
.notes-composer input,.notes-composer textarea{width:100%;padding:12px 13px;border:1px solid #cfc7ba;border-radius:7px;background:#fff;color:#26332d;font:400 15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.notes-composer textarea{min-height:126px;resize:vertical}
.notes-composer input:focus,.notes-composer textarea:focus{outline:3px solid rgba(64,109,94,.18);border-color:#406d5e}
.notes-form-bottom{display:flex;justify-content:space-between;gap:18px;align-items:center}
.notes-form-bottom small{color:#737a75;font-size:12px;line-height:1.45}
.button-primary{display:inline-flex;justify-content:center;align-items:center;min-height:42px;padding:0 17px;border:0;border-radius:7px;background:#28483f;color:#fff;font-weight:800;cursor:pointer;white-space:nowrap}
.button-primary:hover{background:#1f3d35}
.notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}
.note-card{position:relative;padding:18px 48px 18px 18px;border:1px solid #ddd5c8;border-radius:9px;background:#fffdf9}
.note-card span{display:block;margin-bottom:6px;color:#8b7455;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.note-card h3{margin:0 0 8px;color:#173b32;font:500 20px/1.3 Georgia,"Times New Roman",serif}
.note-card p{margin:0;color:#545d58;font-size:14px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}
.note-card small{display:block;margin-top:12px;color:#858985;font-size:11px}
.note-card a{color:#754e39;font-weight:700}
.note-card-remove{position:absolute;right:12px;top:12px;width:28px;height:28px;border:0;border-radius:5px;background:#f1ece3;color:#746f68;cursor:pointer}
.playbook-format-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.playbook-format-grid article{padding:18px;border:1px solid #ddd4c6;border-radius:9px;background:#fffdf9}
.playbook-format-grid span{display:block;color:#8a674d;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.playbook-format-grid h3{margin:8px 0;color:#244c41;font-size:18px;line-height:1.28}
.playbook-format-grid p{margin:0;color:#555f59;font-size:14px;line-height:1.55}
.playbook-format-grid small{display:block;margin-top:13px;padding-top:12px;border-top:1px solid #e2dbcf;color:#76543e;font-size:12px;line-height:1.45}
.traffic-partner-step{margin-top:14px;margin-bottom:30px}
.source-partner-step{margin-top:32px}
@media(max-width:760px){
  .notes-grid,.playbook-format-grid{grid-template-columns:1fr}
  .notes-composer{padding:19px 16px}
  .notes-form-bottom{align-items:flex-start;flex-direction:column}
  .button-primary{width:100%}
}

/* v50 — final navigation, test journal and field notes */
.home-intro .intro-grid{display:block!important;max-width:1030px!important}
.home-intro{padding:68px 0 62px}
.home-intro h1{max-width:900px;font-size:clamp(42px,5vw,68px)}
.home-intro p{max-width:850px}
.home-intro .catalog-search{max-width:780px}
.home-sources,.home-workflow{padding:58px 0;border-bottom:1px solid #ddd5c8}
.home-sources{background:#fffdf9}
.home-workflow{background:#f6f1e8}
.home-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:50px;align-items:end;margin-bottom:24px}
.home-section-head span,.home-source-grid>a>span,.home-reference span{display:block;color:#876846;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.home-section-head h2{margin:7px 0 0;font-size:36px}
.home-section-head>p{margin:0;color:#626a65;font-size:14px;line-height:1.6}
.home-source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.home-source-grid>a{display:flex;flex-direction:column;min-height:205px;padding:19px 18px;border:1px solid #ddd4c6;border-top:3px solid #9b7851;border-radius:9px;background:#fffdf9;text-decoration:none;transition:transform .14s ease,box-shadow .14s ease}
.home-source-grid>a:nth-child(2){border-top-color:#6f8990}
.home-source-grid>a:nth-child(3){border-top-color:#6d866f}
.home-source-grid>a:nth-child(4){border-top-color:#966e64}
.home-source-grid>a:nth-child(5){border-top-color:#7a8460}
.home-source-grid>a:nth-child(6){border-top-color:#8b6e83}
.home-source-grid>a:nth-child(7){border-top-color:#657f8b}
.home-source-grid>a:nth-child(8){border-top-color:#8a6262}
.home-source-grid>a:hover{transform:translateY(-2px);box-shadow:0 11px 25px rgba(38,45,40,.06)}
.home-source-grid b{display:block;margin:9px 0 7px;color:#24473d;font:600 24px/1.2 Georgia,"Times New Roman",serif}
.home-source-grid p{margin:0;color:#5d6661;font-size:13.5px;line-height:1.55}
.home-source-grid small{display:block;margin-top:auto;padding-top:15px;color:#704f36;font-size:12px;font-weight:800}
.home-sources-all{margin:17px 0 0;text-align:right}
.home-sources-all a{color:#294b41;font-size:13px;font-weight:800;text-underline-offset:4px}
.home-workflow-steps{margin:0;padding:0;list-style:none;border-top:2px solid #315247}
.home-workflow-steps li{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:18px;align-items:center;padding:19px 4px;border-bottom:1px solid #d8d0c3}
.home-workflow-steps li>span{color:#8b6849;font:800 11px/1 "Courier New",monospace;letter-spacing:.08em}
.home-workflow-steps b{color:#26483e;font:600 19px/1.3 Georgia,"Times New Roman",serif}
.home-workflow-steps p{margin:4px 0 0;color:#626a65;font-size:13px;line-height:1.5}
.home-workflow-steps a{color:#6d5039;font-size:12.5px;font-weight:800;text-underline-offset:3px;white-space:nowrap}
.home-reference{padding:34px 0 70px;background:#fffdf9}
.home-reference .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.home-reference .wrap>div{padding:18px;border:1px solid #ded5c8;border-radius:8px;background:#f9f5ed}
.home-reference b{display:block;margin:7px 0 5px;color:#29473f;font:600 18px/1.3 Georgia,"Times New Roman",serif}
.home-reference p{margin:0 0 10px;color:#626963;font-size:12.5px;line-height:1.5}
.home-reference a{color:#735039;font-size:12px;font-weight:800;text-underline-offset:3px}
.note-template-button{display:inline-flex;align-items:center;min-height:34px;padding:0 10px;border:1px solid #cfc3b1;border-radius:6px;background:#f7f1e8;color:#5b4b3e;font-size:11.5px;font-weight:800;cursor:pointer}
.note-template-button:hover{background:#efe6d8}
.notes-label-row{display:flex;justify-content:space-between;gap:14px;align-items:center}
.notes-label-row>label{display:block}
.field-case{margin:35px 0;padding:22px;border:1px solid #d7cbb8;border-top:4px solid #7f5b49;border-radius:9px;background:#fbf7ef}
.field-case>span{display:block;color:#8a6648;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.field-case h2{margin:8px 0 10px!important;font-size:26px!important}
.field-case>p{margin:0 0 17px!important;color:#59615c!important;font-size:14px!important;line-height:1.6!important}
.field-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.field-case-grid>div{padding:15px;background:#fffdf9;border:1px solid #e0d8cc;border-radius:7px}
.field-case-grid+.field-case-grid{margin-top:12px}
.field-case-grid+.field-case-grid>div{grid-column:1/-1}
.field-case-grid b{display:block;color:#29483e;font-size:13px}
.field-case-grid ul{margin:8px 0 0;padding-left:18px}
.field-case-grid li{margin:6px 0;color:#5e6661;font-size:13px;line-height:1.5}
.field-case-note{display:block;margin-top:14px;color:#787a75;font-size:11.5px;line-height:1.45}

@media(max-width:900px){
  .home-source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-reference .wrap{grid-template-columns:1fr}
}
@media(max-width:700px){
  .home-intro{padding:40px 0 44px}
  .home-section-head{grid-template-columns:1fr;gap:9px;align-items:start}
  .home-sources,.home-workflow{padding:42px 0}
  .home-source-grid{grid-template-columns:1fr}
  .home-source-grid>a{min-height:0}
  .home-source-grid small{margin-top:13px;padding-top:0}
  .home-sources-all{text-align:left}
  .home-workflow-steps li{grid-template-columns:34px minmax(0,1fr);gap:12px;padding:17px 0}
  .home-workflow-steps a{grid-column:2;white-space:normal}
  .home-reference{padding-bottom:52px}
  .field-case-grid{grid-template-columns:1fr}
}

/* v51: simpler navigation and a welcoming home page */
:root{--sidebar-width:268px}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.global-sidebar{width:var(--sidebar-width)!important;padding:21px 16px 18px!important;background:#fbfaf6!important;border-right:1px solid #d9d4ca!important;box-shadow:3px 0 18px rgba(30,41,36,.025)!important}
.global-sidebar:after{display:none!important}
.sidebar-search{position:relative!important;display:block!important;height:auto!important;margin:0 0 21px!important;border:0!important;overflow:visible!important}
.sidebar-search input{display:block!important;width:100%!important;height:42px!important;padding:0 13px!important;border:1px solid #cec8bd!important;border-radius:7px!important;background:#fff!important;color:#26342f!important;font-size:13px!important;outline:0!important}
.sidebar-search input:focus{border-color:#42675b!important;box-shadow:0 0 0 3px rgba(49,84,73,.09)!important}
.sidebar-search input::placeholder{color:#858982!important}
.sidebar-search .autocomplete-box{top:47px!important;left:0!important;right:0!important;width:auto!important}
.sidebar-rule,.sidebar-mode,.sidebar-secondary,.sidebar-foot{display:none!important}
.sidebar-group{margin:0 0 19px}
.sidebar-group-title{margin:0 9px 7px;color:#8a8479;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.sidebar-menu{display:flex!important;flex-direction:column!important;gap:2px!important;white-space:normal!important}
.sidebar-menu a{position:relative!important;display:flex!important;grid-template-columns:none!important;align-items:center!important;min-height:38px!important;padding:7px 10px!important;border:0!important;border-radius:6px!important;background:transparent!important;color:#414b46!important;font-size:13.5px!important;font-weight:500!important;text-decoration:none!important;box-shadow:none!important}
.sidebar-menu a:before,.sidebar-menu a:after{display:none!important}
.sidebar-menu a:hover{background:#f0eee8!important;color:#173f34!important}
.sidebar-menu a.active{background:#e8ede8!important;color:#173f34!important;font-weight:700!important;box-shadow:inset 3px 0 0 #315447!important}
.nav-icon{display:none!important}
.sidebar-bottom{margin-top:auto;padding:16px 9px 3px;border-top:1px solid #ded9cf}
.sidebar-bottom a{display:block;color:#3e554d;font-size:12.5px;font-weight:700;text-decoration:none}
.sidebar-bottom a:hover,.sidebar-bottom a.active{text-decoration:underline;text-underline-offset:3px}
.sidebar-bottom small{display:block;margin-top:6px;color:#929087;font-size:10.5px}
.global-sidebar{display:flex!important;flex-direction:column!important}
main,.site-footer{margin-left:var(--sidebar-width)!important}
.footer-bottom{display:flex!important;justify-content:space-between!important;gap:20px!important}

.home-page{background:#f8f4eb}
.home-welcome{padding:72px 0 66px;background:linear-gradient(135deg,#f4eee2 0%,#fbf8f1 58%,#edf1ec 100%);border-bottom:1px solid #d9d2c7}
.home-welcome-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(340px,.74fr);gap:64px;align-items:center}
.home-kicker,.home-section-title>p,.home-section-title>div>p,.home-results-inner>div>p,.home-search-label{margin:0 0 10px;color:#8a6747;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.home-welcome h1{max-width:730px;margin:0;color:#17372f;font-size:clamp(46px,5.4vw,72px);line-height:1.01;letter-spacing:-.035em}
.home-lead{max-width:720px;margin:23px 0 0;color:#4f5a55;font-size:18px;line-height:1.72}
.home-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:29px}
.home-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:0 18px;border:1px solid #315447;border-radius:7px;color:#24483e;font-size:13.5px;font-weight:750;text-decoration:none}
.home-actions a:hover{background:#e8eee9}
.home-actions .home-action-primary{background:#244b40;color:#fff;border-color:#244b40}
.home-actions .home-action-primary:hover{background:#173b32}
.home-actions .home-action-partner{border-color:#a77a49;background:#f2e5d1;color:#65421f}
.home-actions .home-action-partner:hover{background:#ead7b9}
.home-access-note{margin:15px 0 0;color:#777d78;font-size:12px}
.home-search-card{padding:27px 25px 24px;background:#fffdf9;border:1px solid #d4ccbf;border-radius:12px;box-shadow:0 18px 42px rgba(38,46,41,.08)}
.home-search-card h2{margin:0 0 8px;font-size:31px;color:#24463d}
.home-search-card>p:not(.home-search-label){margin:0;color:#656d68;font-size:14px;line-height:1.55}
.home-main-search{margin-top:20px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.home-main-search>div{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;border:1px solid #c9c2b7!important;border-radius:7px!important;overflow:hidden!important;background:#fff!important}
.home-main-search input{height:48px!important;padding:0 13px!important;border:0!important;background:#fff!important;font-size:13px!important;outline:0!important}
.home-main-search button{height:48px!important;padding:0 17px!important;border:0!important;border-left:1px solid #c9c2b7!important;background:#765b42!important;color:#fff!important;font-size:12px!important;font-weight:800!important;cursor:pointer!important}
.home-search-links{display:flex;flex-wrap:wrap;gap:7px 13px;margin-top:14px}
.home-search-links a{color:#52625c;font-size:11.5px;text-underline-offset:3px}
.home-entry-section{padding:58px 0 62px;background:#fffdf9;border-bottom:1px solid #ddd6ca}
.home-section-title{margin-bottom:23px}
.home-section-title h2{margin:0;color:#24463d;font-size:38px;letter-spacing:-.02em}
.home-entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.home-entry-grid>a{display:flex;flex-direction:column;min-height:205px;padding:22px 21px;background:#fbf8f1;border:1px solid #dad2c6;border-radius:9px;text-decoration:none;transition:background .14s ease,border-color .14s ease}
.home-entry-grid>a:hover{background:#f4efe6;border-color:#cbbda9}
.home-entry-grid b{color:#23483e;font:600 22px/1.25 Georgia,"Times New Roman",serif}
.home-entry-grid p{margin:10px 0;color:#606963;font-size:13.5px;line-height:1.6}
.home-entry-grid span{margin-top:auto;padding-top:18px;color:#725239;font-size:12px;font-weight:800}
.home-sources-v51{padding:61px 0 64px!important;background:#f5f0e7!important}
.home-section-title-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:50px;align-items:end}
.home-section-title-split>span{color:#606963;font-size:14px;line-height:1.6}
.home-sources-v51 .home-source-grid>a{background:#fffdf9}
.home-results{padding:45px 0 62px;background:#fffdf9}
.home-results-inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:50px;align-items:center;padding:28px 30px;background:#24483e;border-radius:11px;color:#fff}
.home-results-inner h2{margin:0 0 9px;color:#fff;font-size:31px}
.home-results-inner>div>p{color:#d6b58f}
.home-results-inner>div>span{color:#dbe5e1;font-size:13.5px;line-height:1.55}
.home-results nav{display:grid;grid-template-columns:1fr;gap:7px}
.home-results nav a{display:block;padding:10px 12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:6px;color:#fff;font-size:12.5px;font-weight:700;text-decoration:none}
.home-results nav a:hover{background:rgba(255,255,255,.12)}

@media(max-width:1050px){
  :root{--sidebar-width:0px}
  .global-sidebar{position:fixed!important;top:var(--header-height)!important;left:0!important;bottom:0!important;width:min(320px,calc(100vw - 34px))!important;height:auto!important;padding:20px 16px 24px!important;overflow-y:auto!important;overflow-x:hidden!important;transform:translateX(-105%)!important;transition:transform .2s ease!important;z-index:90!important}
  body.mobile-nav-open .global-sidebar{transform:translateX(0)!important}
  .global-sidebar .sidebar-search{display:block!important;margin-bottom:20px!important}
  .global-sidebar .sidebar-menu{display:flex!important;flex-direction:column!important}
  .global-sidebar .sidebar-menu a{display:flex!important;min-height:39px!important;padding:7px 10px!important}
  .sidebar-bottom{display:block!important;margin-top:4px!important}
  main,.site-footer{margin-left:0!important}
}

@media(max-width:820px){
  .home-welcome{padding:48px 0 50px}
  .home-welcome-grid,.home-section-title-split,.home-results-inner{grid-template-columns:1fr;gap:30px}
  .home-entry-grid{grid-template-columns:1fr}
  .home-entry-grid>a{min-height:0}
  .home-entry-grid span{margin-top:10px;padding-top:0}
  .home-results-inner{padding:25px 22px}
}

@media(max-width:560px){
  .home-welcome h1{font-size:43px}
  .home-lead{font-size:16px;line-height:1.65}
  .home-actions{display:grid;grid-template-columns:1fr}
  .home-search-card{padding:22px 17px 20px}
  .home-main-search>div{grid-template-columns:1fr!important}
  .home-main-search button{border-left:0!important;border-top:1px solid #c9c2b7!important}
  .home-entry-section,.home-sources-v51{padding:43px 0 46px!important}
  .home-section-title h2{font-size:32px}
  .footer-bottom{flex-direction:column!important;gap:5px!important}
}

/* v53: priority navigation, clearer welcome and one working journal */
:root{--sidebar-width:282px}
.global-sidebar{padding:16px 14px 15px!important}
.sidebar-search{margin-bottom:13px!important}
.sidebar-search input{height:40px!important}
.sidebar-mode-compact{margin-bottom:14px;padding:10px;background:#f2efe7;border:1px solid #ddd7cb;border-radius:8px}
.sidebar-mode-compact>span{display:block;margin-bottom:7px;color:#77766f;font-size:9.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.sidebar-mode-compact>div{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.sidebar-mode-compact button{min-height:31px;padding:4px 6px;border:1px solid #d0c8bb;border-radius:5px;background:#fffdf9;color:#59625e;font-size:11px;font-weight:700;cursor:pointer}
.sidebar-mode-compact button:hover{border-color:#8ba095;color:#21493e}
.sidebar-mode-compact button[aria-pressed="true"]{border-color:#315447;background:#315447;color:#fff}
.sidebar-group{margin-bottom:12px}
.sidebar-group-title{margin-bottom:5px;font-size:9.5px}
.sidebar-menu a{min-height:32px!important;padding:5px 10px!important;font-size:13px!important}
.sidebar-group-priority{padding-bottom:11px;border-bottom:1px solid #e2ddd3}
.sidebar-group-priority .sidebar-menu a{min-height:35px!important;font-size:13.5px!important}
.sidebar-group-priority .sidebar-menu a.active{background:#e3ebe6!important}
.sidebar-partner-cta{display:block;margin:10px 12px 13px;padding:13px 14px;border:1px solid #c7b291;border-radius:8px;background:#f4ead8;color:#25473e!important;text-decoration:none!important}
.sidebar-partner-cta span,.sidebar-partner-cta small{display:block;color:#756552;font-size:10px;line-height:1.35}
.sidebar-partner-cta span{margin-bottom:3px;text-transform:uppercase;letter-spacing:.06em}
.sidebar-partner-cta b{display:block;margin-bottom:3px;font-size:13.5px;line-height:1.3}
.sidebar-partner-cta:hover{border-color:#9d7d58;background:#efe0c7}
.sidebar-group-reference{margin-bottom:5px}
.sidebar-group-reference .sidebar-menu a{color:#66706b!important;font-size:12.5px!important}
.sidebar-bottom{padding-top:11px!important}

.home-welcome{padding:66px 0 62px}
.home-welcome-grid{grid-template-columns:minmax(0,1.15fr) minmax(330px,.65fr);gap:55px}
.home-lead{max-width:780px;font-size:17px;line-height:1.72}
.home-welcome-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:25px}
.home-welcome-summary>div{padding:13px 13px 14px;border-top:2px solid #92714e;background:rgba(255,253,249,.64)}
.home-welcome-summary>div:nth-child(2){border-top-color:#4f7467}
.home-welcome-summary>div:nth-child(3){border-top-color:#7b5f58}
.home-welcome-summary b{display:block;margin-bottom:4px;color:#24483e;font-size:12px}
.home-welcome-summary span{display:block;color:#626a65;font-size:11.5px;line-height:1.48}
.home-actions{margin-top:24px}
.home-search-card{border-top:4px solid #315447}

.journal-head .narrow{max-width:980px}
.journal-explainer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:22px}
.journal-explainer>div{padding:17px 18px;background:#f7f2e9;border:1px solid #ddd4c6;border-radius:8px}
.journal-explainer b{display:block;color:#244a40;font-size:13px}
.journal-explainer p{margin:5px 0 0;color:#606964;font-size:12.5px;line-height:1.5}
.journal-tests{margin-top:44px}
.journal-reading{margin-top:62px;padding-top:31px;border-top:2px solid #315447}
.journal-reading-head{max-width:720px;margin-bottom:20px}
.journal-reading-head>span{display:block;color:#8a674d;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.journal-reading-head h2{margin:6px 0 8px;font-size:31px}
.journal-reading-head p{margin:0;color:#626a65;font-size:13.5px;line-height:1.55}
.journal-reading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.journal-reading-grid>.saved-block{margin:0;padding:20px;background:#f8f5ee;border:1px solid #ddd5c8;border-radius:9px}
.journal-reading-grid .saved-block-head h3{margin:4px 0 0;font-size:22px}
.journal-reading-grid .saved-grid{grid-template-columns:1fr}
.redirect-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f5f0e7}
.redirect-page>div{max-width:560px;padding:28px;background:#fffdf9;border:1px solid #d8d0c3;border-top:4px solid #315447;border-radius:10px}
.redirect-page b{color:#24483e;font:600 28px/1.2 Georgia,"Times New Roman",serif}
.redirect-page p{color:#5d6661}
.redirect-page a{color:#704f36;font-weight:800}

@media(max-width:1050px){
  :root{--sidebar-width:0px}
  .global-sidebar{padding:16px 14px 22px!important}
  .global-sidebar .sidebar-search{margin-bottom:13px!important}
  .global-sidebar .sidebar-menu a{min-height:36px!important}
  .sidebar-mode-compact{display:block!important}
  .sidebar-bottom{margin-top:8px!important}
}
@media(max-width:820px){
  .home-welcome-summary,.journal-explainer,.journal-reading-grid{grid-template-columns:1fr}
  .home-welcome-summary{gap:7px}
  .home-welcome-summary>div{padding:12px 13px}
  .journal-reading{margin-top:48px}
}
@media(max-width:560px){
  .home-welcome{padding:43px 0 47px}
  .home-welcome h1{font-size:41px}
  .home-lead{font-size:15.5px}
  .home-welcome-summary{margin-top:20px}
  .notes-page{padding-top:26px}
  .journal-explainer>div{padding:15px}
  .journal-reading-grid>.saved-block{padding:16px}
}

/* v54: useful audience modes, optional terminology hints and source setup */
.sidebar-mode-options{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:5px}
.sidebar-mode-compact>small{display:block;margin:8px 1px 9px;color:#6d746f;font-size:10.5px;line-height:1.35}
.sidebar-hints-toggle{display:flex!important;align-items:center;justify-content:space-between;width:100%;min-height:34px!important;padding:6px 8px!important;border-color:#d8d1c5!important;background:#fbf9f4!important;text-align:left}
.sidebar-hints-toggle span{font-size:10.5px;font-weight:650}
.sidebar-hints-toggle b{color:#315447;font-size:10px}
.sidebar-hints-toggle[aria-pressed="false"]{background:#ebe8e1!important;color:#777b77!important}
.sidebar-hints-toggle[aria-pressed="false"] b{color:#777b77}

.hints-off .term-help,.hints-off .term-help:disabled{padding:0!important;border:0!important;background:transparent!important;color:inherit!important;font:inherit!important;text-decoration:none!important;cursor:text!important;opacity:1!important;box-shadow:none!important}
.hints-off .term-help:after,.hints-off .beginner-term-note{display:none!important}
.hints-off .term-tooltip{display:none!important}

.source-mode-panel{margin:28px 0 35px}
.source-mode-panel article{display:none;padding:19px 21px;border:1px solid #d7d0c4;border-left:4px solid #315447;border-radius:8px;background:#f8f5ed}
.mode-beginner .source-mode-panel [data-mode-only="beginner"],.mode-pro .source-mode-panel [data-mode-only="pro"]{display:block}
.mode-pro .source-mode-panel article{border-left-color:#6f858a;background:#f2f5f4}
.source-mode-panel span,.section-heading-with-note span{display:block;margin-bottom:5px;color:#836647;font-size:9.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.mode-pro .source-mode-panel span{color:#61777d}
.source-mode-panel h2{margin:0 0 6px!important;color:#24483e;font-size:22px!important}
.source-mode-panel p{margin:0 0 11px!important;color:#5f6863;font-size:13px!important;line-height:1.55!important}
.source-mode-panel a{color:#704f36;font-size:12px;font-weight:800;text-underline-offset:3px}

.platform-setup-section{padding:30px 0 34px!important;border-top:2px solid #315447!important;border-bottom:1px solid #ded7ca!important}
.section-heading-with-note{display:grid;grid-template-columns:minmax(0,.78fr) minmax(280px,.62fr);gap:38px;align-items:end;margin-bottom:20px}
.section-heading-with-note h2{margin:0!important;font-size:31px!important}
.section-heading-with-note>p{margin:0!important;color:#646d68;font-size:13px!important;line-height:1.55!important}
.platform-setup{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0!important;padding:0!important;list-style:none!important;counter-reset:none!important}
.platform-setup li{display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;gap:12px!important;margin:0!important;padding:17px 18px!important;border:1px solid #ded7cb!important;border-radius:8px!important;background:#fffdf9!important}
.platform-setup li:before{display:none!important}
.platform-setup li>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e8eee9;color:#315447;font-size:11px;font-weight:800}
.platform-setup h3{margin:2px 0 6px!important;color:#294a40;font-size:16px!important;line-height:1.3!important}
.platform-setup p{margin:0 0 9px!important;color:#5f6762;font-size:12.5px!important;line-height:1.55!important}
.platform-setup a{color:#75563d;font-size:10.5px;font-weight:750;text-underline-offset:3px}

@media(max-width:820px){
  .section-heading-with-note,.platform-setup{grid-template-columns:1fr}
  .section-heading-with-note{gap:9px}
  .platform-setup li{padding:15px!important}
}
@media(max-width:560px){
  .source-mode-panel{margin:23px 0 29px}
  .source-mode-panel article{padding:16px}
  .platform-setup-section{padding:26px 0 29px!important}
  .section-heading-with-note h2{font-size:27px!important}
}

/* v55: quieter articles, shorter mode label and readable hint switch */
.sidebar-mode-options{grid-template-columns:1fr 1fr}
.sidebar-hints-toggle,.sidebar-hints-toggle[aria-pressed="false"]{color:#3f4c47!important;opacity:1!important}
.sidebar-hints-toggle span,.sidebar-hints-toggle[aria-pressed="false"] span{color:#3f4c47!important;opacity:1!important}
.sidebar-hints-toggle b{color:#315447!important;opacity:1!important}
.sidebar-hints-toggle[aria-pressed="false"] b{color:#705944!important}

.global-mode-guidance{padding:10px 0!important;background:transparent!important;border:0!important;border-bottom:1px solid #ded7cb!important;border-radius:0!important}
.article-aside .aside-block+.aside-block{display:none}
.related-primary{padding:0 0 0 15px;background:transparent;border:0;border-left:3px solid #7b9089;border-radius:0;box-shadow:none}
.related-primary:hover{background:transparent}

.source-mode-panel{margin:23px 0 31px;padding:10px 0;border-top:1px solid #ded7cb;border-bottom:1px solid #ded7cb}
.source-mode-panel p{display:none!important;margin:0!important;color:#56605b!important;font-size:13px!important;line-height:1.6!important}
.mode-beginner .source-mode-panel [data-mode-only="beginner"],.mode-pro .source-mode-panel [data-mode-only="pro"]{display:block!important}
.source-mode-panel b{color:#294a40}
.source-mode-panel a{margin-left:4px;color:#704f36;font-size:12.5px;font-weight:750;text-underline-offset:3px}

.source-playbook-article>section{margin:38px 0;padding:0;background:transparent;border:0;border-radius:0}
.source-playbook-article>section+section{padding-top:33px;border-top:1px solid #e1dad0}
.playbook-fit-plain h3,.playbook-measurement h3,.playbook-decision h3,.field-case-plain h3{margin:22px 0 7px;color:#345048;font-size:17px}
.playbook-fit-plain ul,.playbook-measurement ul,.playbook-decision ul,.field-case-plain ul,.playbook-tips ul{margin:7px 0 18px;padding-left:20px}
.playbook-fit-plain li,.playbook-measurement li,.playbook-decision li,.field-case-plain li,.playbook-tips li{margin:7px 0;color:#555f59;font-size:14px;line-height:1.58}

.platform-setup-section{padding:33px 0!important;border-top:1px solid #e1dad0!important;border-bottom:0!important}
.platform-setup-section>p{margin-bottom:19px!important}
.platform-setup{display:block;margin:0!important;padding:0!important;list-style:none!important}
.platform-setup li{display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;gap:12px!important;margin:0!important;padding:17px 0!important;background:transparent!important;border:0!important;border-top:1px solid #e5ded3!important;border-radius:0!important}
.platform-setup li:last-child{border-bottom:1px solid #e5ded3!important}
.platform-setup li>span{width:28px;height:28px;background:#e8eee9;color:#315447;font-size:11px}
.platform-setup h3{font-size:17px!important}
.platform-setup p{font-size:13.5px!important}
.platform-setup a{font-size:12px}

.playbook-format-list{margin:18px 0 0}
.playbook-format-list>div{padding:17px 0;border-top:1px solid #e3dcd1}
.playbook-format-list>div:last-child{border-bottom:1px solid #e3dcd1}
.playbook-format-list dt{color:#294a40;font:600 18px/1.35 Georgia,"Times New Roman",serif}
.playbook-format-list dt span{display:block;margin-bottom:3px;color:#86694e;font:800 9.5px/1.3 Inter,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.playbook-format-list dd{margin:6px 0 0;color:#59615d;font-size:14px;line-height:1.58}
.playbook-format-list small{display:block;margin-top:6px;color:#76543e;font-size:12px}

.field-case.field-case-plain{padding-top:33px;background:transparent;border:0;border-top:1px solid #e1dad0;border-radius:0}
.field-case-plain>p{margin-bottom:17px!important}
.field-case-note{padding-top:9px;border-top:1px solid #e3dcd1}
.playbook-decision{color:inherit!important}
.playbook-decision h2{color:#24483e!important}
.playbook-tips{border:0!important;border-top:1px solid #e1dad0!important}
.playbook-official>ul{margin:10px 0 0;padding-left:20px}
.playbook-official li{margin:7px 0}
.playbook-official a{display:inline;padding:0;background:transparent;border:0;border-radius:0;font-size:13px;text-decoration:underline;text-underline-offset:3px}
.source-partner-line{margin:35px 0;padding:15px 0;border-top:1px solid #d8d0c3;border-bottom:1px solid #d8d0c3;color:#59615d!important;font-size:13.5px!important;line-height:1.6!important}
.source-partner-line a{color:#704f36;font-weight:750;text-underline-offset:3px}
.source-partner-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin:20px 0 34px;padding:18px 20px;border:1px solid #cdbb9e;border-left:4px solid #9b744f;border-radius:8px;background:#faf4e8}
.source-partner-cta span{display:block;margin-bottom:4px;color:#876544;font:700 10px/1.25 "Courier New",monospace;letter-spacing:.07em;text-transform:uppercase}
.source-partner-cta b{display:block;color:#263d36;font-size:17px;line-height:1.35}
.source-partner-cta p{margin:5px 0 0!important;max-width:650px;color:#5b625e!important;font-size:13.5px!important;line-height:1.55!important}
.source-partner-cta>a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 15px;border-radius:6px;background:#1e5245;color:#fff!important;font-size:13px;font-weight:750;text-align:center;text-decoration:none!important}
.source-partner-cta>a:hover{background:#163f35}
@media(max-width:720px){.source-partner-cta{grid-template-columns:1fr;padding:16px}.source-partner-cta>a{width:100%}}

@media(max-width:560px){
  .source-playbook-article>section{margin:31px 0}
  .source-playbook-article>section+section,.platform-setup-section{padding-top:27px!important}
  .platform-setup li{grid-template-columns:28px minmax(0,1fr)!important;padding:15px 0!important}
}

/* v58: final mobile contract for the GitHub Pages build. */
@media(max-width:760px){
  :root{--sidebar-width:0px;--header-height:68px}

  html{width:100%;max-width:100%;overflow-x:hidden}
  body{width:100%;max-width:100%;overflow-x:clip}
  body.mobile-nav-open{overflow:hidden}

  .site-header{
    position:sticky!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:68px!important;
    z-index:100!important;
  }
  .site-header .header-inner{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:68px!important;
    padding-left:max(14px,env(safe-area-inset-left))!important;
    padding-right:max(14px,env(safe-area-inset-right))!important;
  }
  .brand{flex:1 1 auto;min-width:0;gap:10px!important}
  .brand-mark{flex:0 0 38px;width:38px!important;height:38px!important}
  .brand-text{min-width:0}
  .brand-text b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:20px!important}
  .brand-text small{display:none!important}
  .header-context{display:none!important}
  .mobile-nav-toggle{
    display:flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:92px!important;
    height:42px!important;
    margin-left:10px!important;
    padding:0 12px!important;
    font-size:13px!important;
  }

  .global-sidebar{
    position:fixed!important;
    top:68px!important;
    left:0!important;
    bottom:0!important;
    display:flex!important;
    width:min(330px,calc(100vw - 24px))!important;
    max-width:calc(100vw - 24px)!important;
    height:auto!important;
    max-height:calc(100dvh - 68px)!important;
    padding:15px 14px max(24px,env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    transform:translateX(-105%)!important;
    visibility:hidden;
    pointer-events:none;
    z-index:120!important;
  }
  body.mobile-nav-open .global-sidebar{
    transform:translateX(0)!important;
    visibility:visible;
    pointer-events:auto;
  }
  .mobile-nav-overlay{
    position:fixed!important;
    inset:68px 0 0!important;
    z-index:110!important;
  }

  main,.site-footer{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
  }
  .wrap,main .wrap,.site-footer .wrap{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  main *,main *::before,main *::after,.site-footer *{box-sizing:border-box;min-width:0}

  .home-welcome-grid,.home-entry-grid,.home-section-title-split,.home-source-grid,
  .home-results-inner,.home-welcome-summary,.article-layout,.help-situations,
  .source-wizard-card,.wizard-results-grid,.tools-grid,.tool-form-grid,.compare-grid,
  .journal-explainer,.journal-reading-grid,.notes-grid,.playbook-format-grid,
  .playbook-fit-grid,.playbook-checklist,.playbook-week,.playbook-columns,
  .playbook-decision>div,.traffic-hub-basics,.platform-setup,.section-heading-with-note{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .home-welcome,.home-entry-section,.home-sources-v51,.home-results,
  .page-head,.article-layout,.source-playbook-page,.notes-page,.tool-suite{
    width:100%!important;
    max-width:100%!important;
  }
  .home-welcome{padding:40px 0 44px!important}
  .home-welcome-grid{gap:28px!important}
  .home-welcome h1,.page-head h1,.article h1{
    max-width:100%!important;
    font-size:clamp(32px,10vw,42px)!important;
    line-height:1.08!important;
    overflow-wrap:anywhere;
  }
  .home-lead,.article .lead{font-size:16px!important;line-height:1.62!important}
  .home-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .home-actions a{width:100%!important;min-height:46px!important}
  .home-search-card{position:relative!important;width:100%!important;padding:20px 16px!important;overflow:visible!important}
  .home-main-search,.home-main-search>div{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  .home-main-search>div{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  .home-main-search input,.sidebar-search input,.library-search input,.glossary-search input,
  .notes-composer input,.notes-composer textarea,.tool-form-grid input,.tool-form-grid select,
  .compare-side input,.compare-side select{
    width:100%!important;
    max-width:100%!important;
    font-size:16px!important;
  }
  .home-main-search button{
    width:100%!important;
    min-height:46px!important;
    border-left:0!important;
    border-top:1px solid #c9c2b7!important;
  }
  .home-main-search .autocomplete-box{
    top:49px!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:100%!important;
    max-height:min(48dvh,360px)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    z-index:180!important;
  }
  .autocomplete-box a{display:block!important;padding:12px!important}
  .autocomplete-box a>span,.autocomplete-box a>b{display:block!important;overflow-wrap:anywhere}
  .autocomplete-box a>small{display:none!important}

  .home-entry-grid>a,.home-source-grid>a,.playbook-card,.related-card{min-height:0!important}
  .home-results-inner{gap:20px!important;padding:22px 18px!important}
  .home-results nav,.home-results nav a{width:100%!important}
  .article{width:100%!important;max-width:100%!important;overflow-wrap:anywhere}
  .article pre{display:block;width:100%;max-width:100%;overflow-x:auto}
  .article table{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .article-exit-nav,.related-secondary,.notes-form-bottom{align-items:flex-start!important;flex-direction:column!important}
  .source-partner-cta{grid-template-columns:1fr!important;padding:16px!important}
  .source-partner-cta>a,.button-primary{width:100%!important}
  img,svg,video,iframe{max-width:100%;height:auto}
}

@media(max-width:390px){
  .site-header .header-inner{padding-left:11px!important;padding-right:11px!important}
  .brand-mark{flex-basis:35px;width:35px!important;height:35px!important}
  .brand-text b{font-size:18px!important}
  .mobile-nav-toggle{min-width:80px!important;padding:0 9px!important}
  .home-welcome h1,.page-head h1,.article h1{font-size:clamp(30px,9.5vw,37px)!important}
}

/* v59: one predictable menu state for every collapsed layout. */
@media(max-width:1050px){
  .mobile-nav-toggle{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    flex:0 0 auto!important;
    cursor:pointer!important;
    touch-action:manipulation;
  }
  .global-sidebar{
    display:flex!important;
    flex-direction:column!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(-105%,0,0)!important;
    transition:transform .2s ease,visibility 0s linear .2s!important;
    z-index:130!important;
  }
  body.mobile-nav-open .global-sidebar{
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
    transition:transform .2s ease,visibility 0s!important;
  }
  .mobile-nav-overlay{
    display:block!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    z-index:120!important;
    cursor:pointer!important;
    touch-action:manipulation;
    transition:opacity .2s ease,visibility 0s linear .2s!important;
  }
  body.mobile-nav-open .mobile-nav-overlay{
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    transition:opacity .2s ease,visibility 0s!important;
  }
}

/* v60: align the collapsed navigation as one vertical mobile column. */
@media(max-width:1050px){
  .global-sidebar{
    align-items:stretch!important;
    gap:0!important;
  }
  .global-sidebar>.sidebar-search,
  .global-sidebar>.sidebar-mode-compact,
  .global-sidebar>.sidebar-group,
  .global-sidebar>.sidebar-partner-cta,
  .global-sidebar>.sidebar-bottom{
    width:auto!important;
    max-width:none!important;
    flex:0 0 auto!important;
  }
  .global-sidebar .sidebar-menu{
    width:100%!important;
    align-items:stretch!important;
  }
  .global-sidebar .sidebar-menu a{
    width:100%!important;
    box-sizing:border-box!important;
    text-align:left!important;
  }
}

/* =========================================================
   v61 — hard mobile reset for library cards.
   Older desktop grid declarations accumulated above this block;
   on phones the cards must always be a simple vertical stack.
   ========================================================= */
@media (max-width:760px){
  #libraryRows{
    width:100%!important;
    min-width:0!important;
  }
  #libraryRows .library-row,
  #libraryRows .library-row:nth-child(even),
  #libraryRows .library-row:hover{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    grid-template-columns:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    gap:10px!important;
    padding:16px 14px!important;
  }
  #libraryRows .library-row > *{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  #libraryRows .library-type{
    align-self:flex-start!important;
    width:max-content!important;
    max-width:100%!important;
    min-height:34px!important;
    padding:0 13px!important;
  }
  #libraryRows .library-row h2{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 7px!important;
    font-size:clamp(20px,6.2vw,24px)!important;
    line-height:1.18!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:auto;
  }
  #libraryRows .library-row p{
    width:100%!important;
    max-width:100%!important;
    font-size:14px!important;
    line-height:1.55!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  #libraryRows .library-meta{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    width:100%!important;
    gap:6px 10px!important;
    margin-top:2px!important;
    padding:10px 0 0!important;
    border-left:0!important;
    border-top:1px solid #ebe4d8!important;
  }
  #libraryRows .library-meta span{
    display:inline-flex!important;
    width:auto!important;
    max-width:100%!important;
    margin:0!important;
    justify-content:flex-start!important;
    white-space:normal!important;
  }
}


/* v62: editorial figures inside guides */
.article-figure{margin:28px 0 34px;padding:12px;border:1px solid #ddd4c6;border-radius:12px;background:#fffdf9;box-shadow:0 8px 26px rgba(38,54,47,.045)}
.article-figure img{display:block;width:100%;height:auto;border-radius:8px;background:#f5f0e6}
.article-figure figcaption{padding:14px 6px 4px;color:#384741;font-size:14.5px;line-height:1.65}
.article-figure figcaption strong{color:#17342d;font-weight:750}
.article-figure.compact{max-width:860px}
@media(max-width:650px){.article-figure{margin:22px 0 28px;padding:7px;border-radius:10px}.article-figure img{border-radius:7px}.article-figure figcaption{font-size:14px;line-height:1.6;padding:11px 5px 4px}}

/* v63: real-source article screenshots */
.article-figure.source-shot{max-width:860px}
.article-figure.source-shot img{object-fit:contain;max-height:620px}
.article-figure.source-shot figcaption a{color:#285b4f;text-decoration:underline;text-underline-offset:2px}
@media(max-width:650px){.article-figure.source-shot img{max-height:none}}


/* v66: реальные пользовательские скриншоты */
.article-figure.user-shot{max-width:920px}
.article-figure.user-shot img{max-height:680px;object-fit:contain}
@media(max-width:650px){.article-figure.user-shot img{max-height:none}}


.article-figure.diagram-figure{background:#fbf8f0;border:1px solid rgba(43,87,75,.12)}
.article-figure.diagram-figure figcaption{color:#51635c}


/* v72 services directory */
.services-page{padding-bottom:70px}
.services-intro{padding-top:34px}
.service-notice,.service-legal{background:#fffdf8;border:1px solid var(--line);border-left:4px solid var(--forest);padding:18px 20px;border-radius:8px}
.service-notice b,.service-legal b{font-family:Georgia,serif;color:var(--forest-2);font-size:19px;font-weight:600}
.service-notice p,.service-legal p{margin:7px 0 0;color:var(--muted)}
.service-section{padding-top:52px}
.service-section-last{padding-bottom:20px}
.service-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:50px;align-items:end;margin-bottom:22px}
.service-section-head>div{display:flex;align-items:baseline;gap:14px}
.service-section-head>div>span{font:700 11px/1 "Courier New",monospace;color:var(--wine)}
.service-section-head h2{margin:0}
.service-section-head>p{margin:0;color:var(--muted);font-size:14px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.service-card{position:relative;display:flex;flex-direction:column;min-height:260px;background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--forest);border-radius:10px;padding:20px;box-shadow:0 8px 20px rgba(36,44,39,.04)}
.service-card:nth-child(2){border-top-color:var(--brass)}
.service-card:nth-child(3){border-top-color:#657f8b}
.service-card:nth-child(4){border-top-color:var(--wine)}
.service-kicker{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--wine)}
.service-card h3{margin:8px 0 8px}
.service-card p{margin:0 0 20px;color:var(--muted);font-size:13.5px;line-height:1.6}
.service-card>a{margin-top:auto;color:var(--forest);font-weight:800;font-size:13px;text-underline-offset:4px}
.service-tip,.service-warning{display:flex;gap:10px;margin-top:16px;padding:13px 15px;border:1px solid var(--line);border-radius:8px;background:#f8f4ea;font-size:13px;color:#5d625e}
.service-tip b,.service-warning b{color:var(--forest-2);flex:0 0 auto}
.service-warning{border-left:4px solid var(--wine)}
.service-legal{border-left-color:var(--wine)}
.service-use-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.service-use-grid>div{background:var(--surface);padding:18px 20px}
.service-use-grid b{display:block;color:var(--forest-2);font-family:Georgia,serif;font-size:18px;margin-bottom:5px}
.service-use-grid span{color:var(--muted);font-size:13px}
.service-inline{margin:24px 0;padding:16px 18px;border:1px solid var(--line);border-left:4px solid var(--brass);border-radius:8px;background:#fbf8ef}
.service-inline>b{display:block;color:var(--forest-2);font-family:Georgia,serif;font-size:18px;margin-bottom:6px}
.service-inline p{margin:0;color:#545b56;font-size:14px}
.service-inline p a{color:var(--wine);font-weight:700;text-underline-offset:3px}
.service-inline-more{display:inline-block;margin-top:9px;color:var(--forest);font-size:13px;font-weight:800;text-underline-offset:4px}
@media(max-width:900px){.service-section-head{grid-template-columns:1fr;gap:10px}.service-grid{grid-template-columns:1fr 1fr}.service-card{min-height:230px}.service-use-grid{grid-template-columns:1fr}}
@media(max-width:620px){.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.service-tip,.service-warning{display:block}.service-tip b,.service-warning b{display:block;margin-bottom:4px}.service-section{padding-top:38px}.services-intro{padding-top:24px}}

.service-card-primary{border-top-color:var(--forest)!important;border-color:rgba(28,91,72,.32);box-shadow:0 12px 28px rgba(27,75,61,.09)}
.service-primary-badge{position:absolute;top:14px;right:14px;padding:5px 8px;border-radius:999px;background:#e8f2ec;color:var(--forest);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(28,91,72,.16)}
.service-card-primary h3{padding-right:74px}
.service-terms-note{margin:-5px 0 18px;padding:10px 11px;border-radius:8px;background:#f6f1e7;border:1px solid rgba(146,111,48,.14);font-size:11.5px;line-height:1.45;color:#5b5449}
.service-terms-note b{color:var(--forest)}
.service-primary-strip{margin-top:14px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.service-primary-strip>span{font-size:11px;font-weight:900;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-right:2px}
.service-primary-strip a{padding:6px 9px;border-radius:999px;background:#edf4ef;border:1px solid rgba(28,91,72,.12);color:var(--forest);font-size:11.5px;font-weight:800;text-decoration:none}
.service-primary-strip a:hover{text-decoration:underline}
.service-card-primary>a{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:9px 12px;border-radius:8px;background:var(--forest);color:#fff;text-decoration:none}
.service-card-primary>a:hover{filter:brightness(.96);text-decoration:none}

.service-review-note{margin:-7px 0 18px;padding:10px 11px;border-left:3px solid rgba(28,91,72,.28);background:#f7faf8;font-size:11.5px;line-height:1.5;color:#53645e}
.service-review-note b{color:var(--forest)}


/* v79: TrafficLab branding */
.brand-mark{font-size:9.5px;letter-spacing:.045em}
@media(max-width:650px){
  .brand{gap:10px}
  .brand-text b{font-size:15px!important;line-height:1.02;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;max-width:150px}
  .brand-mark{font-size:9px!important;letter-spacing:.03em}
}
@media(max-width:370px){
  .brand-text b{font-size:14px!important;max-width:132px}
  .brand-mark{flex-basis:34px!important;width:34px!important;height:34px!important}
}


/* v80: simplified navigation, curated services and full traffic playbooks */
.single-service-grid{grid-template-columns:minmax(0,720px)!important}
.single-service-grid .service-card{min-height:0}
.source-next-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.source-next-links a{display:inline-flex;align-items:center;min-height:39px;padding:0 13px;border:1px solid #d7cec0;border-radius:7px;background:#fbf8f1;color:#294a40;font-size:12.5px;font-weight:800;text-decoration:none}
.source-next-links a:first-child{background:#294940;color:#fff;border-color:#294940}
.sidebar-group-priority .sidebar-menu a,.sidebar-group .sidebar-menu a{line-height:1.25}
@media(max-width:620px){.source-next-links{flex-direction:column}.source-next-links a{justify-content:center}.single-service-grid{grid-template-columns:1fr!important}}

/* =========================================================
   v81: compact navigation + clean services + source playbooks
   ========================================================= */
.sidebar-more{margin:2px 0 0;padding:0;border:0}
.sidebar-more>summary{display:none;list-style:none;cursor:pointer}
.sidebar-more>summary::-webkit-details-marker{display:none}
.sidebar-more>.sidebar-more-body{display:block!important}
.sidebar-more .sidebar-group{margin-top:17px}
.sidebar-more .sidebar-mode-compact{margin-top:17px}

/* Services: task-first directory, not a marketplace wall */
.services-page .page-head{padding-bottom:24px}
.services-intro{padding-top:12px!important}
.service-task-nav{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0}
.service-task-nav a{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border:1px solid #d7d0c4;border-radius:999px;background:#fffdf8;color:#355249;font-size:12px;font-weight:750;text-decoration:none}
.service-task-nav a:hover{border-color:#9caea7;background:#f2f6f3}
.service-workflow{padding-top:42px}
.service-workflow+.service-workflow{margin-top:10px;border-top:1px solid #e1dbd0}
.service-workflow-head{display:grid;grid-template-columns:42px minmax(0,760px);gap:14px;align-items:start;margin-bottom:20px}
.service-workflow-head>span{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#e9f0eb;color:#214c40;font:800 11px/1 "Courier New",monospace}
.service-workflow-head h2{margin:1px 0 5px;font-size:clamp(24px,3vw,32px)}
.service-workflow-head p{margin:0;color:#646b67;font-size:14px;line-height:1.55}
.service-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:980px}
.service-tool-grid-one{grid-template-columns:minmax(0,620px)}
.service-tool{display:flex;flex-direction:column;padding:19px 20px;border:1px solid #ddd5c9;border-radius:11px;background:#fffdf8;box-shadow:0 5px 15px rgba(38,47,42,.035)}
.service-tool h3{margin:6px 0 7px;color:#173f34;font-size:21px}
.service-tool>p{margin:0 0 14px;color:#565e59;font-size:13.5px;line-height:1.58}
.service-tool dl{margin:0 0 17px;border-top:1px solid #ebe5da}
.service-tool dl>div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:11px;padding:10px 0;border-bottom:1px solid #ebe5da}
.service-tool dt{color:#344f46;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.035em}
.service-tool dd{margin:0;color:#606762;font-size:12.5px;line-height:1.5}
.service-tool>a{align-self:flex-start;margin-top:auto;color:#1e5948;font-size:13px;font-weight:800;text-underline-offset:3px}
.service-start-kit{margin-top:48px;margin-bottom:28px;padding-top:32px;border-top:1px solid #dcd5ca}
.service-start-kit h2{margin:0 0 17px}
.service-start-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:980px}
.service-start-grid>div{padding:15px 17px;border:1px solid #dfd8cd;border-radius:9px;background:#faf7f0}
.service-start-grid b{display:block;margin-bottom:5px;color:#244a3f;font-size:14px}
.service-start-grid span{display:block;color:#626963;font-size:12.5px;line-height:1.5}

.playbook-faq{display:grid;gap:8px;margin-top:13px}
.playbook-faq details{border:1px solid #ded7cb;border-radius:8px;background:#fbf9f4;padding:0 14px}
.playbook-faq summary{cursor:pointer;padding:12px 0;color:#274b40;font-weight:750;font-size:14px}
.playbook-faq details p{margin:0;padding:0 0 13px;color:#59615c;font-size:13.5px;line-height:1.6}
.source-playbook-article #how{margin-top:25px}
.source-playbook-article #how p,.source-playbook-article #setup p,.source-playbook-article #scale p{max-width:780px}

@media(max-width:1050px){
  .global-sidebar{
    width:min(286px,calc(100vw - 46px))!important;
    max-width:min(286px,calc(100vw - 46px))!important;
    padding:12px 12px max(18px,env(safe-area-inset-bottom))!important;
    background:#fbfaf6!important;
  }
  .global-sidebar>.sidebar-search{margin:0 0 10px!important}
  .global-sidebar>.sidebar-search input{height:36px!important;padding:0 10px!important;font-size:16px!important;border-radius:7px!important}
  .global-sidebar .sidebar-group{margin:0!important}
  .global-sidebar .sidebar-group-title{margin:8px 7px 5px!important;font-size:9px!important;letter-spacing:.1em!important}
  .global-sidebar .sidebar-menu{gap:2px!important}
  .global-sidebar .sidebar-menu a{min-height:34px!important;padding:6px 8px!important;border-radius:6px!important;font-size:12.5px!important;line-height:1.25!important}
  .global-sidebar .sidebar-menu a.active{box-shadow:inset 2px 0 0 #315447!important}

  .sidebar-more{margin-top:7px!important;border-top:1px solid #e2ddd3!important}
  .sidebar-more>summary{display:flex!important;align-items:center;justify-content:space-between;gap:8px;min-height:38px;padding:8px 7px;color:#344b43;font-size:12.5px;font-weight:750;list-style:none}
  .sidebar-more>summary:after{content:"+";flex:0 0 auto;color:#6b746f;font-size:17px;font-weight:400;line-height:1}
  .sidebar-more[open]>summary:after{content:"−"}
  .sidebar-more>summary small{display:none}
  .sidebar-more:not([open])>.sidebar-more-body{display:none!important}
  .sidebar-more[open]>.sidebar-more-body{display:block!important;padding-bottom:5px}
  .sidebar-more .sidebar-group{margin-top:3px!important}
  .sidebar-more .sidebar-mode-compact{margin:8px 0 0!important;padding:10px 7px!important;border-top:1px solid #e6e0d6!important}
  .sidebar-mode-compact>span{font-size:10px!important}
  .sidebar-mode-options{gap:5px!important;margin-top:6px!important}
  .sidebar-mode-options button{min-height:31px!important;padding:4px 7px!important;font-size:11px!important}
  .sidebar-hints-toggle{min-height:31px!important;margin-top:6px!important;padding:5px 7px!important;font-size:10.5px!important}

  .global-sidebar>.sidebar-partner-cta{margin:10px 0 0!important;padding:10px 11px!important;min-height:0!important;border-radius:7px!important}
  .global-sidebar>.sidebar-partner-cta span{font-size:8px!important}
  .global-sidebar>.sidebar-partner-cta b{font-size:13px!important}
  .global-sidebar>.sidebar-partner-cta small{display:none!important}
  .global-sidebar>.sidebar-bottom{padding-top:8px!important;margin-top:7px!important;font-size:9px!important}
}

@media(max-width:760px){
  .mobile-nav-toggle{min-width:78px!important;height:38px!important;padding:0 9px!important;font-size:12px!important}
  .mobile-nav-icon{transform:scale(.88)}
  .global-sidebar{top:68px!important;max-height:calc(100dvh - 68px)!important}
  .service-task-nav{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .service-task-nav a{justify-content:center;text-align:center;padding:6px 8px;line-height:1.25}
  .service-workflow{padding-top:34px}
  .service-workflow-head{grid-template-columns:32px minmax(0,1fr);gap:10px}
  .service-workflow-head>span{width:30px;height:30px;font-size:10px}
  .service-tool-grid,.service-tool-grid-one,.service-start-grid{grid-template-columns:minmax(0,1fr)!important}
  .service-tool{padding:16px}
  .service-tool dl>div{grid-template-columns:1fr;gap:3px}
  .service-tool dt{font-size:10px}
  .service-start-kit{margin-top:38px;padding-top:27px}
}

@media(max-width:390px){
  .global-sidebar{width:min(272px,calc(100vw - 38px))!important;max-width:min(272px,calc(100vw - 38px))!important}
  .brand-text b{font-size:16px!important;max-width:154px!important}
  .mobile-nav-toggle{min-width:70px!important;margin-left:6px!important}
  .service-task-nav{grid-template-columns:1fr}
}


/* =========================================================
   v82: full compact menu + AdsBridge guide
   ========================================================= */
.sidebar-more{display:none!important}
.global-sidebar{padding:14px 12px 14px!important}
.global-sidebar>.sidebar-search{margin:0 0 9px!important}
.global-sidebar>.sidebar-search input{height:34px!important;padding:0 10px!important;border-radius:7px!important;font-size:13px!important}
.global-sidebar>.sidebar-mode-compact{margin:0 0 8px!important;padding:8px 8px!important;border-radius:8px!important}
.sidebar-mode-compact>span{font-size:9px!important}
.sidebar-mode-options{gap:4px!important;margin-top:5px!important}
.sidebar-mode-options button{min-height:28px!important;padding:3px 6px!important;font-size:10.5px!important}
.sidebar-mode-compact small{margin-top:4px!important;font-size:9.5px!important}
.sidebar-hints-toggle{min-height:29px!important;margin-top:5px!important;padding:4px 6px!important;font-size:10px!important}
.global-sidebar .sidebar-group{margin:0!important;padding:0!important}
.global-sidebar .sidebar-group-title{margin:7px 7px 3px!important;font-size:8.5px!important;letter-spacing:.11em!important}
.global-sidebar .sidebar-menu{gap:1px!important}
.global-sidebar .sidebar-menu a{min-height:30px!important;padding:4px 8px!important;border-radius:6px!important;font-size:11.5px!important;line-height:1.2!important}
.global-sidebar .sidebar-menu a.active{background:#e9f0eb!important;color:#21483c!important;box-shadow:inset 2px 0 0 #315447!important}
.global-sidebar>.sidebar-partner-cta{margin:9px 0 0!important;padding:8px 10px!important;min-height:0!important;border-radius:7px!important}
.global-sidebar>.sidebar-partner-cta span{font-size:7.5px!important}
.global-sidebar>.sidebar-partner-cta b{font-size:12px!important}
.global-sidebar>.sidebar-partner-cta small{font-size:8.5px!important;margin-top:2px!important}
.global-sidebar>.sidebar-bottom{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin-top:7px!important;padding-top:7px!important;font-size:9px!important}
.global-sidebar>.sidebar-bottom a{font-weight:750;text-decoration:none;color:#445b53}
.service-tool-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:auto}
.service-tool-actions>a{display:inline-flex;align-items:center;min-height:34px;font-size:12.5px;font-weight:800;text-underline-offset:3px}
.service-tool-actions>a:first-child{padding:0 11px;border-radius:7px;background:#244a3f;color:#fff;text-decoration:none}
.adsbridge-guide .article-steps{display:grid;gap:9px;padding-left:22px}
.adsbridge-guide .article-steps li{padding-left:4px}
.adsbridge-guide .compare-table{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 20px}
.adsbridge-guide .compare-table>div{padding:14px 15px;border:1px solid #ded7cb;border-radius:9px;background:#fbf9f4}
.adsbridge-guide .compare-table b{display:block;margin-bottom:5px;color:#244a3f;font-size:14px}
.adsbridge-guide .compare-table span{display:block;color:#5e6661;font-size:12.5px;line-height:1.5}
.adsbridge-guide .code-example{margin:16px 0;border:1px solid #ddd6ca;border-radius:9px;background:#f6f3eb;overflow:hidden}
.adsbridge-guide .code-example pre{margin:0;padding:14px 16px;background:transparent}
.adsbridge-guide .checklist{display:grid;gap:7px;margin:14px 0 22px;padding:16px;border:1px solid #ddd6ca;border-radius:9px;background:#fbf9f4}
.adsbridge-guide .checklist label{display:flex;gap:9px;align-items:flex-start;color:#48544f;font-size:13px;line-height:1.45}
.adsbridge-guide .checklist input{margin-top:3px}
@media(max-width:1050px){
  .global-sidebar{width:min(264px,calc(100vw - 40px))!important;max-width:min(264px,calc(100vw - 40px))!important;padding:10px 10px max(14px,env(safe-area-inset-bottom))!important}
  .global-sidebar>.sidebar-search{display:block!important;margin-bottom:7px!important}
  .global-sidebar>.sidebar-mode-compact{display:block!important;margin-bottom:6px!important;padding:7px!important}
  .global-sidebar .sidebar-group-title{margin:5px 6px 2px!important;font-size:8px!important}
  .global-sidebar .sidebar-menu{display:flex!important;flex-direction:column!important;gap:1px!important;white-space:normal!important}
  .global-sidebar .sidebar-menu a{display:flex!important;min-height:28px!important;padding:4px 7px!important;font-size:11px!important}
  .global-sidebar>.sidebar-partner-cta{margin-top:7px!important;padding:7px 9px!important}
  .global-sidebar>.sidebar-partner-cta small{display:none!important}
  .global-sidebar>.sidebar-bottom{margin-top:5px!important;padding-top:5px!important}
}
@media(max-width:760px){
  .global-sidebar{top:68px!important;max-height:calc(100dvh - 68px)!important;overflow-y:auto!important}
  .mobile-nav-toggle{min-width:74px!important;height:36px!important;padding:0 8px!important;font-size:11.5px!important}
  .adsbridge-guide .compare-table{grid-template-columns:1fr!important}
}
@media(max-width:390px){
  .global-sidebar{width:min(248px,calc(100vw - 34px))!important;max-width:min(248px,calc(100vw - 34px))!important}
  .global-sidebar .sidebar-menu a{min-height:27px!important;font-size:10.8px!important}
  .global-sidebar>.sidebar-mode-compact{padding:6px!important}
}

/* v83: readable compact navigation, editorial cards and cleaner tool callouts */

/* Keep the sidebar compact by trimming spacing, not the type size. */
.global-sidebar{padding:15px 13px 16px!important}
.global-sidebar>.sidebar-search{margin-bottom:10px!important}
.global-sidebar>.sidebar-search input{height:36px!important;font-size:14px!important}
.global-sidebar>.sidebar-mode-compact{padding:8px!important;margin-bottom:8px!important}
.global-sidebar .sidebar-group-title{margin:8px 8px 4px!important;font-size:9.5px!important;letter-spacing:.1em!important}
.global-sidebar .sidebar-menu{gap:1px!important}
.global-sidebar .sidebar-menu a,
.sidebar-group-reference .sidebar-menu a,
.sidebar-group-priority .sidebar-menu a{min-height:33px!important;padding:5px 9px!important;font-size:13.5px!important;line-height:1.25!important;color:#48544f!important}
.sidebar-group-priority .sidebar-menu a{font-size:14px!important}
.global-sidebar .sidebar-menu a.active{color:#173f34!important;font-weight:750!important;background:#e8eee9!important}
.global-sidebar>.sidebar-partner-cta{padding:9px 10px!important;margin-top:10px!important}
.global-sidebar>.sidebar-partner-cta b{font-size:13.5px!important}
.global-sidebar>.sidebar-partner-cta span{font-size:8.5px!important}
.global-sidebar>.sidebar-bottom{font-size:10px!important}

/* Service catalogue: the whole card behaves like a destination. */
.service-tool-grid{gap:16px!important}
.service-tool{
  position:relative;
  overflow:hidden;
  min-height:300px;
  padding:20px 20px 18px!important;
  border:1px solid #d7d1c6!important;
  border-radius:14px!important;
  background:#fffefa!important;
  box-shadow:0 2px 0 rgba(36,57,49,.025),0 12px 28px rgba(36,47,42,.035)!important;
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.service-tool:before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:3px;
  background:#315447;
  opacity:.88;
}
.service-tool:after{
  content:"↗";
  position:absolute;
  top:18px;
  right:18px;
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border:1px solid #ded8cd;
  border-radius:50%;
  color:#49655b;
  background:#faf7ef;
  font-size:13px;
  transition:transform .16s ease,background .16s ease;
}
.service-tool:hover,.service-tool:focus-visible{
  transform:translateY(-3px);
  border-color:#bfc9c3!important;
  background:#fff!important;
  box-shadow:0 16px 34px rgba(31,49,42,.08)!important;
  outline:none;
}
.service-tool:hover:after,.service-tool:focus-visible:after{transform:translate(2px,-2px);background:#edf2ee}
.service-tool-head{display:flex;align-items:center;gap:12px;padding-right:34px;margin-bottom:10px}
.service-mark{
  flex:0 0 42px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:#e9efe9;
  border:1px solid #d7e0d9;
  color:#21483c;
  font-size:12px;
  font-weight:850;
  letter-spacing:.04em;
}
.service-tool-head>div{min-width:0}
.service-kicker{color:#8a6a49!important;font-size:9.5px!important;letter-spacing:.12em!important;font-weight:850!important;text-transform:uppercase}
.service-tool h3{margin:3px 0 0!important;font-size:23px!important;line-height:1.15!important}
.service-tool>p{margin:0 0 15px!important;color:#535e58!important;font-size:14px!important;line-height:1.58!important}
.service-tool dl{margin:0 0 16px!important;border-top:1px solid #ebe6dd!important}
.service-tool dl>div{grid-template-columns:105px minmax(0,1fr)!important;padding:9px 0!important;border-color:#eee9e0!important}
.service-tool dt{font-size:9.5px!important;letter-spacing:.07em!important;color:#6f756f!important}
.service-tool dd{font-size:12.7px!important;line-height:1.5!important;color:#555f5a!important}
.service-tool>a.service-open-link,
.service-tool-actions>a.service-open-link{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 13px!important;
  margin-top:auto;
  border:1px solid #274c41;
  border-radius:8px;
  background:#244a3f;
  color:#fff!important;
  font-size:12.5px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.service-tool-actions{gap:8px!important}
.service-tool-actions>a:not(.service-open-link){
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 11px;
  border:1px solid #d7d0c4;
  border-radius:8px;
  background:#faf7f0;
  color:#315447;
  font-size:12px;
  font-weight:750;
  text-decoration:none;
}
.service-tool[data-card-link] a{position:relative;z-index:2}

/* Tool hints inside articles: one compact editorial note + clear actions. */
.service-inline{
  position:relative;
  margin:24px 0!important;
  padding:16px 17px 15px 18px!important;
  border:1px solid #d9d2c7!important;
  border-left:0!important;
  border-radius:11px!important;
  background:#fbfaf6!important;
  box-shadow:inset 3px 0 0 #8c6c49;
}
.service-inline:before{
  content:"ИНСТРУМЕНТ";
  display:block;
  margin-bottom:5px;
  color:#8a6a49;
  font-size:9px;
  font-weight:850;
  letter-spacing:.12em;
}
.service-inline>b{margin-bottom:7px!important;color:#1f453a!important;font-family:inherit!important;font-size:15px!important;font-weight:800!important}
.service-inline p{color:#545f59!important;font-size:13.5px!important;line-height:1.6!important}
.service-inline p .service-name-link{
  display:inline-flex;
  align-items:center;
  padding:1px 6px;
  margin:0 1px;
  border:1px solid #d8dfda;
  border-radius:6px;
  background:#eef3ef;
  color:#244c40!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:nowrap;
}
.service-inline p .service-name-link:hover{background:#e4ece6;border-color:#c6d4ca}
.service-inline-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.service-inline-actions a{margin:0!important;text-decoration:none!important}
.service-inline-primary{
  display:inline-flex!important;
  align-items:center;
  min-height:34px;
  padding:0 11px;
  border-radius:7px;
  background:#244a3f;
  color:#fff!important;
  font-size:12px!important;
  font-weight:800!important;
}
.service-inline-primary:after{content:" ↗";margin-left:5px;font-size:10px}
.service-inline-secondary,.service-inline-more{
  display:inline-flex!important;
  align-items:center;
  min-height:34px;
  padding:0 10px;
  border:1px solid #d7d0c4;
  border-radius:7px;
  background:#fffdf8;
  color:#315447!important;
  font-size:12px!important;
  font-weight:750!important;
  text-decoration:none!important;
}
.service-inline-secondary:hover,.service-inline-more:hover{background:#f1f4f0;border-color:#bccbc2}

/* Source and home cards: calmer editorial hierarchy, fewer template-like colored variants. */
.playbook-card{
  overflow:hidden;
  min-height:360px!important;
  padding:23px 22px 20px!important;
  border:1px solid #d9d3c9!important;
  border-top:1px solid #d9d3c9!important;
  border-radius:13px!important;
  background:#fffefa!important;
  box-shadow:0 8px 22px rgba(37,48,43,.035)!important;
}
.playbook-card:nth-child(n){background:#fffefa!important;border-top-color:#d9d3c9!important}
.playbook-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:#315447;
  opacity:.8;
}
.playbook-card:after{
  content:"Открыть →";
  position:absolute;
  right:19px;
  bottom:18px;
  color:#315447;
  font-size:11px;
  font-weight:800;
}
.playbook-card:hover{transform:translateY(-3px)!important;border-color:#c6cec8!important;box-shadow:0 15px 30px rgba(35,48,42,.07)!important}
.playbook-card-top{color:#876949!important;font-size:9.5px!important}
.playbook-card h2{font-size:26px!important;line-height:1.16!important}
.playbook-card>p{font-size:14px!important;line-height:1.55!important}
.playbook-card>a{margin-top:auto!important;padding-right:80px;color:#6f5d4b!important;font-size:11px!important;text-decoration:none!important;opacity:.72}

.home-source-grid>a{
  position:relative;
  overflow:hidden;
  min-height:190px!important;
  border:1px solid #d9d3c9!important;
  border-top:1px solid #d9d3c9!important;
  border-radius:12px!important;
  background:#fffefa!important;
  box-shadow:0 6px 18px rgba(37,48,43,.025);
}
.home-source-grid>a:nth-child(n){border-top-color:#d9d3c9!important}
.home-source-grid>a:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#315447;opacity:.75}
.home-source-grid>a:hover{transform:translateY(-3px)!important;border-color:#c7cec9!important;box-shadow:0 13px 27px rgba(35,48,42,.06)!important}
.home-source-grid b{font-size:23px!important}
.home-source-grid small{color:#315447!important}

.section-entry{
  border-radius:11px!important;
  background:#fffefa!important;
  box-shadow:0 5px 16px rgba(37,48,43,.025);
}
.section-entry:hover{transform:translateY(-3px)!important;box-shadow:0 12px 24px rgba(37,48,43,.06)!important}

@media(max-width:1050px){
  .global-sidebar{width:min(292px,calc(100vw - 44px))!important;max-width:min(292px,calc(100vw - 44px))!important;padding:12px 12px max(18px,env(safe-area-inset-bottom))!important}
  .global-sidebar>.sidebar-search input{font-size:16px!important;height:38px!important}
  .global-sidebar .sidebar-group-title{margin:7px 7px 3px!important;font-size:9.5px!important}
  .global-sidebar .sidebar-menu a,
  .sidebar-group-reference .sidebar-menu a,
  .sidebar-group-priority .sidebar-menu a{min-height:34px!important;padding:5px 8px!important;font-size:14px!important;line-height:1.25!important}
  .sidebar-mode-compact>span{font-size:11.5px!important}
  .sidebar-mode-options button{font-size:11px!important}
  .sidebar-hints-toggle span{font-size:11px!important}
  .sidebar-hints-toggle b{font-size:10.5px!important}
}

@media(max-width:650px){
  .global-sidebar{width:min(286px,calc(100vw - 46px))!important;max-width:min(286px,calc(100vw - 46px))!important}
  .service-tool{min-height:0!important;padding:17px 16px 16px!important}
  .service-tool:after{top:15px;right:14px}
  .service-tool-head{padding-right:32px}
  .service-mark{width:38px;height:38px;flex-basis:38px}
  .service-tool h3{font-size:21px!important}
  .service-tool dl>div{grid-template-columns:1fr!important;gap:3px!important}
  .service-inline{padding:14px 14px 13px 16px!important}
  .service-inline-actions{display:grid;grid-template-columns:1fr;gap:6px}
  .service-inline-actions a{justify-content:center}
  .playbook-card{min-height:0!important;padding:19px 18px 18px!important}
  .playbook-card:after{position:static;display:block;margin-top:13px}
  .playbook-card>a{padding-right:0!important}
  .home-source-grid>a{min-height:0!important}
}
/* v83 follow-up: keep one clear CTA on source cards. */
.playbook-card:after{display:none!important}
.playbook-card>a{
  margin-top:auto!important;
  padding:13px 0 0!important;
  border-top:1px solid #ebe5dc;
  color:#315447!important;
  font-size:12px!important;
  font-weight:800!important;
  text-decoration:none!important;
  opacity:1!important;
}
.playbook-card>a:after{content:"  →"}


/* v84: source-specific toolkits */
.source-toolkit-intro{max-width:760px;margin:-4px 0 17px;color:#5c6660;font-size:14px;line-height:1.62}
.source-toolkit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 12px;max-width:920px}
.source-tool-card{position:relative;display:flex;flex-direction:column;min-height:168px;padding:16px 17px 15px;border:1px solid #ded8ce;border-radius:11px;background:#fffdf8;color:inherit;text-decoration:none;box-shadow:0 4px 14px rgba(38,47,42,.03);transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}
.source-tool-card:after{content:"↗";position:absolute;right:14px;top:13px;width:25px;height:25px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f1f3ee;color:#315247;font-size:12px}
.source-tool-card:hover,.source-tool-card:focus-visible{border-color:#a8bbb2;box-shadow:0 8px 22px rgba(32,72,59,.08);transform:translateY(-1px);outline:none}
.source-tool-card-top{display:block;padding-right:32px;margin-bottom:8px;color:#8b6b48;font-size:9.5px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.source-tool-card>b{display:block;margin-bottom:7px;color:#1c463a;font-size:17px;line-height:1.2}
.source-tool-card-copy{display:block;flex:1;color:#58625d;font-size:12.8px;line-height:1.55}
.source-tool-card-action{display:block;margin-top:12px;color:#1f5a49;font-size:11.5px;font-weight:800}
.source-toolkit-helper,.source-toolkit-all{max-width:920px;margin:8px 0 0;color:#626b66;font-size:12.5px;line-height:1.55}
.source-toolkit-helper a,.source-toolkit-all a{color:#1f5948;font-weight:800;text-underline-offset:3px}
@media(max-width:680px){.source-toolkit-grid{grid-template-columns:1fr}.source-tool-card{min-height:0;padding:14px 15px}.source-tool-card-copy{font-size:12.7px}.source-toolkit-intro{font-size:13.5px}}


.inline-tool-explainer{margin:0 0 1em;color:var(--text, #263932);line-height:1.68}
.inline-tool-explainer .inline-service-link{font-weight:750;color:#145845;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.inline-tool-explainer .inline-service-link:hover{color:#0d3f33}
@media(max-width:640px){.inline-tool-explainer{margin:0 0 .95em;font-size:1rem}}

/* v86 — image viewer */
.article-figure img{cursor:zoom-in}
.article-figure img:focus-visible{outline:3px solid rgba(34,92,76,.28);outline-offset:3px}
.image-lightbox{position:fixed;inset:0;z-index:9999;display:none;background:rgba(10,17,15,.94);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.image-lightbox.is-open{display:flex;flex-direction:column}
.image-lightbox-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:58px;padding:10px 14px;color:#fff}
.image-lightbox-toolbar button{appearance:none;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.1);color:#fff;min-width:40px;height:40px;border-radius:10px;font:700 17px/1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}
.image-lightbox-toolbar button:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.38)}
.image-lightbox-toolbar button:active{transform:scale(.96)}
.image-lightbox-toolbar .image-lightbox-reset{min-width:64px;font-size:13px}
.image-lightbox-toolbar .image-lightbox-close{margin-left:6px;font-size:22px}
.image-lightbox-stage{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:10px 18px 22px;touch-action:none;cursor:default}
.image-lightbox-stage.is-zoomed{cursor:grab}
.image-lightbox-stage.is-dragging{cursor:grabbing}
.image-lightbox-image{display:block;max-width:calc(100vw - 36px);max-height:calc(100vh - 100px);width:auto;height:auto;object-fit:contain;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;transform-origin:center center;will-change:transform;transition:transform .12s ease}
.image-lightbox-stage.is-dragging .image-lightbox-image,.image-lightbox-stage.is-pinching .image-lightbox-image{transition:none}
.image-lightbox-hint{position:absolute;left:50%;bottom:9px;transform:translateX(-50%);padding:5px 9px;border-radius:999px;background:rgba(0,0,0,.42);color:rgba(255,255,255,.76);font-size:12px;line-height:1.2;pointer-events:none;white-space:nowrap}
body.image-lightbox-open{overflow:hidden}
@media(max-width:650px){
 .image-lightbox-toolbar{min-height:52px;padding:7px 9px;gap:6px}
 .image-lightbox-toolbar button{height:38px;min-width:38px;border-radius:9px}
 .image-lightbox-toolbar .image-lightbox-reset{min-width:58px}
 .image-lightbox-stage{padding:6px 8px 18px}
 .image-lightbox-image{max-width:calc(100vw - 16px);max-height:calc(100vh - 82px)}
 .image-lightbox-hint{bottom:5px;font-size:11px}
}

/* v88: 1win rules and GEO */
.sidebar-partner-rules{display:flex;align-items:center;justify-content:center;margin:7px 12px 2px;padding:8px 10px;border:1px solid rgba(50,83,72,.14);border-radius:10px;background:rgba(255,255,255,.42);color:#35564b;font-size:13px;font-weight:700;text-decoration:none}.sidebar-partner-rules:hover{background:#fff}.rules-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}.rules-summary-grid>div{padding:18px;border:1px solid rgba(40,79,67,.13);border-radius:16px;background:#f8f5ec}.rules-summary-grid span,.geo-directory-head>span,.partner-specific-box>span{display:block;margin-bottom:6px;color:#6b7c75;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.rules-summary-grid b{display:block;color:#163a30;font:600 22px/1.2 Georgia,serif}.rules-summary-grid p{margin:8px 0 0;color:#53645e;font-size:14px;line-height:1.55}.rules-model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 26px}.rules-model-grid section{padding:20px;border:1px solid rgba(40,79,67,.13);border-radius:17px;background:#fff}.rules-model-grid h3{margin:8px 0 12px}.rules-model-grid ul{margin:0;padding-left:19px}.rules-model-grid li{margin:8px 0}.rule-model-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e8efe9;color:#244d40;font-size:12px;font-weight:800}.rules-table{margin:16px 0 26px}.rules-check-list li{margin:10px 0}.rules-action-box,.partner-specific-box{margin:24px 0;padding:20px 22px;border:1px solid rgba(40,79,67,.14);border-radius:16px;background:linear-gradient(135deg,#f8f5ec,#fff)}.rules-action-box b{display:block;margin-bottom:5px;color:#183d32}.partner-specific-box h2{margin:0 0 8px}.partner-specific-box p{margin:0 0 12px}.partner-specific-box>a,.geo-guideline-link{display:inline-flex;align-items:center;gap:8px;color:#245c4a;font-weight:800;text-decoration:none}.geo-directory{margin:34px 0;padding:24px;border:1px solid rgba(40,79,67,.13);border-radius:20px;background:#fbf9f3}.geo-directory-brand{background:#f5f8f6}.geo-directory-head h2{margin:0 0 8px}.geo-directory-head p{margin:0 0 18px}.geo-chip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.geo-chip-grid li{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center;min-height:49px;padding:10px 12px;border:1px solid rgba(40,79,67,.12);border-radius:12px;background:#fff}.geo-chip-grid li small{grid-column:2;color:#718078;font-size:11px}.geo-flag{font-size:19px}.geo-chip-grid-text li{display:flex;min-height:43px}.geo-guideline-link{margin-top:16px;padding:12px 14px;border-radius:12px;background:#e9f0eb}.geo-guideline-link span{font-size:12px;text-transform:uppercase;letter-spacing:.06em}.rules-launch-list{padding-left:24px}.rules-launch-list li{margin:10px 0}.article-cta-row{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.article-cta-row>a{display:inline-flex;align-items:center;min-height:42px;padding:10px 14px;border:1px solid rgba(40,79,67,.16);border-radius:11px;color:#244f42;font-weight:800;text-decoration:none}.article-cta-row .home-action-primary{background:#173f34;color:#fff}.home-action-rules{border-color:rgba(255,255,255,.34)!important}.rules-source-note{margin-top:4px}
@media(max-width:760px){.rules-summary-grid,.rules-model-grid{grid-template-columns:1fr}.geo-directory{padding:18px 14px}.geo-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-partner-rules{font-size:13px;margin-left:10px;margin-right:10px}}
@media(max-width:420px){.geo-chip-grid{grid-template-columns:1fr}.rules-summary-grid b{font-size:20px}.rules-table{font-size:13px}}


/* =========================================================
   v90 — full academy interface redesign
   Reference: compact professional course layout, not editorial paper.
   ========================================================= */
:root{
  --academy-sidebar:244px;
  --academy-rail:274px;
  --academy-bg:#f5f7f4;
  --academy-panel:#ffffff;
  --academy-border:#dde5df;
  --academy-text:#17241f;
  --academy-muted:#66736d;
  --academy-green:#0f4b3f;
  --academy-green-2:#176452;
  --academy-green-soft:#edf6f1;
  --academy-amber:#b27a22;
  --sidebar-width:var(--academy-sidebar);
  --header-height:0px;
  --content-max:1460px;
}
html{background:var(--academy-bg)}
body{background:var(--academy-bg)!important;color:var(--academy-text)!important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important}

/* Desktop navigation becomes the visual anchor. */
@media(min-width:901px){
  .site-header{display:none!important}
  .global-sidebar{
    top:0!important;bottom:0!important;width:var(--academy-sidebar)!important;
    padding:18px 14px 20px!important;background:linear-gradient(180deg,#0d3f35 0%,#092f29 100%)!important;
    border-right:1px solid rgba(255,255,255,.08)!important;box-shadow:8px 0 28px rgba(13,46,39,.08)!important;
    color:#fff!important;scrollbar-color:rgba(255,255,255,.2) transparent!important
  }
  main,.site-footer{margin-left:var(--academy-sidebar)!important}
}
.sidebar-brand{display:flex;align-items:center;gap:11px;margin:0 3px 17px;padding:2px 2px 14px;border-bottom:1px solid rgba(255,255,255,.12);text-decoration:none!important;color:#fff!important}
.sidebar-brand-mark{width:39px;height:39px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(145deg,#4fd09c,#2d9f77);color:#07352b;font-size:10px;font-weight:950;letter-spacing:.04em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}
.sidebar-brand>span:last-child{display:flex;flex-direction:column;line-height:1.05}.sidebar-brand b,.sidebar-brand strong{font-size:15px;letter-spacing:-.015em}.sidebar-brand strong{font-weight:760}.sidebar-brand small{margin-top:5px;color:#a8c6bb;font-size:8.5px;letter-spacing:.05em}
.global-sidebar>.sidebar-search{margin:0 2px 13px!important}
.global-sidebar>.sidebar-search input{height:38px!important;padding:0 11px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:8px!important;background:rgba(0,0,0,.14)!important;color:#fff!important;font-size:12.5px!important;box-shadow:none!important}
.global-sidebar>.sidebar-search input::placeholder{color:#abc2ba!important}
.global-sidebar>.sidebar-mode-compact{background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.08)!important;color:#dceae5!important}
.global-sidebar>.sidebar-mode-compact span,.global-sidebar>.sidebar-mode-compact small,.global-sidebar>.sidebar-mode-compact button{color:#dceae5!important}
.global-sidebar .sidebar-group-title{margin:11px 8px 5px!important;color:#77ad9c!important;font-size:9px!important;font-weight:800!important;letter-spacing:.1em!important}
.global-sidebar .sidebar-menu{gap:2px!important}
.global-sidebar .sidebar-menu a{min-height:34px!important;padding:7px 9px 7px 34px!important;border-radius:7px!important;color:#dce7e3!important;font-size:13px!important;font-weight:560!important;line-height:1.15!important;background:transparent!important;box-shadow:none!important;position:relative!important}
.global-sidebar .sidebar-menu a:before{display:grid!important;position:absolute!important;left:9px;top:50%;width:17px;height:17px;transform:translateY(-50%);place-items:center;color:#8fbaa9;font-size:12px!important;font-weight:800;content:"·"!important}
.global-sidebar .sidebar-menu a[data-nav="home"]:before{content:"⌂"!important}.global-sidebar .sidebar-menu a[data-nav="start"]:before{content:"◉"!important}.global-sidebar .sidebar-menu a[data-nav="traffic"]:before{content:"⇄"!important}.global-sidebar .sidebar-menu a[data-nav="compare"]:before{content:"≋"!important}.global-sidebar .sidebar-menu a[data-nav="practice"]:before{content:"✓"!important}.global-sidebar .sidebar-menu a[data-nav="diagnostics"]:before{content:"⌕"!important}.global-sidebar .sidebar-menu a[data-nav="analytics"]:before{content:"▥"!important}.global-sidebar .sidebar-menu a[data-nav="tools"]:before{content:"▦"!important}.global-sidebar .sidebar-menu a[data-nav="notes"]:before{content:"□"!important}.global-sidebar .sidebar-menu a[data-nav="library"]:before{content:"▤"!important}.global-sidebar .sidebar-menu a[data-nav="basics"]:before{content:"○"!important}.global-sidebar .sidebar-menu a[data-nav="economics"]:before{content:"₽"!important}.global-sidebar .sidebar-menu a[data-nav="services"]:before{content:"⌘"!important}.global-sidebar .sidebar-menu a[data-nav="glossary"]:before{content:"Aa"!important;font-size:8px!important}.global-sidebar .sidebar-menu a[data-nav="about"]:before{content:"i"!important}
.global-sidebar .sidebar-menu a:hover{background:rgba(255,255,255,.075)!important;color:#fff!important}
.global-sidebar .sidebar-menu a.active{background:rgba(75,205,155,.14)!important;color:#fff!important;box-shadow:inset 3px 0 0 #48c897!important;font-weight:700!important}
.global-sidebar .sidebar-menu a.active:before{color:#53d8a4!important}
.global-sidebar>.sidebar-partner-cta{margin:14px 2px 0!important;padding:12px!important;border:1px solid rgba(80,210,159,.28)!important;border-radius:9px!important;background:rgba(44,151,114,.12)!important;color:#fff!important;box-shadow:none!important}
.global-sidebar>.sidebar-partner-cta span{color:#7fd2b2!important}.global-sidebar>.sidebar-partner-cta b{color:#fff!important}.global-sidebar>.sidebar-partner-cta small{color:#a9c7bc!important}
.global-sidebar>.sidebar-partner-rules{margin:6px 4px 0!important;color:#a8c5ba!important;font-size:10.5px!important}
.global-sidebar>.sidebar-bottom{border-top:1px solid rgba(255,255,255,.1)!important;color:#9db8ae!important}.global-sidebar>.sidebar-bottom a{color:#dbe8e3!important}

/* Main source lessons use center content + useful right rail. */
.source-playbook-page{padding:0!important;background:var(--academy-bg)!important}
.source-playbook-page .article-layout{display:grid!important;grid-template-columns:minmax(0,1fr) var(--academy-rail)!important;gap:30px!important;max-width:1460px!important;padding:28px 34px 72px!important;margin:0 auto!important}
.source-playbook-article{min-width:0!important;padding:0 4px 0 0!important}
.source-playbook-article .breadcrumbs{margin:0 0 18px!important;color:#718079!important;font-size:11.5px!important}.source-playbook-article .breadcrumbs a{color:#526d63!important;text-decoration:none!important}
.source-hero-icon{float:left;width:52px;height:52px;margin:0 15px 8px 0;display:grid;place-items:center;border-radius:13px;background:#fff;border:1px solid var(--academy-border);box-shadow:0 5px 18px rgba(26,49,40,.055);color:#185d4d;font-weight:900;font-size:12px;letter-spacing:-.02em}
.source-playbook-article .article-label{margin:2px 0 4px!important;color:#75827d!important;font-size:9px!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.source-playbook-article h1{margin:0 0 7px!important;color:#14241f!important;font-size:clamp(30px,3vw,42px)!important;line-height:1.1!important;letter-spacing:-.028em!important}
.source-playbook-article .lead{max-width:940px!important;margin:0 0 18px!important;color:#53615c!important;font-size:15.5px!important;line-height:1.62!important}
.playbook-facts,.source-playbook-article>.playbook-facts{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:18px 0 13px!important;clear:both}
.playbook-facts>div,.source-playbook-article>.playbook-facts>div{display:flex!important;gap:6px!important;align-items:center!important;width:auto!important;min-width:0!important;padding:7px 10px!important;border:1px solid var(--academy-border)!important;border-radius:7px!important;background:#fff!important;box-shadow:none!important}
.playbook-facts dt{margin:0!important;color:#73807a!important;font-size:10.5px!important;font-weight:600!important}.playbook-facts dd{margin:0!important;color:#253932!important;font-size:11.5px!important;font-weight:750!important}
.playbook-risk{margin:13px 0 0!important;padding:10px 13px!important;border:1px solid #e7dfcf!important;border-left:3px solid #c08b35!important;border-radius:8px!important;background:#fffaf1!important;color:#554c3e!important}.playbook-risk b{font-size:11px!important;color:#8a6225!important}.playbook-risk p{display:inline!important;margin:0 0 0 6px!important;color:#615b51!important;font-size:11.5px!important;line-height:1.5!important}
.source-section-tabs{display:flex;gap:4px;overflow-x:auto;margin:18px 0 14px;padding:0 0 9px;border-bottom:1px solid var(--academy-border);scrollbar-width:none}.source-section-tabs::-webkit-scrollbar{display:none}.source-section-tabs a{flex:0 0 auto;padding:7px 10px;border-radius:7px;color:#5f6d67;font-size:11.5px;font-weight:650;text-decoration:none!important}.source-section-tabs a:first-child{background:var(--academy-green-soft);color:var(--academy-green)}.source-section-tabs a:hover{background:#edf1ee;color:#173f34}
.source-playbook-article>section{margin:0!important;padding:26px 0!important;border-top:1px solid #e2e8e4!important}.source-playbook-article>section:first-of-type{border-top:0!important;padding-top:14px!important}
.source-playbook-article h2{margin:0 0 9px!important;padding:0!important;color:#182a24!important;font-size:21px!important;line-height:1.25!important;letter-spacing:-.015em!important}.source-playbook-article h3{color:#2d4a40!important;font-size:15px!important}.source-playbook-article p,.source-playbook-article li{color:#53605b!important;font-size:13.5px!important;line-height:1.68!important}.source-playbook-article p{max-width:900px!important}
.playbook-checklist{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:0!important;margin:15px 0 0!important;list-style:none!important}.playbook-checklist li{margin:0!important;padding:12px 13px 12px 35px!important;border:1px solid var(--academy-border)!important;border-radius:8px!important;background:#fff!important;position:relative!important}.playbook-checklist li:before{content:"✓";position:absolute;left:12px;top:11px;width:15px;height:15px;display:grid;place-items:center;border-radius:50%;background:#e4f4ec;color:#187053;font-size:9px;font-weight:900}
.platform-setup{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.platform-setup li{display:grid!important;grid-template-columns:30px 1fr!important;gap:10px!important;padding:13px!important;border:1px solid var(--academy-border)!important;border-radius:8px!important;background:#fff!important}.platform-setup li>span{background:#e7f4ed!important;color:#17604d!important}.platform-setup h3{margin:1px 0 4px!important}.platform-setup p{margin:0!important;font-size:12.5px!important}
.playbook-format-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;margin-top:14px!important}.playbook-format-list>div{padding:14px!important;border:1px solid var(--academy-border)!important;border-radius:8px!important;background:#fff!important}.playbook-format-list dt{font:750 15px/1.35 Inter,"Segoe UI",Arial,sans-serif!important;color:#23473b!important}.playbook-format-list dd{font-size:12.5px!important}
.source-toolkit-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.source-tool-card{padding:14px!important;border:1px solid var(--academy-border)!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important}.source-tool-card:hover{border-color:#9cc1b1!important;transform:translateY(-1px)!important;box-shadow:0 10px 24px rgba(31,67,53,.07)!important}.source-tool-card-top{color:#6c7b75!important;font-size:9px!important}.source-tool-card b{color:#1d4639!important}.source-tool-card-copy{font-size:12px!important;line-height:1.55!important}.source-tool-card-action{color:#197054!important}

/* Right rail: table of contents, tools, adjacent reading. */
.source-playbook-page .article-aside{display:flex!important;flex-direction:column!important;gap:12px!important;position:sticky!important;top:20px!important;align-self:start!important;padding:0!important;background:transparent!important;border:0!important;max-height:calc(100vh - 40px);overflow-y:auto;scrollbar-width:thin}
.source-playbook-page .article-aside .aside-block{display:flex!important;flex-direction:column!important;padding:15px!important;border:1px solid var(--academy-border)!important;border-radius:10px!important;background:#fff!important;box-shadow:0 7px 22px rgba(32,56,47,.035)!important}
.source-playbook-page .article-aside .aside-block>b{margin:0 0 9px!important;color:#243c33!important;font-size:12px!important;letter-spacing:0!important;text-transform:none!important}
.source-playbook-page .playbook-aside ol{margin:0!important;padding:0!important;list-style:none!important;counter-reset:rail}.source-playbook-page .playbook-aside li{counter-increment:rail;margin:0!important}.source-playbook-page .playbook-aside li a{display:grid!important;grid-template-columns:20px 1fr!important;gap:4px!important;margin:0!important;padding:6px 2px!important;color:#5e6b66!important;font-size:11px!important;line-height:1.3!important;text-decoration:none!important}.source-playbook-page .playbook-aside li a:before{content:counter(rail) ".";color:#9aa49f;font-size:10px}.source-playbook-page .playbook-aside li a:hover{color:#17614e!important}
.rail-tools>a:not(.rail-all-tools){display:flex!important;align-items:center!important;gap:9px!important;margin:0!important;padding:7px 0!important;border-bottom:1px solid #edf0ee;text-decoration:none!important}.rail-tool-mark{width:29px;height:29px;display:grid;place-items:center;border-radius:8px;background:#e9f5ef;color:#167052;font-size:8px;font-weight:900}.rail-tools>a>span:last-child{display:flex;flex-direction:column}.rail-tools>a b{color:#213a31!important;font-size:11.5px!important}.rail-tools>a small{margin-top:2px;color:#84908a!important;font-size:9.5px!important}.rail-all-tools{margin-top:10px!important;padding:8px!important;border:1px solid #b9d3c7;border-radius:7px;color:#175b49!important;font-size:10.5px!important;font-weight:750;text-align:center;text-decoration:none!important}.rail-related a{padding:5px 0;color:#5c6964!important;font-size:10.5px!important;text-decoration:none!important}.rail-related a:hover{color:#17614e!important}

/* General article cards and service cards adopt the same UI language. */
.article-layout{max-width:1280px!important}.article h1{color:#172a23!important;letter-spacing:-.025em!important}.article-aside{border-radius:10px!important}.inline-note{border-radius:8px!important;background:#fff8eb!important;border-left:3px solid #c3923f!important}
.services-page,.traffic-page,.home-page{background:var(--academy-bg)!important}.page-head{background:#fff!important;border-bottom:1px solid var(--academy-border)!important}.service-tool{border:1px solid var(--academy-border)!important;border-radius:11px!important;background:#fff!important;box-shadow:0 6px 22px rgba(32,57,48,.035)!important}.service-tool:hover{border-color:#9fc3b4!important;box-shadow:0 12px 30px rgba(32,57,48,.075)!important;transform:translateY(-2px)!important}.service-mark{border-radius:9px!important;background:#e8f4ee!important;color:#19634f!important}.service-kicker{color:#7d8a84!important}.service-tool h3{color:#193e32!important}.service-tool dl>div{border-top:1px solid #edf0ee!important}.service-open-link{background:#145b49!important;border-radius:7px!important}.service-task-nav a{border-radius:999px!important;background:#fff!important;border-color:var(--academy-border)!important}.service-workflow-head>span{background:#e8f4ee!important;color:#17614e!important;border-radius:9px!important}
.home-entry-grid>a,.home-source-grid>a,.traffic-source-card,.source-card{border:1px solid var(--academy-border)!important;border-radius:10px!important;background:#fff!important;box-shadow:0 5px 18px rgba(32,57,48,.03)!important}.home-entry-grid>a:hover,.home-source-grid>a:hover,.traffic-source-card:hover,.source-card:hover{border-color:#a7c6b8!important;box-shadow:0 10px 26px rgba(32,57,48,.07)!important;transform:translateY(-1px)!important}

/* Mobile: keep the full menu, but make it genuinely compact and readable. */
@media(max-width:900px){
  :root{--header-height:66px;--sidebar-width:0px}
  .site-header{display:block!important;height:66px!important;background:#0d4036!important}
  .site-header .brand-mark{width:38px!important;height:38px!important;border-radius:9px!important}.site-header .brand-text b{font-size:15px!important}.site-header .mobile-nav-toggle{min-height:40px!important;padding:0 12px!important}
  .sidebar-brand{display:none!important}
  .global-sidebar{position:fixed!important;top:66px!important;left:0!important;bottom:0!important;width:min(292px,calc(100vw - 34px))!important;max-width:min(292px,calc(100vw - 34px))!important;padding:13px 12px 18px!important;background:#0c3b32!important;transform:translateX(-105%)!important;transition:transform .2s ease!important;z-index:100!important;overflow-y:auto!important}
  body.mobile-nav-open .global-sidebar{transform:translateX(0)!important}
  .global-sidebar>.sidebar-search{margin:0 0 8px!important}.global-sidebar>.sidebar-search input{height:37px!important;font-size:14px!important}
  .global-sidebar>.sidebar-mode-compact{padding:7px!important;margin-bottom:7px!important}
  .global-sidebar .sidebar-group-title{margin:8px 8px 3px!important;font-size:8.5px!important}
  .global-sidebar .sidebar-menu a{min-height:34px!important;padding:7px 8px 7px 33px!important;font-size:13.5px!important}
  .global-sidebar>.sidebar-partner-cta{margin-top:10px!important;padding:9px 10px!important}.global-sidebar>.sidebar-partner-cta small{display:none!important}
  main,.site-footer{margin-left:0!important}
  .source-playbook-page .article-layout{grid-template-columns:1fr!important;padding:22px 16px 60px!important;gap:0!important}.source-playbook-page .article-aside{display:none!important}
  .source-playbook-article h1{font-size:30px!important}.source-playbook-article .lead{font-size:14.5px!important}.source-hero-icon{width:44px;height:44px;margin-right:11px;border-radius:10px}
  .source-section-tabs{margin-left:-2px;margin-right:-2px}
  .playbook-checklist,.platform-setup,.playbook-format-list,.source-toolkit-grid{grid-template-columns:1fr!important}
}
@media(max-width:480px){
  .site-header .brand-text small{display:none!important}.source-playbook-page .article-layout{padding-left:14px!important;padding-right:14px!important}.source-playbook-article h1{font-size:27px!important}.source-hero-icon{float:none;margin:0 0 9px}.playbook-facts,.source-playbook-article>.playbook-facts{gap:6px!important}.playbook-facts>div,.source-playbook-article>.playbook-facts>div{padding:6px 8px!important}.source-section-tabs a{padding:7px 9px;font-size:11px}
}

.rail-progress{height:3px;margin:0 0 9px;border-radius:999px;background:#edf1ee;overflow:hidden}.rail-progress span{display:block;width:0;height:100%;border-radius:inherit;background:#35a77c;transition:width .1s linear}.source-playbook-page .playbook-aside li a.is-current{color:#145d49!important;font-weight:750!important}.source-section-tabs a.is-current{background:#e8f4ee!important;color:#145d49!important}


/* ===== v91: stable academy layout + useful visuals ===== */
:root{
  --academy-sidebar:244px;
  --academy-rail:276px;
  --academy-content:930px;
  --academy-page:#f7f8f6;
  --academy-card:#ffffff;
  --academy-border:#dfe6e2;
  --academy-text:#23352e;
  --academy-muted:#62716b;
  --academy-green:#0f604a;
  --academy-green-soft:#eef7f3;
}
@media(min-width:901px){
  :root{--sidebar-width:var(--academy-sidebar)!important}
  .site-header{display:none!important}
  .global-sidebar{top:0!important;width:var(--academy-sidebar)!important;padding:18px 16px 18px!important;background:linear-gradient(180deg,#0e4a3e 0%,#0a3b32 100%)!important;border-right:1px solid rgba(255,255,255,.08)!important;color:#fff!important}
  .global-sidebar>.sidebar-mode-compact{display:none!important}
  .sidebar-brand{display:flex!important;margin-bottom:16px!important;padding:2px 2px 15px!important;border-bottom:1px solid rgba(255,255,255,.12)!important}
  .sidebar-brand-mark{width:40px!important;height:40px!important;border-radius:10px!important;background:#42be8f!important;color:#08352c!important}
  .sidebar-brand span:last-child b,.sidebar-brand span:last-child strong{font-size:14.5px!important;line-height:1.08!important;color:#fff!important}
  .sidebar-brand span:last-child small{font-size:9px!important;color:#a9c8bc!important}
  .global-sidebar>.sidebar-search{margin:0 0 14px!important}.global-sidebar>.sidebar-search input{height:38px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:8px!important;background:rgba(255,255,255,.07)!important;color:#fff!important;font-size:12.5px!important}.global-sidebar>.sidebar-search input::placeholder{color:#a8c6bb!important}
  .global-sidebar .sidebar-group{margin-top:10px!important}.global-sidebar .sidebar-group-title{margin:0 8px 5px!important;color:#75aa98!important;font-size:8.5px!important;letter-spacing:.1em!important}
  .global-sidebar .sidebar-menu{gap:2px!important}.global-sidebar .sidebar-menu a{min-height:34px!important;padding:7px 8px!important;border-radius:7px!important;color:#dbe8e3!important;font-size:13.5px!important;line-height:1.2!important}.global-sidebar .sidebar-menu a:before{opacity:.72!important}.global-sidebar .sidebar-menu a:hover{background:rgba(255,255,255,.07)!important;color:#fff!important}.global-sidebar .sidebar-menu a.is-active,.global-sidebar .sidebar-menu a[aria-current="page"]{background:rgba(68,190,143,.16)!important;color:#fff!important;box-shadow:inset 2px 0 #49c596!important}
  .global-sidebar>.sidebar-partner-cta{margin-top:15px!important;padding:11px 12px!important;background:rgba(55,175,132,.13)!important;border-color:rgba(81,204,157,.35)!important}.global-sidebar>.sidebar-partner-rules{font-size:10.5px!important}
  .global-sidebar>.sidebar-bottom{margin-top:10px!important;padding-top:10px!important}
  main,.site-footer{margin-left:var(--academy-sidebar)!important}
}

.source-playbook-page{background:var(--academy-page)!important}
.source-playbook-page .article-layout{display:grid!important;grid-template-columns:minmax(0,var(--academy-content)) var(--academy-rail)!important;gap:28px!important;max-width:1260px!important;margin:0 auto!important;padding:26px 26px 72px!important;align-items:start!important}
.source-playbook-page .article-layout:before,.source-playbook-article h2:before{display:none!important}
.source-playbook-article{min-width:0!important}
.source-playbook-article .breadcrumbs{margin:0 0 18px!important;font:500 11px/1.4 Inter,"Segoe UI",Arial,sans-serif!important;color:#7b8883!important}
.source-title-row{display:flex;gap:13px;align-items:flex-start;margin-bottom:6px}.source-title-copy{min-width:0;flex:1}.source-title-copy .article-label{margin:1px 0 5px!important;color:#81908a!important;font:700 9px/1.2 Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.source-hero-icon{float:none!important;flex:0 0 44px;width:44px!important;height:44px!important;margin:1px 0 0!important;border-radius:10px!important;border:1px solid var(--academy-border)!important;box-shadow:none!important;background:#fff!important;color:#135b49!important;font:800 11px/1 Inter,"Segoe UI",Arial,sans-serif!important}
.source-hero-youtube{background:#fff1f0!important;color:#d7302f!important}.source-hero-telegram{background:#edf7ff!important;color:#168bd2!important}.source-hero-vk-video{background:#edf4ff!important;color:#3478d7!important}.source-hero-paid{background:#fff5e8!important;color:#b2711b!important}.source-hero-search,.source-hero-content-site{background:#edf8f2!important;color:#187153!important}.source-hero-streams{background:#f2efff!important;color:#6d52b8!important}
.source-playbook-article h1{margin:0!important;color:#1c2c26!important;font:760 34px/1.12 Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:-.035em!important}
.source-playbook-article>.lead{max-width:900px!important;margin:10px 0 14px!important;color:#586862!important;font:400 14.5px/1.65 Inter,"Segoe UI",Arial,sans-serif!important}
.playbook-facts,.source-playbook-article>.playbook-facts{display:flex!important;gap:7px!important;flex-wrap:wrap!important;margin:12px 0 13px!important}.playbook-facts>div,.source-playbook-article>.playbook-facts>div{padding:6px 9px!important;border:1px solid var(--academy-border)!important;border-radius:7px!important;background:#fff!important}.playbook-facts dt{font:700 8.5px/1.2 Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:.06em!important;color:#8a9691!important}.playbook-facts dd{font:650 11px/1.25 Inter,"Segoe UI",Arial,sans-serif!important;color:#30433b!important}
.playbook-risk{margin:12px 0 13px!important;padding:12px 14px!important;border:1px solid #eadcbf!important;border-left:3px solid #c49132!important;border-radius:8px!important;background:#fffaf0!important}.playbook-risk b{font-size:10px!important;color:#805f27!important}.playbook-risk p{margin:3px 0 0!important;font-size:12.5px!important;line-height:1.55!important;color:#665f54!important}
.source-section-tabs{gap:3px!important;margin:12px 0 8px!important;padding:0 0 8px!important}.source-section-tabs a{padding:6px 9px!important;font-size:11px!important}.source-section-tabs a:first-child{background:transparent!important}.source-section-tabs a.is-current{background:var(--academy-green-soft)!important}
.source-playbook-article section{padding:22px 0 23px!important;border-bottom:1px solid #e3e8e5!important}.source-playbook-article section:last-of-type{border-bottom:0!important}.source-playbook-article h2{margin:0 0 9px!important;padding:0!important;color:#263a32!important;font:720 20px/1.25 Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:-.015em!important}.source-playbook-article h3{font:700 14px/1.3 Inter,"Segoe UI",Arial,sans-serif!important;color:#2a453a!important}.source-playbook-article p,.source-playbook-article li,.source-playbook-article dd{font-size:13.5px!important;line-height:1.67!important;color:#596963!important}.source-playbook-article ul:not(.playbook-checklist):not(.traffic-diagnostic-list){padding-left:21px!important}.source-playbook-article code{font-size:12px!important}
.playbook-checklist{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.playbook-checklist li{padding:11px 12px 11px 34px!important;border-radius:8px!important}.platform-setup{grid-template-columns:repeat(2,minmax(0,1fr))!important}.playbook-format-list{grid-template-columns:repeat(3,minmax(0,1fr))!important}.playbook-format-list>div{padding:13px!important}.playbook-format-list dt{font-size:13.5px!important}.playbook-format-list dd{font-size:12.3px!important;line-height:1.55!important}
.playbook-steps{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;padding:0!important;list-style:none!important}.playbook-steps>li{display:grid!important;grid-template-columns:28px 1fr!important;gap:9px!important;margin:0!important;padding:12px!important;border:1px solid var(--academy-border)!important;border-radius:9px!important;background:#fff!important}.playbook-steps>li>span{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;border-radius:8px!important;background:#e9f6f0!important;color:#17694f!important;font-size:11px!important;font-weight:800!important}.playbook-steps h3{margin:0 0 3px!important}.playbook-steps p{margin:0!important;font-size:12.3px!important;line-height:1.55!important}
.traffic-diagnostic-list{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:0!important;list-style:none!important}.traffic-diagnostic-list li{padding:12px!important;border:1px solid var(--academy-border)!important;border-radius:8px!important;background:#fff!important}.traffic-diagnostic-list b{display:block!important;margin-bottom:3px!important;color:#2c473c!important}
.source-toolkit-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.source-tool-card{min-height:145px!important}.source-tool-card-action{margin-top:auto!important}

/* Useful visual blocks inside source guides */
.source-visual-section{padding-top:18px!important}.source-visual-section>h2{margin-bottom:12px!important}.source-journey-grid{display:grid;gap:9px}.source-journey-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.source-journey-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.source-journey-card.article-figure,.source-visual-pair .article-figure,.source-visual-wide.article-figure{margin:0!important;padding:0!important;border:1px solid var(--academy-border)!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important}.source-journey-card img{width:100%!important;height:150px!important;object-fit:cover!important;border-radius:0!important;background:#f2f5f3!important}.source-journey-card figcaption,.source-visual-pair figcaption,.source-visual-wide figcaption{padding:10px 11px 12px!important;color:#5a6963!important;font-size:11.8px!important;line-height:1.55!important}.source-journey-card figcaption strong,.source-visual-pair figcaption strong,.source-visual-wide figcaption strong{display:block;margin-bottom:2px;color:#293f36!important;font-size:12.3px!important}.source-visual-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.source-visual-pair img{width:100%!important;height:230px!important;object-fit:contain!important;border-radius:0!important;background:#fafbf9!important}.source-visual-wide{max-width:900px!important}.source-visual-wide img{max-height:360px!important;object-fit:contain!important;border-radius:0!important;background:#fafbf9!important}

/* Right rail */
.source-playbook-page .article-aside{top:18px!important;gap:10px!important;max-height:calc(100vh - 36px)!important}.source-playbook-page .article-aside .aside-block{padding:14px!important;border-radius:9px!important;box-shadow:none!important}.source-playbook-page .article-aside .aside-block>b{font-size:12.5px!important}.source-playbook-page .playbook-aside li a{grid-template-columns:18px 1fr!important;padding:5px 1px!important;font-size:10.8px!important}.rail-tools>a:not(.rail-all-tools){padding:7px 0!important}.rail-tool-mark{width:28px!important;height:28px!important}.rail-related a{font-size:10.5px!important;line-height:1.35!important}

@media(max-width:1160px) and (min-width:901px){
  :root{--academy-sidebar:225px;--academy-rail:245px;--academy-content:760px}
  .source-playbook-page .article-layout{gap:20px!important;padding-left:22px!important;padding-right:22px!important}.source-playbook-article h1{font-size:31px!important}.source-journey-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.playbook-format-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .global-sidebar>.sidebar-mode-compact{display:none!important}
  .source-playbook-page .article-layout{display:block!important;padding:18px 15px 56px!important}.source-title-row{gap:10px}.source-playbook-article h1{font-size:29px!important}.source-playbook-article>.lead{font-size:14px!important}.source-section-tabs{position:relative;overflow-x:auto!important}.source-playbook-article section{padding:20px 0!important}.playbook-checklist,.platform-setup,.playbook-format-list,.playbook-steps,.traffic-diagnostic-list,.source-toolkit-grid,.source-journey-grid.four,.source-journey-grid.three,.source-visual-pair{grid-template-columns:1fr!important}.source-journey-card img{height:auto!important;max-height:330px!important;object-fit:contain!important}.source-visual-pair img{height:auto!important;max-height:330px!important}.global-sidebar .sidebar-menu a{font-size:14.5px!important;min-height:38px!important;padding:8px 9px!important}.global-sidebar{width:min(284px,calc(100vw - 30px))!important;max-width:min(284px,calc(100vw - 30px))!important}.source-playbook-page .article-aside{display:none!important}
}
@media(max-width:480px){
  .source-playbook-article h1{font-size:27px!important}.source-hero-icon{flex-basis:40px;width:40px!important;height:40px!important}.source-title-copy .article-label{font-size:8px!important}.playbook-facts>div{width:100%!important}.source-playbook-article p,.source-playbook-article li,.source-playbook-article dd{font-size:13.3px!important}.source-playbook-article h2{font-size:19px!important}
}

.source-journey-card img{object-fit:contain!important;background:#f3f6f4!important}

/* v91 finishing pass: consistent modern typography and compact data blocks */
.global-sidebar>.sidebar-partner-rules{display:block!important;margin:6px 2px 0!important;padding:8px 10px!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:7px!important;background:rgba(255,255,255,.045)!important;color:#c9ddd5!important;text-decoration:none!important}.global-sidebar>.sidebar-partner-rules:hover{background:rgba(255,255,255,.08)!important;color:#fff!important}
.playbook-measurement>ul{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;padding:0!important;list-style:none!important}.playbook-measurement>ul>li{margin:0!important;padding:11px 12px!important;border:1px solid var(--academy-border)!important;border-radius:8px!important;background:#fff!important;color:#455a51!important;font-size:12.2px!important;line-height:1.5!important}
.traffic-page .page-head h1,.services-page .page-head h1{font-family:Inter,"Segoe UI",Arial,sans-serif!important;font-size:clamp(38px,4vw,52px)!important;line-height:1.05!important;letter-spacing:-.035em!important;color:#19352b!important}.traffic-page .page-head p,.services-page .page-head p{font-family:Inter,"Segoe UI",Arial,sans-serif!important;font-size:15px!important;line-height:1.65!important}.traffic-page h2,.traffic-page h3,.services-page h2,.services-page h3{font-family:Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:-.02em!important}.traffic-source-card h3,.source-card h3,.service-tool h3{font-family:Inter,"Segoe UI",Arial,sans-serif!important}.services-page .service-workflow-head h2{font-size:28px!important}.traffic-page .source-card h3,.traffic-page .traffic-source-card h3{font-size:20px!important;line-height:1.2!important}
.article:not(.source-playbook-article) h1{font-family:Inter,"Segoe UI",Arial,sans-serif!important;font-size:clamp(36px,4.2vw,50px)!important;line-height:1.06!important;letter-spacing:-.035em!important}.article:not(.source-playbook-article) h2{font-family:Inter,"Segoe UI",Arial,sans-serif!important;font-size:25px!important;letter-spacing:-.02em!important}.article:not(.source-playbook-article) h3{font-family:Inter,"Segoe UI",Arial,sans-serif!important}
@media(max-width:900px){.playbook-measurement>ul{grid-template-columns:1fr!important}.traffic-page .page-head h1,.services-page .page-head h1{font-size:34px!important}.article:not(.source-playbook-article) h1{font-size:32px!important}}
.traffic-hub-page .page-head h1{font-family:Inter,"Segoe UI",Arial,sans-serif!important;font-size:clamp(38px,4vw,52px)!important;line-height:1.05!important;letter-spacing:-.035em!important;color:#19352b!important}.traffic-hub-page .page-head p{font-family:Inter,"Segoe UI",Arial,sans-serif!important;font-size:15px!important;line-height:1.65!important}.traffic-hub-page h2,.traffic-hub-page h3{font-family:Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:-.02em!important}.traffic-hub-page .traffic-source-card h3{font-size:20px!important;line-height:1.2!important}
@media(max-width:900px){.traffic-hub-page .page-head h1{font-size:34px!important}}
.source-flow-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0 4px;padding:0}.source-flow-strip>div{position:relative;min-height:108px;padding:12px 11px 11px;border:1px solid var(--academy-border);border-radius:9px;background:#fff}.source-flow-strip>div:not(:last-child):after{content:"›";position:absolute;right:-8px;top:38px;z-index:2;width:16px;height:22px;display:grid;place-items:center;color:#3c8e70;background:var(--academy-page);font-size:22px;font-weight:400}.source-flow-strip span{width:25px;height:25px;display:grid;place-items:center;margin-bottom:8px;border-radius:8px;background:#e9f6f0;color:#17694f;font-size:10px;font-weight:800}.source-flow-strip b{display:block;margin-bottom:3px;color:#284239;font:700 12.5px/1.3 Inter,"Segoe UI",Arial,sans-serif}.source-flow-strip small{display:block;color:#6a7772;font:400 10.8px/1.45 Inter,"Segoe UI",Arial,sans-serif}
@media(max-width:900px){.source-flow-strip{grid-template-columns:1fr 1fr}.source-flow-strip>div:not(:last-child):after{display:none}}
@media(max-width:480px){.source-flow-strip{grid-template-columns:1fr}.source-flow-strip>div{min-height:0}}
@media(max-width:900px){
  .global-sidebar .sidebar-menu a{min-height:36px!important;padding:7px 8px 7px 34px!important;font-size:14px!important;line-height:1.2!important}
  .global-sidebar .sidebar-menu a:before{left:9px!important}
  .global-sidebar .sidebar-group-title{margin:8px 8px 4px!important;font-size:8.5px!important}
  .global-sidebar>.sidebar-partner-cta{padding:9px 10px!important;margin-top:10px!important}
  .global-sidebar>.sidebar-partner-rules{padding:7px 9px!important}
}

/* ======================================================================
   v92 — unified academy shell: top bar, collapsible navigation, article rail
   ====================================================================== */
:root{
  --academy-sidebar:252px;
  --academy-header:60px;
  --academy-rail:292px;
  --academy-page:#f5f7f4;
  --academy-surface:#ffffff;
  --academy-surface-2:#f8faf8;
  --academy-border:#dce5df;
  --academy-text:#182821;
  --academy-muted:#66766f;
  --academy-green:#0d493c;
  --academy-accent:#2aa876;
  --academy-accent-soft:#e9f6f0;
  --academy-shadow:0 10px 30px rgba(26,52,42,.055);
}

/* Top utility bar */
@media(min-width:901px){
  .site-header{
    display:block!important;position:sticky!important;top:0!important;z-index:85!important;
    height:var(--academy-header)!important;margin-left:var(--academy-sidebar)!important;
    background:rgba(255,255,255,.94)!important;border-bottom:1px solid var(--academy-border)!important;
    box-shadow:0 6px 24px rgba(27,54,43,.035)!important;backdrop-filter:blur(12px)
  }
  .site-header .header-inner{height:100%!important;max-width:none!important;padding:0 28px!important;display:flex!important;align-items:center!important;gap:18px!important}
  .site-header .brand{display:none!important}
  .header-tagline{display:flex!important;align-items:baseline;gap:10px;min-width:0;color:#234039}
  .header-tagline b{font-size:13.5px;font-weight:800;letter-spacing:-.01em}
  .header-tagline span{font-size:11px;color:#7a8882;white-space:nowrap}
  .header-actions{display:flex!important;align-items:center;gap:9px;margin-left:auto}
  .header-about-link{display:inline-flex!important;align-items:center;min-height:38px;padding:0 13px;border:1px solid #d9e2dd;border-radius:9px;background:#fff;color:#29473e!important;text-decoration:none!important;font-size:12.5px;font-weight:700}
  .header-about-link:hover{background:#f2f7f4;border-color:#c8d7cf}
  .theme-toggle{display:inline-flex!important;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid #143f34;border-radius:10px;background:#103f34;color:#fff;box-shadow:0 7px 18px rgba(13,73,60,.14);cursor:pointer;font:750 12.5px/1 Inter,"Segoe UI",Arial,sans-serif}
  .theme-toggle:hover{background:#175546;transform:translateY(-1px)}
  .theme-toggle-icon{font-size:17px;line-height:1}
  .site-header .mobile-nav-toggle{display:none!important}
}

/* Sidebar: cleaner search + collapsible sections */
@media(min-width:901px){
  .global-sidebar{top:0!important;bottom:0!important;width:var(--academy-sidebar)!important;padding:18px 14px 20px!important;z-index:100!important}
}
.global-sidebar>.sidebar-search{position:relative!important;margin:0 2px 14px!important}
.global-sidebar>.sidebar-search:before{content:"⌕";position:absolute;left:12px;top:50%;z-index:2;transform:translateY(-52%);color:#8db3a5;font-size:18px;line-height:1;pointer-events:none}
.global-sidebar>.sidebar-search:after{content:"Ctrl K";position:absolute;right:9px;top:50%;transform:translateY(-50%);padding:3px 5px;border:1px solid rgba(255,255,255,.13);border-radius:5px;background:rgba(255,255,255,.05);color:#8eaea3;font:700 8px/1 Inter,"Segoe UI",Arial,sans-serif;pointer-events:none}
.global-sidebar>.sidebar-search input{height:42px!important;padding:0 52px 0 36px!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:10px!important;background:rgba(0,0,0,.16)!important;color:#fff!important;font-size:13.5px!important;transition:border-color .15s,background .15s,box-shadow .15s}
.global-sidebar>.sidebar-search input:focus{background:rgba(255,255,255,.08)!important;border-color:rgba(81,211,162,.5)!important;box-shadow:0 0 0 3px rgba(70,196,148,.11)!important}
.global-sidebar>.sidebar-search input::placeholder{color:#9eb9af!important}
.global-sidebar .sidebar-search .autocomplete-box{top:47px!important;border-radius:10px!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.12)!important;background:#123d34!important;box-shadow:0 18px 38px rgba(0,0,0,.26)!important}
.global-sidebar .sidebar-search .autocomplete-box a{color:#e6f0ec!important;border-color:rgba(255,255,255,.08)!important;background:#123d34!important}
.global-sidebar .sidebar-search .autocomplete-box a:hover{background:#1a4a3f!important}

.sidebar-group{border-radius:9px;overflow:hidden}
.sidebar-group-toggle{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:9px 0 4px!important;padding:5px 8px!important;border:0;background:transparent;color:#83b4a2;
  cursor:pointer;text-align:left;font:800 10px/1.2 Inter,"Segoe UI",Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase
}
.sidebar-group-toggle:hover{color:#b8d8cd;background:rgba(255,255,255,.035)}
.sidebar-group-toggle:after{content:"⌄";font-size:13px;line-height:1;color:#7fa898;transition:transform .17s ease}
.sidebar-group.is-collapsed .sidebar-group-toggle:after{transform:rotate(-90deg)}
.sidebar-group.is-collapsed>.sidebar-menu{display:none!important}
.global-sidebar .sidebar-group-title{display:none!important}
.global-sidebar .sidebar-menu{gap:2px!important}
.global-sidebar .sidebar-menu a{min-height:36px!important;padding:8px 9px 8px 35px!important;font-size:13.5px!important;border-radius:8px!important}
.global-sidebar .sidebar-menu a:before{left:10px!important}
.global-sidebar .sidebar-menu a.active,.global-sidebar .sidebar-menu a[aria-current="page"]{background:rgba(71,201,152,.15)!important;box-shadow:inset 3px 0 0 #4bc89a!important}

/* All article pages now use the same stable two-column layout. */
.article-page main{min-height:calc(100vh - var(--academy-header))}
.article-page .article-layout,
.source-playbook-page .article-layout{
  display:grid!important;grid-template-columns:minmax(0,1fr) var(--academy-rail)!important;gap:30px!important;
  width:100%!important;max-width:1370px!important;margin:0 auto!important;padding:30px 30px 78px!important;align-items:start!important
}
.article-page .article,.source-playbook-page .source-playbook-article{min-width:0!important;max-width:none!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.article-page .article h1{max-width:920px!important;margin:0 0 10px!important;font:800 clamp(32px,3.4vw,44px)/1.08 Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:-.035em!important;color:#162a23!important}
.article-page .article .lead{max-width:900px!important;margin:0 0 16px!important;color:#5e6d67!important;font-size:15.5px!important;line-height:1.62!important}
.article-page .article h2{font:800 22px/1.25 Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:-.02em!important;color:#1d342b!important;margin-top:30px!important}
.article-page .article h3{font:760 16px/1.3 Inter,"Segoe UI",Arial,sans-serif!important;color:#28473c!important}
.article-page .article p,.article-page .article li{font-size:13.8px!important;line-height:1.7!important;color:#53625c!important}
.article-page .article-meta{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:13px 0 14px!important}
.article-page .article-meta span{padding:6px 9px;border:1px solid var(--academy-border);border-radius:7px;background:#fff;color:#6d7a74;font-size:10.5px}
.article-page .article-actions-unified{margin:12px 0 22px!important}
.article-page .article-figure{overflow:hidden!important;border:1px solid var(--academy-border)!important;border-radius:11px!important;background:#fff!important;box-shadow:var(--academy-shadow)!important}
.article-page .article-figure img{display:block;max-width:100%;height:auto;margin:auto}
.article-page .article-figure figcaption{padding:12px 14px 14px!important;border-top:1px solid #e5ebe7;color:#61716a!important;font-size:12.2px!important;line-height:1.6!important}
.article-page .article-figure figcaption strong{color:#29473c!important}
.article-page .inline-note,.article-page .formula-block,.article-page .partner-specific-box{border-radius:10px!important;box-shadow:none!important}

/* Unified right rail. */
.article-aside.enhanced-rail{
  position:sticky!important;top:calc(var(--academy-header) + 18px)!important;display:flex!important;flex-direction:column!important;gap:11px!important;
  width:auto!important;max-height:calc(100vh - var(--academy-header) - 34px)!important;padding:0!important;overflow-y:auto!important;overflow-x:hidden!important;
  background:transparent!important;border:0!important;box-shadow:none!important;scrollbar-width:thin;scrollbar-color:#c9d6cf transparent
}
.article-aside.enhanced-rail>.rail-cover-card{position:relative;overflow:hidden;border:1px solid var(--academy-border);border-radius:12px;background:#fff;box-shadow:var(--academy-shadow)}
.rail-cover-card>img{display:block;width:100%;height:126px;object-fit:contain;padding:8px;background:linear-gradient(145deg,#eef6f1,#f8faf8)}
.rail-cover-copy{padding:10px 12px 12px;border-top:1px solid #e4ebe7}
.rail-cover-copy span{display:block;margin-bottom:3px;color:#2d8d69;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.09em}
.rail-cover-copy b{display:block;color:#223a31;font-size:12px;line-height:1.35}
.article-aside.enhanced-rail .aside-block{display:flex!important;flex-direction:column!important;padding:13px!important;border:1px solid var(--academy-border)!important;border-radius:11px!important;background:#fff!important;box-shadow:0 7px 22px rgba(34,62,51,.035)!important}
.article-aside.enhanced-rail .aside-block>b{margin:0 0 9px!important;color:#264338!important;font-size:12.5px!important;letter-spacing:0!important;text-transform:none!important}
.rail-toc ol{counter-reset:railtoc;margin:0!important;padding:0!important;list-style:none!important}
.rail-toc li{counter-increment:railtoc;margin:0!important}
.rail-toc li a{display:grid!important;grid-template-columns:20px 1fr!important;gap:4px!important;padding:5px 1px!important;color:#5d6d66!important;text-decoration:none!important;font-size:10.8px!important;line-height:1.35!important}
.rail-toc li a:before{content:counter(railtoc) ".";color:#8ba099;font-size:9.5px;font-weight:700}
.rail-toc li a:hover,.rail-toc li a.is-current{color:#176348!important}
.rail-progress{height:4px;margin:0 0 7px;border-radius:99px;background:#e9efeb;overflow:hidden}.rail-progress span{display:block;width:0;height:100%;border-radius:inherit;background:#2fb27f;transition:width .12s linear}
.rail-tools>a:not(.rail-all-tools){display:flex!important;align-items:center!important;gap:9px!important;padding:8px 0!important;border-top:1px solid #edf1ee!important;text-decoration:none!important}.rail-tools>a:first-of-type{border-top:0!important}.rail-tool-mark{flex:0 0 31px;width:31px!important;height:31px!important;display:grid;place-items:center;border-radius:8px!important;background:#e9f6f0!important;color:#187150!important;font-size:9px!important;font-weight:900!important}.rail-tools a>span:last-child{min-width:0}.rail-tools a b{display:block;color:#2d453b;font-size:11.5px}.rail-tools a small{display:block;margin-top:1px;color:#7b8983;font-size:9.3px}.rail-all-tools{margin-top:7px;padding:7px 9px;border:1px solid #cdded5;border-radius:7px;color:#176348;text-align:center;text-decoration:none;font-size:10px;font-weight:750}
.rail-quick a{display:block;padding:8px 9px;margin-top:6px;border-radius:8px;background:#f4f8f5;text-decoration:none}.rail-quick a strong{display:block;color:#2b493d;font-size:10.8px}.rail-quick a small{display:block;margin-top:2px;color:#7a8781;font-size:9.2px;line-height:1.4}
.rail-related-visual>a{display:grid!important;grid-template-columns:58px 1fr!important;gap:8px!important;align-items:center!important;padding:8px 0!important;border-top:1px solid #edf1ee!important;text-decoration:none!important}.rail-related-visual>a:first-of-type{border-top:0!important}.rail-related-visual img{width:58px!important;height:45px!important;padding:3px;object-fit:contain;border:1px solid #e1e9e4;border-radius:7px;background:#f5f8f6}.rail-related-visual span{color:#50645b!important;font-size:10.4px!important;line-height:1.35!important}.rail-related-visual a:hover span{color:#176348!important}

/* Mobile top bar and compact navigation */
@media(max-width:900px){
  :root{--academy-header:64px}
  .site-header{display:block!important;position:sticky!important;top:0!important;z-index:110!important;height:var(--academy-header)!important;margin:0!important;background:#0d4036!important;border-bottom:1px solid rgba(255,255,255,.09)!important;box-shadow:0 5px 20px rgba(0,0,0,.13)!important}
  .site-header .header-inner{height:100%!important;display:flex!important;align-items:center!important;gap:8px!important;padding:0 11px!important;max-width:none!important}
  .site-header .brand{display:flex!important;min-width:0!important;gap:8px!important}.site-header .brand-mark{width:35px!important;height:35px!important;border-radius:8px!important}.site-header .brand-text{min-width:0}.site-header .brand-text b{display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:750 13px/1.1 Inter,"Segoe UI",Arial,sans-serif!important}.site-header .brand-text small{display:none!important}
  .header-tagline,.header-about-link{display:none!important}.header-actions{display:flex!important;margin-left:auto!important}.theme-toggle{display:grid!important;place-items:center;width:39px;height:39px;padding:0!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:9px!important;background:rgba(255,255,255,.08)!important;color:#fff!important}.theme-toggle [data-theme-label]{display:none!important}.theme-toggle-icon{font-size:17px}
  .site-header .mobile-nav-toggle{display:inline-flex!important;min-height:39px!important;padding:0 10px!important;border:1px solid rgba(255,255,255,.17)!important;border-radius:9px!important;background:rgba(255,255,255,.07)!important;color:#fff!important;font-size:12px!important}
  .global-sidebar{top:var(--academy-header)!important;width:min(300px,calc(100vw - 30px))!important;max-width:min(300px,calc(100vw - 30px))!important;padding:12px 12px max(18px,env(safe-area-inset-bottom))!important}
  .global-sidebar .sidebar-brand{display:none!important}
  .global-sidebar>.sidebar-search input{height:42px!important;font-size:16px!important}
  .global-sidebar>.sidebar-search:after{display:none}
  .sidebar-group-toggle{font-size:10.5px!important;margin-top:7px!important}
  .global-sidebar .sidebar-menu a{min-height:38px!important;padding:8px 9px 8px 35px!important;font-size:14.2px!important}
  .article-page .article-layout,.source-playbook-page .article-layout{display:block!important;padding:20px 15px 60px!important}
  .article-aside.enhanced-rail{display:none!important}
  .article-page .article h1{font-size:30px!important}.article-page .article h2{font-size:20px!important}
  main,.site-footer{margin-left:0!important}
}
@media(max-width:430px){
  .site-header .brand-text b{max-width:116px;font-size:12px!important}.site-header .mobile-nav-toggle span:last-child{display:none}.site-header .mobile-nav-toggle{width:39px!important;padding:0!important;justify-content:center}.global-sidebar{width:min(292px,calc(100vw - 24px))!important;max-width:min(292px,calc(100vw - 24px))!important}
}
@media(max-width:900px){
  .site-header .header-about-link{display:grid!important;place-items:center!important;width:39px;height:39px;padding:0!important;border:1px solid rgba(255,255,255,.17)!important;border-radius:9px!important;background:rgba(255,255,255,.07)!important;color:#fff!important;text-decoration:none!important;font-size:0!important}
  .site-header .header-about-link:before{content:"i";font:800 15px/1 Inter,"Segoe UI",Arial,sans-serif}
}

/* ======================================================================
   v93 — stable shell, compact accordion navigation and full dark theme
   ====================================================================== */
:root{
  --academy-sidebar:248px;
  --academy-header:58px;
  --academy-rail:280px;
  --academy-page:#f4f7f5;
  --academy-surface:#ffffff;
  --academy-surface-2:#f7faf8;
  --academy-border:#dbe5df;
  --academy-text:#172a22;
  --academy-muted:#65756e;
  --academy-green:#0c4a3b;
  --academy-accent:#32b67f;
  --academy-accent-soft:#e9f6f0;
}
html,body{width:100%;max-width:100%;overflow-x:hidden}
img,svg,video,canvas,iframe{max-width:100%}
main,.site-footer,.wrap,.article-layout,.article,.source-playbook-article{min-width:0}
.article table,.compare-table,.rules-table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.article pre{max-width:100%;overflow-x:auto}

/* Logo extracted from the approved reference mockup. */
.brand-logo,.sidebar-brand-logo{display:block;object-fit:contain;flex:0 0 auto}
.sidebar-brand-logo{width:43px;height:38px}
.brand-logo{width:38px;height:34px}
.sidebar-brand-mark,.brand-mark{display:none!important}

/* Desktop: the name lives only in the sidebar. The top bar is utility-only. */
@media(min-width:901px){
  .site-header{
    display:block!important;position:sticky!important;top:0!important;left:auto!important;right:0!important;
    width:calc(100% - var(--academy-sidebar))!important;height:var(--academy-header)!important;
    margin-left:var(--academy-sidebar)!important;z-index:85!important;
    background:rgba(255,255,255,.96)!important;border-bottom:1px solid var(--academy-border)!important;
    box-shadow:0 5px 20px rgba(26,52,42,.035)!important;backdrop-filter:blur(12px)
  }
  .site-header .header-inner{height:100%!important;max-width:none!important;padding:0 22px!important;display:flex!important;align-items:center!important;gap:14px!important}
  .site-header .brand{display:none!important}
  .header-tagline{display:flex!important;align-items:center!important;min-width:0!important;color:#52665e!important}
  .header-tagline span{font-size:12.5px!important;font-weight:650!important;color:#52665e!important;white-space:nowrap!important}
  .header-actions{display:flex!important;align-items:center!important;gap:8px!important;margin-left:auto!important}
  .header-about-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;padding:0 13px!important;border:1px solid #d6e1db!important;border-radius:10px!important;background:#fff!important;color:#29473e!important;text-decoration:none!important;font-size:12.5px!important;font-weight:750!important}
  .theme-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:40px!important;padding:0 14px!important;border:1px solid #0d493c!important;border-radius:10px!important;background:#0d493c!important;color:#fff!important;box-shadow:0 7px 18px rgba(13,73,60,.14)!important;font-size:12.5px!important;font-weight:780!important}
  .site-header .mobile-nav-toggle{display:none!important}
  .global-sidebar{
    position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:var(--academy-sidebar)!important;max-width:var(--academy-sidebar)!important;
    padding:15px 13px 15px!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;
    background:linear-gradient(180deg,#0d493d 0%,#092f29 100%)!important;border-right:1px solid rgba(255,255,255,.08)!important;box-shadow:7px 0 26px rgba(8,38,31,.09)!important
  }
  main,.site-footer{margin-left:var(--academy-sidebar)!important;width:auto!important;max-width:none!important}
}

.sidebar-brand{display:flex!important;align-items:center!important;gap:10px!important;margin:0 2px 12px!important;padding:2px 4px 12px!important;border-bottom:1px solid rgba(255,255,255,.12)!important;color:#fff!important;text-decoration:none!important}
.sidebar-brand>span:last-child{display:flex!important;min-width:0!important;flex-direction:column!important;line-height:1.04!important}
.sidebar-brand b,.sidebar-brand strong{color:#fff!important;font-size:14.5px!important;line-height:1.08!important;letter-spacing:-.012em!important}
.sidebar-brand small{margin-top:4px!important;color:#9fc1b5!important;font-size:8.7px!important;letter-spacing:.035em!important;text-transform:none!important}

/* Search stays readable and never steals horizontal space. */
.global-sidebar>.sidebar-search{position:relative!important;margin:0 2px 11px!important;width:auto!important;min-width:0!important}
.global-sidebar>.sidebar-search:before{content:""!important;width:14px;height:14px;left:12px!important;top:50%!important;transform:translateY(-50%)!important;border:1.8px solid #8eb7a8;border-radius:50%;box-sizing:border-box}
.global-sidebar>.sidebar-search:after{content:""!important;position:absolute!important;left:23px!important;right:auto!important;top:25px!important;width:6px!important;height:1.8px!important;padding:0!important;border:0!important;border-radius:2px!important;background:#8eb7a8!important;transform:rotate(45deg)!important}
.global-sidebar>.sidebar-search input{display:block!important;width:100%!important;min-width:0!important;height:40px!important;padding:0 11px 0 35px!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:10px!important;background:rgba(0,0,0,.14)!important;color:#fff!important;font-size:13.5px!important;outline:0!important}
.global-sidebar>.sidebar-search input::placeholder{color:#a8c4ba!important}
.global-sidebar>.sidebar-search input:focus{border-color:rgba(83,214,165,.55)!important;background:rgba(255,255,255,.075)!important;box-shadow:0 0 0 3px rgba(65,192,145,.1)!important}
.global-sidebar .sidebar-search .autocomplete-box{left:0!important;right:0!important;top:45px!important;width:auto!important;max-width:100%!important}

/* Keep the left navigation compact without shrinking the type. */
.global-sidebar>.sidebar-mode-compact{display:none!important}
.global-sidebar .sidebar-group{margin:2px 0 5px!important;border-radius:9px!important;overflow:visible!important}
.sidebar-group-toggle{width:100%!important;min-height:32px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin:0!important;padding:6px 7px!important;border:0!important;border-radius:7px!important;background:transparent!important;color:#88b8a7!important;text-align:left!important;font:800 10.5px/1.2 Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:.075em!important;text-transform:uppercase!important;cursor:pointer!important}
.sidebar-group-toggle:hover{background:rgba(255,255,255,.045)!important;color:#c5ded5!important}
.sidebar-group-toggle:after{content:"⌄"!important;color:#85af9f!important;font-size:14px!important;transition:transform .15s ease!important}
.sidebar-group.is-collapsed .sidebar-group-toggle:after{transform:rotate(-90deg)!important}
.sidebar-group.is-collapsed>.sidebar-menu{display:none!important}
.global-sidebar .sidebar-group-title{display:none!important}
.global-sidebar .sidebar-menu{display:flex!important;flex-direction:column!important;gap:1px!important;white-space:normal!important}
.global-sidebar .sidebar-menu a{position:relative!important;display:flex!important;align-items:center!important;min-width:0!important;min-height:35px!important;padding:7px 8px 7px 31px!important;border-radius:8px!important;background:transparent!important;color:#dce9e4!important;font-size:14px!important;font-weight:540!important;line-height:1.22!important;text-decoration:none!important;white-space:normal!important;overflow-wrap:anywhere!important}
.global-sidebar .sidebar-menu a:before{left:9px!important;width:14px!important;height:14px!important;opacity:.74!important}
.global-sidebar .sidebar-menu a:hover{background:rgba(255,255,255,.065)!important;color:#fff!important}
.global-sidebar .sidebar-menu a.active,.global-sidebar .sidebar-menu a[aria-current="page"]{background:rgba(74,201,153,.16)!important;color:#fff!important;font-weight:720!important;box-shadow:inset 3px 0 0 #4bc99a!important}
.global-sidebar>.sidebar-partner-cta{margin:9px 2px 0!important;padding:10px 11px!important;border:1px solid rgba(86,207,160,.28)!important;border-radius:9px!important;background:rgba(49,164,122,.11)!important}
.global-sidebar>.sidebar-partner-cta span{font-size:8px!important}.global-sidebar>.sidebar-partner-cta b{font-size:13.5px!important}.global-sidebar>.sidebar-partner-cta small{font-size:9px!important}
.global-sidebar>.sidebar-partner-rules{margin:6px 2px 0!important;padding:7px 8px!important;border-color:rgba(255,255,255,.1)!important;background:rgba(255,255,255,.035)!important;color:#bdd4cb!important;font-size:10.5px!important}
.global-sidebar>.sidebar-bottom{margin-top:8px!important;padding:8px 7px 0!important;border-top:1px solid rgba(255,255,255,.09)!important}
.global-sidebar>.sidebar-bottom a{display:none!important}.global-sidebar>.sidebar-bottom small{margin:0!important;color:#7fa598!important;font-size:9px!important}

/* Article shell must stay inside the viewport at every desktop width. */
.article-page .article-layout,.source-playbook-page .article-layout{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(248px,var(--academy-rail))!important;gap:24px!important;
  width:100%!important;max-width:1320px!important;margin:0 auto!important;padding:26px clamp(18px,2.2vw,30px) 72px!important;align-items:start!important
}
.article-page .article,.source-playbook-page .source-playbook-article,.article-aside.enhanced-rail{min-width:0!important;max-width:100%!important}
.article-figure,.article-figure img,.source-visual-pair,.source-journey-grid,.playbook-format-list,.playbook-steps,.source-toolkit-grid{max-width:100%!important}
.article-figure img{width:auto;max-width:100%!important;height:auto!important}

@media(min-width:901px) and (max-width:1180px){
  :root{--academy-sidebar:236px;--academy-rail:248px}
  .article-page .article-layout,.source-playbook-page .article-layout{gap:18px!important;padding-left:18px!important;padding-right:18px!important}
  .article-aside.enhanced-rail .aside-block{padding:11px!important}
}

/* Mobile header: logo + one brand instance. The drawer contains navigation only. */
@media(max-width:900px){
  :root{--academy-header:58px;--academy-sidebar:0px}
  .site-header{display:block!important;position:sticky!important;top:0!important;left:0!important;right:0!important;width:100%!important;height:var(--academy-header)!important;margin:0!important;z-index:120!important;background:#0d493d!important;border-bottom:1px solid rgba(255,255,255,.1)!important;box-shadow:0 5px 18px rgba(0,0,0,.14)!important}
  .site-header .header-inner{height:100%!important;width:100%!important;max-width:none!important;padding:0 10px!important;display:flex!important;align-items:center!important;gap:6px!important;overflow:hidden!important}
  .site-header .brand{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;flex:1 1 auto!important;color:#fff!important;text-decoration:none!important}
  .site-header .brand-logo{width:34px!important;height:31px!important;flex:0 0 34px!important}
  .site-header .brand-text{display:block!important;min-width:0!important;line-height:1.04!important}
  .site-header .brand-text b{display:block!important;max-width:145px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#fff!important;font:760 12.5px/1.1 Inter,"Segoe UI",Arial,sans-serif!important}
  .site-header .brand-text small{display:none!important}
  .header-tagline{display:none!important}
  .header-actions{display:flex!important;align-items:center!important;gap:5px!important;margin-left:auto!important;flex:0 0 auto!important}
  .site-header .header-about-link,.site-header .theme-toggle,.site-header .mobile-nav-toggle{display:inline-grid!important;place-items:center!important;width:37px!important;height:37px!important;min-width:37px!important;min-height:37px!important;padding:0!important;border:1px solid rgba(255,255,255,.17)!important;border-radius:9px!important;background:rgba(255,255,255,.075)!important;color:#fff!important;box-shadow:none!important}
  .site-header .header-about-link{font-size:0!important}.site-header .header-about-link:before{content:"i";font:800 14px/1 Inter,"Segoe UI",Arial,sans-serif!important}
  .site-header .theme-toggle [data-theme-label]{display:none!important}.site-header .theme-toggle-icon{font-size:16px!important}
  .site-header .mobile-nav-toggle span:last-child{display:none!important}.site-header .mobile-nav-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important}
  .global-sidebar{position:fixed!important;left:0!important;top:var(--academy-header)!important;bottom:0!important;width:min(318px,88vw)!important;max-width:min(318px,88vw)!important;height:auto!important;padding:11px 11px max(17px,env(safe-area-inset-bottom))!important;overflow-x:hidden!important;overflow-y:auto!important;transform:translateX(-104%);transition:transform .2s ease!important;z-index:115!important;background:linear-gradient(180deg,#0d493d,#092f29)!important;border-right:1px solid rgba(255,255,255,.08)!important;box-shadow:12px 0 30px rgba(0,0,0,.22)!important}
  body.mobile-nav-open .global-sidebar{transform:translateX(0)!important}
  .global-sidebar .sidebar-brand{display:none!important}
  .global-sidebar>.sidebar-search{margin-bottom:8px!important}.global-sidebar>.sidebar-search input{height:40px!important;font-size:16px!important}
  .sidebar-group-toggle{min-height:34px!important;padding:7px!important;font-size:10.5px!important}
  .global-sidebar .sidebar-menu a{min-height:38px!important;padding:8px 8px 8px 31px!important;font-size:14.5px!important;line-height:1.2!important}
  .global-sidebar>.sidebar-partner-cta{margin-top:8px!important;padding:9px 10px!important}.global-sidebar>.sidebar-partner-cta small{display:none!important}
  .global-sidebar>.sidebar-bottom{display:none!important}
  main,.site-footer{margin-left:0!important;width:100%!important;max-width:100%!important}
  .article-page .article-layout,.source-playbook-page .article-layout{display:block!important;width:100%!important;max-width:100%!important;padding:18px 14px 56px!important;margin:0!important}
  .article-aside.enhanced-rail,.source-playbook-page .article-aside{display:none!important}
  .wrap{width:100%!important;max-width:100%!important;padding-left:14px!important;padding-right:14px!important}
  .home-welcome-grid,.home-section-title-split,.home-results-inner,.page-head-grid,.split-section,.about-grid,.field-case-grid{grid-template-columns:minmax(0,1fr)!important}
  .home-entry-grid,.home-source-grid,.knowledge-map,.rules-summary-grid,.rules-model-grid,.geo-chip-grid,.playbook-checklist,.platform-setup,.playbook-format-list,.playbook-steps,.traffic-diagnostic-list,.source-toolkit-grid,.source-journey-grid,.source-visual-pair{grid-template-columns:minmax(0,1fr)!important}
}
@media(max-width:420px){
  .site-header .brand-text b{max-width:106px!important;font-size:12px!important}
  .site-header .header-about-link,.site-header .theme-toggle,.site-header .mobile-nav-toggle{width:35px!important;height:35px!important;min-width:35px!important;min-height:35px!important}
  .global-sidebar{width:min(304px,91vw)!important;max-width:min(304px,91vw)!important}
}

/* v93: tablet safety + dark-mode catch-all for older component names. */
@media(min-width:901px) and (max-width:1120px){
  .article-page .article-layout,.source-playbook-page .article-layout{display:block!important;max-width:860px!important;margin:0 auto!important}
  .article-aside.enhanced-rail,.source-playbook-page .article-aside{display:none!important}
}






/* =========================================================
   v95 — dense course layout aligned to the approved reference
   ========================================================= */
:root{--academy-sidebar:232px;--academy-rail:288px;--academy-gap:20px;--academy-soft:#f2f7f4;--academy-line:#dfe8e2;--academy-shadow-soft:0 8px 28px rgba(27,63,49,.045)}
*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden}
@media(min-width:901px){
 :root{--academy-header:46px}
 .site-header{display:block!important;position:fixed!important;top:0!important;left:var(--academy-sidebar)!important;right:0!important;width:auto!important;height:var(--academy-header)!important;z-index:96!important;background:rgba(250,252,250,.96)!important;border-bottom:1px solid var(--academy-line)!important;box-shadow:none!important;backdrop-filter:blur(12px)}
 .site-header .header-inner{height:100%!important;max-width:none!important;padding:0 22px!important;display:flex!important;align-items:center!important;gap:14px!important}.site-header .brand{display:none!important}.site-header .header-tagline{display:flex!important;align-items:center!important;min-width:0!important;color:#65756d!important;font-size:12px!important}.site-header .header-actions{display:flex!important;align-items:center!important;gap:8px!important;margin-left:auto!important}.site-header .header-about-link,.site-header .theme-toggle{min-height:32px!important;padding:0 11px!important;border:1px solid #d9e4de!important;border-radius:8px!important;background:#fff!important;color:#315046!important;font-size:11.5px!important;font-weight:700!important;box-shadow:none!important}.site-header .mobile-nav-toggle{display:none!important}
 .global-sidebar{top:0!important;width:var(--academy-sidebar)!important;padding:15px 12px 18px!important}main,.site-footer{margin-left:var(--academy-sidebar)!important}main{padding-top:var(--academy-header)!important}
}
.global-sidebar>.sidebar-search{margin:0 2px 10px!important}.global-sidebar>.sidebar-search input{height:38px!important;border-radius:9px!important;font-size:13px!important}.global-sidebar .sidebar-menu a{min-height:34px!important;padding-top:7px!important;padding-bottom:7px!important;font-size:13.6px!important;line-height:1.18!important}.sidebar-group-toggle{min-height:30px!important;margin-top:2px!important}.global-sidebar>.sidebar-partner-cta{margin-top:9px!important;padding:9px 10px!important}.global-sidebar>.sidebar-partner-rules{margin-top:5px!important}
.article-page .article-layout,.source-playbook-page .article-layout{display:grid!important;grid-template-columns:minmax(0,1fr) var(--academy-rail)!important;gap:var(--academy-gap)!important;width:min(100%,1290px)!important;max-width:1290px!important;margin:0 auto!important;padding:20px 20px 58px!important;align-items:start!important}.article-page .article,.source-playbook-page .source-playbook-article{min-width:0!important;width:100%!important;padding:0!important}.article-aside.enhanced-rail{position:static!important;top:auto!important;align-self:start!important;width:100%!important;max-height:none!important;overflow:visible!important;display:flex!important;flex-direction:column!important;gap:10px!important;padding:0!important}.article-aside.enhanced-rail .rail-feature-card{order:20!important;margin-top:0!important}
.article-page .breadcrumbs{margin:0 0 11px!important;font-size:11px!important;color:#809089!important}.academy-article-hero,.source-hero-shell{margin:0 0 14px!important;padding:0 0 13px!important;border-bottom:1px solid var(--academy-line)!important}.academy-article-hero-main{display:grid!important;grid-template-columns:74px minmax(0,1fr)!important;gap:14px!important;align-items:center!important}.academy-article-hero-visual{width:74px;height:66px;display:grid;place-items:center;padding:7px;border:1px solid #dbe7e0;border-radius:12px;background:linear-gradient(145deg,#f4faf6,#fff);overflow:hidden}.academy-article-hero-visual img{display:block;width:100%;height:100%;object-fit:contain}.academy-article-hero-copy .article-label,.source-title-copy .article-label{margin:0 0 5px!important;color:#258260!important;font-size:10px!important;font-weight:800!important;letter-spacing:.055em!important;text-transform:uppercase!important}.article-page .article h1,.source-playbook-article h1{margin:0!important;color:#13251f!important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:clamp(27px,2.3vw,36px)!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:790!important}.academy-article-hero .lead,.source-hero-shell>.lead{max-width:900px!important;margin:8px 0 0!important;color:#5d6e66!important;font-size:14px!important;line-height:1.55!important}.academy-article-hero-foot{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-top:10px!important}.academy-article-hero .article-meta{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin:0!important}.academy-article-hero .article-meta span{padding:5px 8px!important;border:1px solid var(--academy-line)!important;border-radius:7px!important;background:#fff!important;font-size:10.5px!important}.academy-article-hero .article-actions{margin:0!important;display:flex!important;gap:6px!important}.academy-article-hero .article-actions>*{min-height:30px!important;padding:6px 9px!important;border-radius:7px!important;font-size:10.5px!important}
.source-title-row{display:grid!important;grid-template-columns:52px minmax(0,1fr) 108px!important;gap:12px!important;align-items:center!important;margin:0!important}.source-hero-icon{width:50px!important;height:50px!important;display:grid!important;place-items:center!important;margin:0!important;border-radius:12px!important;font-size:12px!important;font-weight:900!important;box-shadow:none!important}.source-title-visual{width:108px;height:66px;padding:5px;border:1px solid #dce7e1;border-radius:10px;background:#f5f8f6;overflow:hidden}.source-title-visual img{width:100%;height:100%;object-fit:contain;display:block}.source-hero-shell>.lead{margin:8px 0 9px!important}.playbook-facts,.source-playbook-article>.playbook-facts{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin:8px 0!important}.playbook-facts>div,.source-playbook-article>.playbook-facts>div{min-height:52px!important;padding:8px 10px!important;border:1px solid #dce7e1!important;border-radius:9px!important;background:#fff!important}.playbook-facts dt{font-size:9px!important;color:#75877f!important;text-transform:uppercase!important;letter-spacing:.05em!important}.playbook-facts dd{margin-top:3px!important;color:#244239!important;font-size:11.3px!important;line-height:1.35!important;font-weight:720!important}.playbook-risk{display:grid!important;grid-template-columns:auto 1fr!important;gap:9px!important;align-items:start!important;margin:8px 0!important;padding:9px 11px!important;border:1px solid #e6ddc7!important;border-radius:9px!important;background:#fbf7ec!important}.playbook-risk b{font-size:10.5px!important;color:#8d6222!important}.playbook-risk p{margin:0!important;font-size:11.2px!important;line-height:1.45!important}.source-section-tabs{margin:9px 0 0!important;padding:0!important;border-bottom:1px solid #dfe7e2!important;gap:1px!important}.source-section-tabs a{padding:7px 9px!important;border-radius:0!important;border-bottom:2px solid transparent!important;background:transparent!important;color:#5c6d65!important;font-size:10.7px!important}.source-section-tabs a:hover,.source-section-tabs a.is-current{background:transparent!important;color:#166247!important;border-bottom-color:#31a879!important}
.source-playbook-article>section{padding:14px 0 15px!important;margin:0!important;border-bottom:1px solid #e7ede9!important}.source-playbook-article>section:last-of-type{border-bottom:0!important}.source-playbook-article h2,.academy-content-section>h2,.article-page .article section>h2{margin:0 0 8px!important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:19px!important;line-height:1.2!important;letter-spacing:-.018em!important;color:#19372d!important}.source-playbook-article h3,.article-page .article h3{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:14.5px!important;line-height:1.25!important;color:#23443a!important}.source-playbook-article p,.article-page .article p,.article-page .article li,.article-page .article dd{font-size:13.2px!important;line-height:1.58!important}.source-playbook-article p,.academy-content-section p{margin:6px 0!important}
.academy-content-section{margin:10px 0!important;padding:15px 16px!important;border:1px solid #e0e8e3!important;border-radius:11px!important;background:#fff!important;box-shadow:var(--academy-shadow-soft)!important}.academy-content-section>:first-child{margin-top:0!important}.academy-content-section>:last-child{margin-bottom:0!important}.partner-specific-box,.related-reading,.rules-action-box,.geo-directory,.rules-model-grid section,.rules-summary-grid>div{border-radius:11px!important;box-shadow:none!important}.inline-note,.formula-block{margin:10px 0!important;padding:11px 13px!important;border-radius:9px!important}pre{margin:10px 0!important;padding:12px 13px!important;border-radius:9px!important;font-size:12px!important;line-height:1.5!important}
.article-page .article-figure.compact:not(.source-journey-card){display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(230px,.85fr)!important;align-items:stretch!important;gap:0!important;max-width:none!important;margin:11px 0 3px!important;border:1px solid #dfe7e2!important;border-radius:10px!important;overflow:hidden!important;background:#fff!important;box-shadow:none!important}.article-page .article-figure.compact:not(.source-journey-card)>img{width:100%!important;height:100%!important;min-height:190px!important;max-height:330px!important;object-fit:contain!important;padding:10px!important;background:#f7f9f7!important;border-radius:0!important}.article-page .article-figure.compact:not(.source-journey-card)>figcaption{display:flex!important;flex-direction:column!important;justify-content:center!important;padding:14px 15px!important;border:0!important;border-left:1px solid #e2e9e5!important;color:#5d6e66!important;font-size:11.8px!important;line-height:1.55!important}.article-page .article-figure.compact:not(.source-journey-card)>figcaption strong{display:block!important;margin-bottom:5px!important;color:#24463a!important;font-size:12.5px!important;line-height:1.35!important}
.source-visual-section{padding-top:14px!important}.source-visual-section>h2{margin-bottom:9px!important}.source-journey-grid{gap:9px!important}.source-journey-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))!important}.source-journey-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))!important}.source-journey-card.article-figure{display:flex!important;flex-direction:column!important;min-width:0!important;border-radius:9px!important;box-shadow:none!important}.source-journey-card img{width:100%!important;height:126px!important;padding:5px!important;object-fit:contain!important;background:#f6f8f6!important}.source-journey-card figcaption{flex:1!important;padding:8px 9px 10px!important;font-size:10.8px!important;line-height:1.45!important}.source-journey-card figcaption strong{font-size:11.6px!important}
.playbook-checklist,.platform-setup{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin:8px 0!important}.playbook-checklist li,.platform-setup>div{min-height:0!important;padding:9px 10px!important;border-radius:9px!important;font-size:11.6px!important;line-height:1.45!important}.playbook-format-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:8px 0!important}.playbook-format-list>div{padding:11px!important;border-radius:9px!important}.playbook-format-list dt{font-size:12px!important;line-height:1.35!important}.playbook-format-list dd{margin-top:5px!important;font-size:11.2px!important;line-height:1.48!important}.playbook-format-list dt span{font-size:8.5px!important}.playbook-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:8px 0!important}.playbook-steps>li{min-height:0!important;padding:10px!important;border-radius:9px!important}.playbook-steps h3{font-size:12.4px!important}.playbook-steps p{font-size:11.2px!important;line-height:1.45!important}.playbook-steps>li>span{width:26px!important;height:26px!important;font-size:10px!important}.traffic-diagnostic-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:8px 0!important}.traffic-diagnostic-list li{padding:10px 11px!important;border-radius:9px!important;font-size:11.4px!important;line-height:1.5!important}.source-toolkit-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:8px 0!important}.source-tool-card{padding:11px!important;border-radius:9px!important}.source-tool-card-copy{font-size:10.9px!important;line-height:1.45!important}.source-tool-card-action{font-size:10px!important}.playbook-faq details{margin:6px 0!important;border-radius:9px!important}.playbook-faq summary{padding:10px 12px!important;font-size:11.8px!important}.playbook-faq details p{padding:0 12px 10px!important;font-size:11.2px!important}
.article table{width:100%!important;margin:9px 0!important;border-collapse:separate!important;border-spacing:0!important;border:1px solid #dfe7e2!important;border-radius:9px!important;overflow:hidden!important;font-size:11.5px!important}.article th,.article td{padding:8px 9px!important}.article th{background:#f3f7f4!important}.rules-summary-grid,.rules-model-grid{gap:8px!important;margin:10px 0!important}.rules-summary-grid>div,.rules-model-grid section{padding:12px!important}.rules-summary-grid b{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:17px!important}.geo-directory{margin:12px 0!important;padding:15px!important}.geo-chip-grid{gap:6px!important}.geo-chip-grid li{min-height:42px!important;padding:8px 9px!important;border-radius:8px!important}
.article-aside.enhanced-rail .aside-block,.article-aside.enhanced-rail>.rail-feature-card{border:1px solid #dfe7e2!important;border-radius:11px!important;background:#fff!important;box-shadow:var(--academy-shadow-soft)!important}.article-aside.enhanced-rail .aside-block{padding:12px!important}.article-aside.enhanced-rail .aside-block>b{margin-bottom:8px!important;font-size:12px!important}.rail-progress{height:3px!important;margin-bottom:7px!important}.rail-toc li a{grid-template-columns:18px 1fr!important;padding:5px 0!important;font-size:10.6px!important;line-height:1.35!important}.rail-toc li a:before{font-size:9px!important}.rail-tools>a:not(.rail-all-tools){padding:7px 0!important}.rail-tool-mark{width:30px!important;height:30px!important;flex-basis:30px!important}.rail-tools a b{font-size:11.2px!important}.rail-tools a small{font-size:9.1px!important}.rail-related-visual>a{grid-template-columns:66px 1fr!important;gap:8px!important;padding:7px 0!important}.rail-related-visual img{width:66px!important;height:48px!important;padding:3px!important}.rail-related-visual span{font-size:10.4px!important;line-height:1.35!important}.rail-feature-card{overflow:hidden!important}.rail-feature-card>img{height:105px!important;padding:6px!important;object-fit:contain!important;background:linear-gradient(145deg,#eef6f1,#fbfcfb)!important}.rail-feature-card .rail-cover-copy{padding:9px 10px 10px!important}.rail-feature-card .rail-cover-copy b{font-size:10.8px!important;line-height:1.35!important}.rail-feature-card .rail-cover-copy span{font-size:8px!important}
.related-reading{margin:11px 0!important;padding:14px!important}.related-reading h2{font-size:17px!important}.related-primary{padding:10px!important}.article-exit-nav{margin:12px 0 0!important;padding-top:10px!important;gap:6px!important}.article-exit-nav a{font-size:10.5px!important;padding:7px 9px!important}

@media(max-width:1260px) and (min-width:901px){:root{--academy-rail:260px;--academy-gap:16px}.article-page .article-layout,.source-playbook-page .article-layout{width:100%!important;max-width:1100px!important;padding-left:16px!important;padding-right:16px!important}.source-title-row{grid-template-columns:48px minmax(0,1fr)!important}.source-title-visual{display:none!important}.source-journey-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:1080px) and (min-width:901px){.article-page .article-layout,.source-playbook-page .article-layout{display:block!important;max-width:860px!important}.article-aside.enhanced-rail{display:none!important}}
@media(max-width:900px){.article-page .article-layout,.source-playbook-page .article-layout{display:block!important;padding:15px 13px 48px!important;max-width:760px!important;margin:0 auto!important}.academy-article-hero-main{grid-template-columns:54px minmax(0,1fr)!important;gap:10px!important}.academy-article-hero-visual{width:54px;height:50px;padding:5px!important}.article-page .article h1,.source-playbook-article h1{font-size:26px!important}.academy-article-hero .lead,.source-hero-shell>.lead{font-size:13.2px!important}.academy-article-hero-foot{align-items:flex-start!important;flex-direction:column!important}.source-title-row{grid-template-columns:45px minmax(0,1fr)!important;gap:9px!important}.source-hero-icon{width:44px!important;height:44px!important}.source-title-visual{display:none!important}.playbook-facts,.source-playbook-article>.playbook-facts{grid-template-columns:1fr!important}.source-playbook-article>section{padding:13px 0!important}.playbook-checklist,.platform-setup,.playbook-format-list,.playbook-steps,.traffic-diagnostic-list,.source-toolkit-grid,.source-journey-grid.four,.source-journey-grid.three{grid-template-columns:1fr!important}.source-journey-card img{height:auto!important;max-height:270px!important}.academy-content-section{padding:13px!important;margin:8px 0!important}.article-page .article-figure.compact:not(.source-journey-card){display:block!important}.article-page .article-figure.compact:not(.source-journey-card)>img{min-height:0!important;height:auto!important;max-height:300px!important}.article-page .article-figure.compact:not(.source-journey-card)>figcaption{border-left:0!important;border-top:1px solid #e2e9e5!important;padding:11px 12px!important}.article table{display:block!important;overflow-x:auto!important;white-space:normal!important}}
@media(max-width:420px){.article-page .article-layout,.source-playbook-page .article-layout{padding-left:11px!important;padding-right:11px!important}.article-page .article h1,.source-playbook-article h1{font-size:23px!important}.academy-article-hero-main{grid-template-columns:44px minmax(0,1fr)!important}.academy-article-hero-visual{width:44px;height:44px}.source-section-tabs a{font-size:10px!important;padding:7px 7px!important}}
/* v95 polish after visual QA */
.article-page main,.source-playbook-page{background:#f7f9f7!important;background-image:none!important}
.article-page .article-layout:before,.article-page .article h2:before{display:none!important}
.rail-quick a{position:relative!important;padding-left:34px!important}.rail-quick a:before{content:"↗";position:absolute;left:10px;top:50%;transform:translateY(-50%);width:17px;height:17px;display:grid;place-items:center;border-radius:6px;background:#e8f4ee;color:#1f7c5b;font-size:9px;font-weight:900}






/* ======================================================================
   v96 — reference-accurate dense academy layout
   Goal: no wasted canvas, stable top bar, sticky right rail, clean blocks.
   ====================================================================== */
:root{
  --v96-sidebar:238px;
  --v96-topbar:54px;
  --v96-rail:292px;
  --v96-gap:18px;
  --v96-page:#f7faf8;
  --v96-card:#ffffff;
  --v96-card-soft:#f2f8f5;
  --v96-text:#10231d;
  --v96-muted:#66786f;
  --v96-line:#dce8e1;
  --v96-green:#0f6b50;
  --v96-green-2:#15966d;
  --v96-mint:#edf8f3;
  --v96-amber:#fff8e9;
  --v96-amber-line:#efd9a7;
  --v96-violet:#f5f0ff;
  --v96-violet-line:#d9c7ff;
}
html{scroll-padding-top:70px!important;overflow-x:clip!important}
body{overflow-x:clip!important;background:var(--v96-page)!important;color:var(--v96-text)!important}
body *{min-width:0}
img,svg,video,canvas{max-width:100%!important}
pre,code{overflow-wrap:anywhere}
.article table,.compare-table,.rules-table{max-width:100%!important}

/* ---------- shell ---------- */
@media(min-width:1051px){
  :root{--academy-sidebar:var(--v96-sidebar)!important;--academy-header:var(--v96-topbar)!important;--academy-rail:var(--v96-rail)!important}
  .global-sidebar{
    position:fixed!important;inset:0 auto 0 0!important;width:var(--v96-sidebar)!important;max-width:var(--v96-sidebar)!important;
    height:100vh!important;padding:16px 13px 18px!important;overflow-y:auto!important;overflow-x:hidden!important;
    background:linear-gradient(180deg,#0a4338 0%,#07372f 56%,#062c26 100%)!important;
    border-right:1px solid rgba(255,255,255,.08)!important;box-shadow:none!important;z-index:120!important
  }
  .site-header{
    display:block!important;position:fixed!important;left:var(--v96-sidebar)!important;right:0!important;top:0!important;
    width:auto!important;height:var(--v96-topbar)!important;margin:0!important;z-index:115!important;
    background:rgba(250,252,251,.97)!important;border-bottom:1px solid var(--v96-line)!important;box-shadow:none!important;
    backdrop-filter:blur(14px)!important
  }
  .site-header .header-inner{height:100%!important;width:100%!important;max-width:none!important;padding:0 18px!important;display:flex!important;align-items:center!important;gap:12px!important}
  .site-header .brand{display:none!important}
  .header-tagline{display:flex!important;align-items:center!important;min-width:0!important}
  .header-tagline:before{content:"●";margin-right:8px;color:#26a978;font-size:9px}
  .header-tagline span{font:650 12px/1.2 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;color:#65776f!important;white-space:nowrap!important}
  .header-actions{display:flex!important;align-items:center!important;gap:7px!important;margin-left:auto!important}
  .header-about-link,.theme-toggle{height:34px!important;min-height:34px!important;padding:0 12px!important;border-radius:8px!important;font-size:11.5px!important;font-weight:750!important;text-decoration:none!important;box-shadow:none!important}
  .header-about-link{border:1px solid var(--v96-line)!important;background:#fff!important;color:#29483f!important}
  .theme-toggle{border:1px solid #bfe0d3!important;background:#eaf7f1!important;color:#155a45!important}
  .theme-toggle-icon{font-size:14px!important}
  .site-header .mobile-nav-toggle{display:none!important}
  body>main,.site-footer{margin-left:var(--v96-sidebar)!important;width:calc(100% - var(--v96-sidebar))!important;max-width:none!important}
  body>main{padding-top:var(--v96-topbar)!important}
}

/* ---------- left navigation ---------- */
.sidebar-brand{display:flex!important;align-items:center!important;gap:10px!important;margin:0 2px 13px!important;padding:2px 4px 13px!important;border-bottom:1px solid rgba(255,255,255,.12)!important;text-decoration:none!important}
.sidebar-brand-logo{width:39px!important;height:35px!important;object-fit:contain!important;filter:none!important}
.sidebar-brand>span{display:flex!important;flex-direction:column!important;line-height:1.04!important}
.sidebar-brand b,.sidebar-brand strong{font:760 14px/1.05 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;color:#fff!important}
.sidebar-brand small{margin-top:4px!important;color:#9fc0b4!important;font-size:8.5px!important}
.global-sidebar>.sidebar-search{position:relative!important;margin:0 2px 12px!important;height:40px!important}
.global-sidebar>.sidebar-search:before{content:""!important;position:absolute!important;left:11px!important;top:12px!important;width:11px!important;height:11px!important;border:1.7px solid #a1c3b7!important;border-radius:50%!important;transform:none!important;background:none!important;z-index:2!important}
.global-sidebar>.sidebar-search:after{content:"Ctrl K"!important;position:absolute!important;left:auto!important;right:8px!important;top:50%!important;transform:translateY(-50%)!important;width:auto!important;height:auto!important;padding:3px 5px!important;border:1px solid rgba(255,255,255,.11)!important;border-radius:5px!important;background:rgba(255,255,255,.055)!important;color:#91b3a7!important;font:700 8px/1 Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:.01em!important}
.global-sidebar>.sidebar-search input{height:40px!important;width:100%!important;padding:0 54px 0 32px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:8px!important;background:rgba(0,0,0,.14)!important;color:#fff!important;font-size:12.6px!important;outline:0!important}
.global-sidebar>.sidebar-search input::placeholder{color:#acc7be!important}
.global-sidebar>.sidebar-search input:focus{border-color:#4ab78f!important;background:rgba(255,255,255,.055)!important;box-shadow:0 0 0 3px rgba(55,184,137,.1)!important}
.global-sidebar>.sidebar-mode-compact{display:none!important}
.global-sidebar .sidebar-group{margin:0 0 5px!important;overflow:visible!important}
.global-sidebar .sidebar-group-title{display:none!important}
.sidebar-group-toggle{width:100%!important;min-height:28px!important;padding:5px 7px!important;margin:0!important;border:0!important;border-radius:6px!important;background:transparent!important;color:#86afa1!important;text-align:left!important;font:800 9.5px/1.2 Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:.075em!important;text-transform:uppercase!important;display:flex!important;align-items:center!important;justify-content:space-between!important;cursor:pointer!important}
.sidebar-group-toggle:hover{background:rgba(255,255,255,.04)!important;color:#bcd4cb!important}
.sidebar-group-toggle:after{content:"⌄"!important;font-size:13px!important;color:#82a99b!important;transition:transform .15s ease!important}
.sidebar-group.is-collapsed .sidebar-group-toggle:after{transform:rotate(-90deg)!important}
.sidebar-group.is-collapsed>.sidebar-menu{display:none!important}
.global-sidebar .sidebar-menu{display:flex!important;flex-direction:column!important;gap:1px!important}
.global-sidebar .sidebar-menu a{position:relative!important;display:flex!important;align-items:center!important;min-height:36px!important;padding:7px 8px 7px 34px!important;border-radius:7px!important;background:transparent!important;color:#dbe9e4!important;font-size:13.3px!important;font-weight:550!important;line-height:1.2!important;text-decoration:none!important;white-space:normal!important;overflow-wrap:anywhere!important}
.global-sidebar .sidebar-menu a:before{position:absolute!important;left:9px!important;top:50%!important;transform:translateY(-50%)!important;width:17px!important;height:17px!important;display:grid!important;place-items:center!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:5px!important;background:rgba(255,255,255,.035)!important;color:#a9c7bd!important;font:700 9px/1 Inter,"Segoe UI",Arial,sans-serif!important;opacity:1!important}
.global-sidebar .sidebar-menu a[data-nav="home"]:before{content:"⌂"!important}
.global-sidebar .sidebar-menu a[data-nav="start"]:before{content:"○"!important}
.global-sidebar .sidebar-menu a[data-nav="traffic"]:before{content:"↗"!important}
.global-sidebar .sidebar-menu a[data-nav="compare"]:before{content:"≡"!important}
.global-sidebar .sidebar-menu a[data-nav="practice"]:before{content:"✓"!important}
.global-sidebar .sidebar-menu a[data-nav="diagnostics"]:before{content:"?"!important}
.global-sidebar .sidebar-menu a[data-nav="analytics"]:before{content:"⌁"!important}
.global-sidebar .sidebar-menu a[data-nav="tools"]:before{content:"▦"!important}
.global-sidebar .sidebar-menu a[data-nav="notes"]:before{content:"✎"!important}
.global-sidebar .sidebar-menu a[data-nav="library"]:before{content:"▤"!important}
.global-sidebar .sidebar-menu a[data-nav="basics"]:before{content:"i"!important}
.global-sidebar .sidebar-menu a[data-nav="economics"]:before{content:"∑"!important}
.global-sidebar .sidebar-menu a[data-nav="services"]:before{content:"⚙"!important;font-size:8px!important}
.global-sidebar .sidebar-menu a[data-nav="glossary"]:before{content:"Aa"!important;font-size:7px!important}
.global-sidebar .sidebar-menu a:hover{background:rgba(255,255,255,.06)!important;color:#fff!important}
.global-sidebar .sidebar-menu a.active,.global-sidebar .sidebar-menu a[aria-current="page"]{background:rgba(59,205,151,.15)!important;color:#fff!important;font-weight:720!important;box-shadow:inset 3px 0 0 #45c794!important}
.global-sidebar>.sidebar-partner-cta{margin:10px 2px 0!important;padding:10px 11px!important;border:1px solid rgba(79,210,159,.3)!important;border-radius:9px!important;background:rgba(45,164,121,.1)!important;text-decoration:none!important}
.global-sidebar>.sidebar-partner-cta span{font-size:8px!important;color:#8fb7aa!important}.global-sidebar>.sidebar-partner-cta b{font-size:13px!important;color:#fff!important}.global-sidebar>.sidebar-partner-cta small{font-size:9px!important;color:#a9c5bb!important}
.global-sidebar>.sidebar-partner-rules{margin:6px 2px 0!important;padding:7px 8px!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:7px!important;background:rgba(255,255,255,.035)!important;color:#bdd5cc!important;font-size:10.5px!important;text-decoration:none!important}
.global-sidebar>.sidebar-bottom{display:none!important}

/* ---------- article canvas: full-width, no empty side gutters ---------- */
.article-page main,.source-playbook-page{background:var(--v96-page)!important}
.article-page .article-layout,.source-playbook-page .article-layout{
  display:grid!important;grid-template-columns:minmax(0,1fr) var(--v96-rail)!important;gap:var(--v96-gap)!important;
  width:100%!important;max-width:none!important;margin:0!important;padding:16px 18px 64px!important;align-items:start!important
}
.article-page .article,.source-playbook-page .source-playbook-article{width:100%!important;max-width:none!important;padding:0!important;min-width:0!important}
.article-page .breadcrumbs,.source-playbook-page .breadcrumbs{margin:0 0 10px!important;font-size:10.8px!important;color:#7c8e86!important;display:flex!important;gap:8px!important;align-items:center!important;flex-wrap:wrap!important}
.article-page .breadcrumbs a,.source-playbook-page .breadcrumbs a{color:#516d62!important;text-decoration:none!important}

/* Compact, reference-like article hero */
.academy-article-hero,.source-hero-shell{margin:0 0 8px!important;padding:0 0 12px!important;border:0!important;border-bottom:1px solid var(--v96-line)!important;background:transparent!important}
.academy-article-hero-main{display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;gap:12px!important;align-items:center!important}
.academy-article-hero-visual{width:58px!important;height:54px!important;padding:5px!important;border:1px solid #d8e7df!important;border-radius:11px!important;background:linear-gradient(145deg,#eef8f3,#fff)!important;overflow:hidden!important}
.academy-article-hero-visual img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important}
.source-title-row{display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;gap:11px!important;align-items:center!important}
.source-title-visual{display:none!important}
.source-hero-icon{width:52px!important;height:52px!important;margin:0!important;border-radius:11px!important;font-size:11px!important;box-shadow:none!important}
.academy-article-hero-copy .article-label,.source-title-copy .article-label{margin:0 0 4px!important;color:#238260!important;font-size:9.5px!important;font-weight:850!important;letter-spacing:.055em!important;text-transform:uppercase!important}
.article-page .article h1,.source-playbook-article h1{margin:0!important;color:#10231d!important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:clamp(28px,2.2vw,36px)!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:800!important}
.academy-article-hero .lead,.source-hero-shell>.lead{max-width:none!important;margin:7px 0 0!important;color:#5b6e65!important;font-size:13.6px!important;line-height:1.54!important}
.academy-article-hero-foot{margin-top:9px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}
.academy-article-hero .article-meta{display:flex!important;gap:6px!important;flex-wrap:wrap!important;margin:0!important}.academy-article-hero .article-meta span{padding:4px 7px!important;border:1px solid var(--v96-line)!important;border-radius:6px!important;background:#fff!important;font-size:10px!important}
.academy-article-hero .article-actions{display:flex!important;gap:5px!important;margin:0!important}.academy-article-hero .article-actions>*{min-height:28px!important;padding:5px 8px!important;border-radius:6px!important;font-size:10px!important}

/* Source facts and tabs mirror the sample */
.playbook-facts,.source-playbook-article>.playbook-facts{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:8px 0!important}
.playbook-facts>div,.source-playbook-article>.playbook-facts>div{flex:0 1 auto!important;min-height:0!important;padding:6px 9px!important;border:1px solid var(--v96-line)!important;border-radius:7px!important;background:#fff!important}
.playbook-facts dt{font-size:8.7px!important;color:#71857b!important;text-transform:uppercase!important;letter-spacing:.05em!important}.playbook-facts dd{margin:2px 0 0!important;color:#23443a!important;font-size:10.8px!important;font-weight:720!important;line-height:1.3!important}
.playbook-risk{display:grid!important;grid-template-columns:auto 1fr!important;gap:8px!important;margin:8px 0!important;padding:8px 10px!important;border:1px solid #eadfca!important;border-radius:7px!important;background:#fff9ed!important}.playbook-risk b{font-size:10px!important;color:#8b6021!important}.playbook-risk p{margin:0!important;font-size:10.8px!important;line-height:1.42!important;color:#655d4b!important}
.source-section-tabs{display:flex!important;gap:0!important;margin:9px 0 0!important;padding:0!important;border-bottom:1px solid var(--v96-line)!important;overflow-x:auto!important;scrollbar-width:none!important}.source-section-tabs::-webkit-scrollbar{display:none!important}.source-section-tabs a{flex:0 0 auto!important;padding:7px 9px!important;border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important;background:transparent!important;color:#596d64!important;font-size:10.8px!important;text-decoration:none!important}.source-section-tabs a:hover,.source-section-tabs a.is-current{color:#0e6b4f!important;border-bottom-color:#1ba273!important}

/* Flat article rhythm: cards only where information benefits from a card */
.source-playbook-article>section,.academy-content-section,.article-page .article>section:not(.related-reading){margin:0!important;padding:15px 0!important;border:0!important;border-top:1px solid #e5ece8!important;background:transparent!important;box-shadow:none!important}
.source-playbook-article>section:first-of-type,.academy-article-hero+.academy-content-section{border-top:0!important}
.source-playbook-article h2,.article-page .article section>h2,.academy-content-section>h2{margin:0 0 7px!important;color:#13271f!important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:21px!important;line-height:1.2!important;font-weight:790!important;letter-spacing:-.018em!important}
.source-playbook-article h3,.article-page .article h3{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:14px!important;line-height:1.35!important;font-weight:760!important;color:#1a342a!important}
.source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,.article-page .article p,.article-page .article li,.article-page .article dd{font-size:13.2px!important;line-height:1.58!important;color:#485e54!important}
.source-playbook-article p,.article-page .article p{margin:6px 0 9px!important}

.playbook-checklist,.platform-setup,.playbook-format-list,.playbook-steps,.traffic-diagnostic-list,.source-toolkit-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;gap:8px!important;margin:9px 0!important;padding:0!important}
.playbook-checklist li,.platform-setup>div,.playbook-format-list>div,.playbook-steps>li,.traffic-diagnostic-list li,.source-tool-card{min-height:0!important;padding:11px 12px!important;border:1px solid var(--v96-line)!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important}
.playbook-checklist li{list-style:none!important;position:relative!important;padding-left:35px!important}.playbook-checklist li:before{content:"✓"!important;position:absolute!important;left:11px!important;top:11px!important;width:16px!important;height:16px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:#e4f6ee!important;color:#12815d!important;font-size:9px!important;font-weight:900!important}
.playbook-format-list dt{font-size:12px!important;line-height:1.35!important;font-weight:770!important;color:#203c32!important}.playbook-format-list dd{margin:5px 0 0!important;font-size:11.4px!important;line-height:1.48!important}.playbook-format-list dt span{display:block!important;margin-bottom:4px!important;color:#1a8a63!important;font-size:8.5px!important;text-transform:uppercase!important;letter-spacing:.06em!important}
.playbook-steps>li{display:grid!important;grid-template-columns:28px 1fr!important;gap:8px!important;align-items:start!important}.playbook-steps>li>span{width:26px!important;height:26px!important;display:grid!important;place-items:center!important;border-radius:7px!important;background:#e7f5ee!important;color:#17694f!important;font-size:9px!important;font-weight:850!important}.playbook-steps h3{margin:1px 0 3px!important;font-size:12.5px!important}.playbook-steps p{margin:0!important;font-size:11.2px!important;line-height:1.45!important}
.traffic-diagnostic-list li{list-style:none!important;font-size:11.4px!important;line-height:1.48!important}.source-tool-card{min-height:150px!important;text-decoration:none!important}.source-tool-card>b{font-size:15px!important}.source-tool-card-copy{font-size:11.2px!important}.source-tool-card-action{font-size:10.5px!important}

/* Visual blocks: equal, tidy, useful */
.source-journey-grid{display:grid!important;gap:8px!important;margin:9px 0!important}.source-journey-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))!important}.source-journey-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.source-journey-card,.article-page .article-figure.compact{overflow:hidden!important;margin:0!important;border:1px solid var(--v96-line)!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important}
.source-journey-card img{display:block!important;width:100%!important;height:132px!important;padding:4px!important;object-fit:contain!important;background:#f4f8f6!important;border:0!important}
.source-journey-card figcaption{padding:8px 9px 9px!important;border-top:1px solid #e8eeeb!important;color:#52675d!important;font-size:10.5px!important;line-height:1.42!important}.source-journey-card figcaption strong{display:block!important;margin-bottom:2px!important;color:#1d3b30!important;font-size:10.8px!important}
.article-page .article-figure.compact:not(.source-journey-card){display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr)!important;align-items:stretch!important;margin:9px 0!important}.article-page .article-figure.compact:not(.source-journey-card)>img{width:100%!important;height:100%!important;min-height:220px!important;max-height:340px!important;padding:6px!important;object-fit:contain!important;background:#f5f8f6!important}.article-page .article-figure.compact:not(.source-journey-card)>figcaption{display:flex!important;flex-direction:column!important;justify-content:center!important;padding:14px!important;border:0!important;border-left:1px solid #e7ede9!important;color:#4e6359!important;font-size:12px!important;line-height:1.56!important}
.article-page .article-figure.compact:not(.source-journey-card)>figcaption strong{color:#17362b!important}

/* Tables and inline notes */
.article table{width:100%!important;margin:9px 0!important;border:1px solid var(--v96-line)!important;border-radius:8px!important;border-collapse:separate!important;border-spacing:0!important;overflow:auto!important;background:#fff!important;font-size:11.3px!important}.article th,.article td{padding:8px 9px!important;border-bottom:1px solid #e8eeeb!important}.article th{background:#f1f7f4!important;color:#345046!important;font-size:10.2px!important}.article tr:last-child td{border-bottom:0!important}
.inline-note,.rules-action-box,.partner-specific-box{margin:9px 0!important;padding:11px 13px!important;border:1px solid #d9e8e0!important;border-left:3px solid #3a9d77!important;border-radius:8px!important;background:#f5faf7!important;box-shadow:none!important}

/* ---------- right rail: sticky, colored, visual ---------- */
.article-aside.enhanced-rail{position:sticky!important;top:calc(var(--v96-topbar) + 12px)!important;align-self:start!important;width:100%!important;max-height:calc(100vh - var(--v96-topbar) - 22px)!important;overflow-y:auto!important;overflow-x:hidden!important;display:flex!important;flex-direction:column!important;gap:9px!important;padding:0 3px 2px 0!important;scrollbar-width:thin!important;scrollbar-color:#c9d9d1 transparent!important}
.article-aside.enhanced-rail::-webkit-scrollbar{width:5px}.article-aside.enhanced-rail::-webkit-scrollbar-thumb{background:#c9d9d1;border-radius:999px}
.article-aside.enhanced-rail .aside-block,.rail-partner-card,.rail-path-card{border:1px solid var(--v96-line)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}
.article-aside.enhanced-rail .aside-block{padding:12px!important;margin:0!important}
.article-aside.enhanced-rail .aside-block>b{display:block!important;margin:0 0 9px!important;color:#17372c!important;font:800 12px/1.25 Inter,"Segoe UI",Arial,sans-serif!important}
.rail-toc{order:1!important}.rail-tools,.rail-quick{order:2!important}.rail-partner-card{order:3!important}.rail-related{order:4!important}.rail-path-card{order:5!important}.rail-feature-card{display:none!important}
.rail-progress{height:3px!important;margin:0 0 8px!important;border-radius:999px!important;background:#e8efeb!important;overflow:hidden!important}.rail-progress span{display:block!important;height:100%!important;background:#2cac7c!important;border-radius:999px!important}
.rail-toc ol{margin:0!important;padding:0!important;list-style:none!important;counter-reset:toc!important}.rail-toc li{counter-increment:toc!important}.rail-toc li a{display:grid!important;grid-template-columns:18px 1fr!important;gap:5px!important;padding:5px 0!important;color:#40574d!important;font-size:10.8px!important;line-height:1.36!important;text-decoration:none!important;border:0!important}.rail-toc li a:before{content:counter(toc) "."!important;color:#73867d!important;font-size:9px!important}.rail-toc li a.is-current{color:#0d7556!important;font-weight:760!important}.rail-toc li a.is-current:before{color:#0d7556!important}
.rail-tools{background:linear-gradient(145deg,#effaf5,#f8fcfa)!important;border-color:#d4eadf!important}.rail-tools>a:not(.rail-all-tools){display:flex!important;align-items:center!important;gap:8px!important;padding:7px 0!important;border-bottom:1px solid #dfebe5!important;text-decoration:none!important}.rail-tools>a:not(.rail-all-tools):last-of-type{border-bottom:0!important}.rail-tool-mark{width:31px!important;height:31px!important;flex:0 0 31px!important;display:grid!important;place-items:center!important;border:1px solid #cae3d8!important;border-radius:8px!important;background:#fff!important;color:#0d7556!important;font-size:9px!important;font-weight:900!important}.rail-tools a b{display:block!important;color:#173b30!important;font-size:11.2px!important}.rail-tools a small{display:block!important;margin-top:1px!important;color:#72847b!important;font-size:9.2px!important}.rail-all-tools{display:flex!important;align-items:center!important;justify-content:center!important;margin-top:8px!important;min-height:30px!important;border:1px solid #c6dfd4!important;border-radius:7px!important;background:#fff!important;color:#176b51!important;font-size:10px!important;font-weight:760!important;text-decoration:none!important}
.rail-quick{background:linear-gradient(145deg,#f2f9f6,#fbfdfc)!important;border-color:#d9e9e1!important}.rail-quick a{position:relative!important;display:block!important;margin:5px 0!important;padding:8px 9px 8px 37px!important;border:1px solid #dfeae5!important;border-radius:8px!important;background:#fff!important;text-decoration:none!important}.rail-quick a:before{content:"↗"!important;position:absolute!important;left:9px!important;top:50%!important;transform:translateY(-50%)!important;width:19px!important;height:19px!important;display:grid!important;place-items:center!important;border-radius:6px!important;background:#e6f5ee!important;color:#177454!important;font-size:9px!important;font-weight:900!important}.rail-quick a strong{display:block!important;color:#17382d!important;font-size:10.8px!important}.rail-quick a small{display:block!important;margin-top:1px!important;color:#74857d!important;font-size:8.9px!important;line-height:1.3!important}
.rail-related{background:#fff!important}.rail-related-visual>a{display:grid!important;grid-template-columns:64px 1fr!important;gap:8px!important;align-items:center!important;padding:7px 0!important;border-bottom:1px solid #e7eeea!important;text-decoration:none!important}.rail-related-visual>a:last-child{border-bottom:0!important}.rail-related-visual img{display:block!important;width:64px!important;height:46px!important;padding:3px!important;object-fit:contain!important;border:1px solid #e0e9e4!important;border-radius:7px!important;background:#f4f8f6!important}.rail-related-visual span{color:#3e574c!important;font-size:10.2px!important;line-height:1.34!important}
.rail-partner-card{display:grid!important;grid-template-columns:42px 1fr!important;gap:9px!important;align-items:center!important;padding:11px!important;background:linear-gradient(145deg,#fff7e8,#fffdf7)!important;border-color:var(--v96-amber-line)!important;text-decoration:none!important}.rail-partner-badge{width:42px!important;height:42px!important;display:grid!important;place-items:center!important;border-radius:10px!important;background:#123c70!important;color:#fff!important;font:900 13px/1 Inter,"Segoe UI",Arial,sans-serif!important}.rail-partner-copy b{display:block!important;color:#67491e!important;font-size:11px!important;line-height:1.25!important}.rail-partner-copy small{display:block!important;margin-top:3px!important;color:#8b7557!important;font-size:8.9px!important;line-height:1.35!important}
.rail-path-card{display:grid!important;grid-template-columns:1fr 42px!important;gap:8px!important;align-items:center!important;padding:11px!important;background:linear-gradient(145deg,#f5f0ff,#fbf9ff)!important;border-color:var(--v96-violet-line)!important;text-decoration:none!important}.rail-path-copy b{display:block!important;color:#493286!important;font-size:11px!important}.rail-path-copy small{display:block!important;margin-top:3px!important;color:#746593!important;font-size:8.9px!important;line-height:1.35!important}.rail-path-art{width:42px!important;height:42px!important;display:grid!important;place-items:center!important;border-radius:12px!important;background:#7657d6!important;color:#fff!important;font-size:19px!important;font-weight:800!important}

/* ---------- global cards: quieter, tighter, less AI-looking ---------- */
:is(.home-search-card,.home-entry-grid>a,.home-source-grid>a,.section-entry,.service-tool,.service-notice,.service-workflow,.library-row,.traffic-source-card,.source-card,.tool-panel,.calc-card){border-color:var(--v96-line)!important;border-radius:10px!important;box-shadow:none!important}
.home-welcome,.page-head,.home-entry-section,.home-sources,.rule-section{background:var(--v96-page)!important}
.home-welcome .wrap,.page-head .wrap,.home-entry-section .wrap,.home-sources .wrap,.home-results .wrap,.services-page>.wrap,.traffic-hub-page>.wrap{max-width:none!important;width:100%!important;padding-left:22px!important;padding-right:22px!important}
.page-head{padding-top:34px!important;padding-bottom:28px!important}.page-head h1{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:clamp(30px,3.2vw,44px)!important;font-weight:800!important;letter-spacing:-.035em!important}.page-head p{font-size:14px!important}

/* ---------- dark mode: same hierarchy, no bright islands ---------- */



















/* ---------- responsive ---------- */
@media(max-width:1260px) and (min-width:1051px){
  :root{--v96-sidebar:224px;--v96-rail:262px;--v96-gap:14px}
  .article-page .article-layout,.source-playbook-page .article-layout{padding-left:14px!important;padding-right:14px!important}
  .source-journey-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .source-journey-card img{height:155px!important}
}
@media(max-width:1050px){
  :root{--v96-topbar:56px}
  .site-header{display:block!important;position:fixed!important;left:0!important;right:0!important;top:0!important;width:100%!important;height:var(--v96-topbar)!important;margin:0!important;z-index:140!important;background:#0b4338!important;border-bottom:1px solid rgba(255,255,255,.09)!important;box-shadow:0 5px 18px rgba(0,0,0,.13)!important}
  .site-header .header-inner{height:100%!important;width:100%!important;max-width:none!important;padding:0 10px!important;display:flex!important;align-items:center!important;gap:6px!important;overflow:hidden!important}
  .site-header .brand{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;flex:1 1 auto!important;color:#fff!important;text-decoration:none!important}.site-header .brand-logo{width:33px!important;height:30px!important;flex:0 0 33px!important}.site-header .brand-text{min-width:0!important}.site-header .brand-text b{display:block!important;max-width:160px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#fff!important;font:760 12.5px/1.1 Inter,"Segoe UI",Arial,sans-serif!important}.site-header .brand-text small{display:none!important}
  .header-tagline{display:none!important}.header-actions{display:flex!important;align-items:center!important;gap:5px!important;margin-left:auto!important}
  .site-header .header-about-link,.site-header .theme-toggle,.site-header .mobile-nav-toggle{display:grid!important;place-items:center!important;width:37px!important;height:37px!important;min-width:37px!important;min-height:37px!important;padding:0!important;border:1px solid rgba(255,255,255,.17)!important;border-radius:8px!important;background:rgba(255,255,255,.07)!important;color:#fff!important;box-shadow:none!important}
  .site-header .header-about-link{font-size:0!important}.site-header .header-about-link:before{content:"i";font:800 14px/1 Inter,"Segoe UI",Arial,sans-serif!important}.site-header .theme-toggle [data-theme-label],.site-header .mobile-nav-toggle span:last-child{display:none!important}.site-header .theme-toggle-icon{font-size:15px!important}.site-header .mobile-nav-toggle{display:flex!important;align-items:center!important;justify-content:center!important}
  .global-sidebar{position:fixed!important;left:0!important;top:var(--v96-topbar)!important;bottom:0!important;width:min(310px,88vw)!important;max-width:min(310px,88vw)!important;height:auto!important;padding:11px 11px 18px!important;overflow-y:auto!important;overflow-x:hidden!important;transform:translateX(-104%)!important;transition:transform .2s ease!important;z-index:135!important;background:linear-gradient(180deg,#0a4338,#062d26)!important}
  body.mobile-nav-open .global-sidebar{transform:translateX(0)!important}.global-sidebar .sidebar-brand{display:none!important}.global-sidebar>.sidebar-search{margin-bottom:8px!important}.global-sidebar>.sidebar-search input{height:40px!important;font-size:16px!important}.global-sidebar>.sidebar-search:after{display:none!important}
  .sidebar-group-toggle{min-height:32px!important;font-size:10px!important}.global-sidebar .sidebar-menu a{min-height:38px!important;font-size:14px!important}
  body>main,.site-footer{margin-left:0!important;width:100%!important;max-width:100%!important}body>main{padding-top:var(--v96-topbar)!important}
  .article-page .article-layout,.source-playbook-page .article-layout{display:block!important;width:100%!important;max-width:820px!important;margin:0 auto!important;padding:14px 14px 54px!important}.article-aside.enhanced-rail{display:none!important}
  .wrap{width:100%!important;max-width:100%!important;padding-left:14px!important;padding-right:14px!important}
  .source-journey-grid.four,.source-journey-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))!important}.source-journey-card img{height:170px!important}
  .playbook-checklist,.platform-setup,.playbook-format-list,.playbook-steps,.traffic-diagnostic-list,.source-toolkit-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
  .article-page .article-layout,.source-playbook-page .article-layout{padding:12px 11px 46px!important}
  .article-page .article h1,.source-playbook-article h1{font-size:25px!important}.academy-article-hero-main{grid-template-columns:46px minmax(0,1fr)!important;gap:9px!important}.academy-article-hero-visual{width:46px!important;height:44px!important}.source-title-row{grid-template-columns:44px minmax(0,1fr)!important}.source-hero-icon{width:43px!important;height:43px!important}.academy-article-hero .lead,.source-hero-shell>.lead{font-size:13px!important}
  .academy-article-hero-foot{align-items:flex-start!important;flex-direction:column!important}.playbook-facts{display:grid!important;grid-template-columns:1fr!important}
  .source-journey-grid.four,.source-journey-grid.three,.playbook-checklist,.platform-setup,.playbook-format-list,.playbook-steps,.traffic-diagnostic-list,.source-toolkit-grid{grid-template-columns:1fr!important}
  .source-journey-card img{height:auto!important;max-height:280px!important}.article-page .article-figure.compact:not(.source-journey-card){display:block!important}.article-page .article-figure.compact:not(.source-journey-card)>img{height:auto!important;min-height:0!important;max-height:300px!important}.article-page .article-figure.compact:not(.source-journey-card)>figcaption{border-left:0!important;border-top:1px solid #e5ece8!important;padding:11px 12px!important}
  .article table{display:block!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}.article-page .article p,.source-playbook-article p,.article-page .article li,.source-playbook-article li{font-size:13.3px!important}
  .site-header .brand-text b{max-width:120px!important;font-size:12px!important}
}

/* v96.1: reserve real space for the fixed utility bar on every page. */
@media(min-width:1051px){body>main#main-content{padding-top:var(--v96-topbar)!important}}
@media(max-width:1050px){body>main#main-content{padding-top:var(--v96-topbar)!important}}

/* v96.2: bring the landing pages into the same visual language as the academy articles. */
.home-welcome{padding:38px 0 42px!important;background:var(--v96-page)!important;border-bottom:1px solid var(--v96-line)!important}
.home-welcome-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.62fr)!important;gap:28px!important;align-items:center!important}
.home-kicker,.home-section-title>p,.home-search-label{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;color:#8b6a48!important;font-size:9.5px!important;font-weight:850!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.home-welcome h1{max-width:850px!important;margin:8px 0 14px!important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:clamp(38px,4.6vw,62px)!important;line-height:1.02!important;letter-spacing:-.045em!important;font-weight:820!important;color:#123328!important}
.home-lead{max-width:850px!important;font-size:15px!important;line-height:1.6!important;color:#5b6c65!important}
.home-welcome-summary{gap:8px!important;margin:22px 0 18px!important}.home-welcome-summary>div{padding:11px 12px!important;border:1px solid var(--v96-line)!important;border-top:2px solid #3a715d!important;background:#fff!important}.home-welcome-summary b{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:11px!important}.home-welcome-summary span{font-size:10.4px!important;line-height:1.4!important}
.home-search-card{padding:18px!important;border:1px solid var(--v96-line)!important;border-radius:11px!important;background:#fff!important;box-shadow:none!important}.home-search-card h2{margin:6px 0 8px!important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:25px!important;font-weight:780!important;letter-spacing:-.025em!important}.home-search-card>p{font-size:12.5px!important}.home-main-search>div{border-radius:8px!important;overflow:hidden!important}.home-main-search input{font-size:12px!important}.home-main-search button{font-size:11px!important}
.home-entry-section,.home-sources{padding-top:34px!important;padding-bottom:38px!important}.home-section-title{margin-bottom:18px!important}.home-section-title h2{margin:5px 0 0!important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;font-size:30px!important;font-weight:800!important;letter-spacing:-.03em!important;color:#163329!important}

@media(max-width:1050px){.home-welcome-grid{grid-template-columns:1fr!important}.home-search-card{max-width:720px!important}.home-welcome{padding-top:28px!important}}
@media(max-width:680px){.home-welcome{padding:24px 0 30px!important}.home-welcome h1{font-size:36px!important}.home-lead{font-size:14px!important}.home-welcome-summary{grid-template-columns:1fr!important}.home-actions{gap:7px!important}.home-actions a{font-size:11.5px!important}}


/* ======================================================================
   v97 — balanced academy canvas
   Keep the reading column comfortable; use the side rail for useful info
   instead of stretching text and cards across the whole screen.
   ====================================================================== */
:root{
  --v97-reading:920px;
  --v97-rail:300px;
  --v97-gap:22px;
  --v97-canvas:1260px;
}

@media(min-width:1051px){
  .article-page .article-layout,
  .source-playbook-page .article-layout{
    grid-template-columns:minmax(680px,var(--v97-reading)) var(--v97-rail)!important;
    justify-content:center!important;
    gap:var(--v97-gap)!important;
    width:calc(100% - 28px)!important;
    max-width:var(--v97-canvas)!important;
    margin:0 auto!important;
    padding:22px 0 72px!important;
  }
  .article-page .article,
  .source-playbook-page .source-playbook-article{max-width:var(--v97-reading)!important}
  .article-aside.enhanced-rail{
    width:var(--v97-rail)!important;
    top:calc(var(--v96-topbar) + 14px)!important;
    max-height:calc(100vh - var(--v96-topbar) - 28px)!important;
    padding-right:2px!important;
  }
}

/* Reading scale: closer to the reference, not dashboard-small. */
.article-page .article h1,.source-playbook-article h1{
  font-size:clamp(32px,2.25vw,40px)!important;
  line-height:1.08!important;
}
.source-playbook-article h2,.article-page .article section>h2,.academy-content-section>h2{
  font-size:23px!important;line-height:1.22!important;margin-bottom:10px!important
}
.source-playbook-article h3,.article-page .article h3{font-size:15.5px!important;line-height:1.4!important}
.source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,
.article-page .article p,.article-page .article li,.article-page .article dd{
  font-size:15px!important;line-height:1.68!important;color:#435a50!important
}
.source-playbook-article p,.article-page .article p{margin:7px 0 11px!important}
.academy-article-hero .lead,.source-hero-shell>.lead{font-size:15.3px!important;line-height:1.6!important;max-width:850px!important}
.article-page .breadcrumbs,.source-playbook-page .breadcrumbs{font-size:11.5px!important}

/* Hero and navigation have more breathing room, content below stays dense. */
.academy-article-hero,.source-hero-shell{padding-bottom:15px!important;margin-bottom:3px!important}
.source-title-row{grid-template-columns:58px minmax(0,1fr)!important;gap:13px!important}
.source-hero-icon{width:56px!important;height:56px!important;font-size:12px!important}
.playbook-facts,.source-playbook-article>.playbook-facts{gap:8px!important;margin:11px 0!important}
.playbook-facts>div,.source-playbook-article>.playbook-facts>div{
  padding:8px 11px!important;border-radius:9px!important;background:#fff!important;
  box-shadow:0 4px 14px rgba(30,67,52,.035)!important
}
.playbook-facts dt{font-size:9.2px!important}.playbook-facts dd{font-size:12px!important;line-height:1.35!important}
.playbook-risk{padding:10px 12px!important;margin:10px 0!important;border-radius:9px!important}
.playbook-risk b{font-size:10.5px!important}.playbook-risk p{font-size:12.4px!important;line-height:1.5!important}
.source-section-tabs{margin-top:11px!important}.source-section-tabs a{font-size:11.7px!important;padding:9px 10px!important}

/* Sections: clear rhythm, no huge vertical gaps. */
.source-playbook-article>section,.academy-content-section,.article-page .article>section:not(.related-reading){
  padding:20px 0!important
}

/* The reference uses compact 2/3-column learning cards instead of five tiny cards in a row. */
.playbook-checklist,.platform-setup,.playbook-format-list,.traffic-diagnostic-list{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important
}
.playbook-checklist li,.platform-setup>div,.playbook-format-list>div,.traffic-diagnostic-list li{
  min-height:118px!important;padding:14px 14px 13px!important;border:1px solid #dbe7e1!important;border-radius:11px!important;
  background:linear-gradient(180deg,#fff 0%,#fbfdfc 100%)!important;
  box-shadow:0 5px 18px rgba(30,67,52,.035)!important;font-size:14px!important;line-height:1.55!important
}
.playbook-checklist li{position:relative!important;padding-left:42px!important}
.playbook-checklist li:before{
  content:"✓"!important;position:absolute!important;left:14px!important;top:14px!important;width:20px!important;height:20px!important;
  display:grid!important;place-items:center!important;border-radius:50%!important;background:#e7f8f0!important;color:#15966d!important;
  font-size:11px!important;font-weight:900!important
}
.playbook-format-list dt{font-size:14.5px!important;line-height:1.35!important}.playbook-format-list dd{font-size:13.5px!important;line-height:1.55!important}
.playbook-format-list dt span{display:inline-flex!important;margin-bottom:8px!important;padding:4px 7px!important;border-radius:999px!important;background:#edf8f3!important;color:#147052!important;font-size:9px!important;text-transform:uppercase!important;letter-spacing:.05em!important}

/* Step list becomes a clean two-column course grid on wide article pages. */
.playbook-steps{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.playbook-steps>li{min-height:150px!important;padding:15px!important;border:1px solid #dbe7e1!important;border-radius:11px!important;background:#fff!important;box-shadow:0 5px 18px rgba(30,67,52,.03)!important}
.playbook-steps>li>span{width:28px!important;height:28px!important;border-radius:9px!important;background:#eaf7f1!important;color:#117052!important;font-size:12px!important}
.playbook-steps h3{margin:1px 0 6px!important}.playbook-steps p{font-size:13.7px!important;line-height:1.55!important}

/* Visual teaching blocks: images stay large enough to be read. */
.source-journey-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px!important}
.source-journey-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.source-journey-card{border-radius:12px!important;overflow:hidden!important;border:1px solid #dbe7e1!important;background:#fff!important;box-shadow:0 6px 20px rgba(30,67,52,.04)!important}
.source-journey-card img{height:190px!important;padding:8px!important;object-fit:contain!important;background:#f6faf8!important}
.source-journey-card figcaption{padding:13px 14px 15px!important;font-size:13.5px!important;line-height:1.55!important;color:#53675e!important}
.source-journey-card figcaption strong{display:block!important;margin-bottom:4px!important;color:#183a2f!important;font-size:14px!important}

/* Tool cards: 2 columns is readable, 4–5 tiny tiles are not. */
.source-toolkit-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.source-tool-card{min-height:118px!important;padding:13px!important;border-radius:11px!important}
.source-tool-card b{font-size:14.5px!important}.source-tool-card-copy{font-size:12.8px!important;line-height:1.5!important}

/* Tables and notes feel like designed content blocks. */
.article table{font-size:13.5px!important;border-radius:10px!important;overflow:hidden!important}
.article th{font-size:12.5px!important;padding:10px 11px!important}.article td{padding:10px 11px!important}
.inline-note,.rules-action-box,.partner-specific-box{border-radius:10px!important;padding:13px 14px!important;font-size:13.5px!important;line-height:1.55!important}

/* Right rail: more informative, more visual, similar to the reference. */
.article-aside.enhanced-rail{gap:11px!important}
.article-aside.enhanced-rail .aside-block,.rail-partner-card,.rail-path-card,.rail-cover-card{
  border-radius:12px!important;box-shadow:0 6px 20px rgba(30,67,52,.04)!important
}
.article-aside.enhanced-rail .aside-block{padding:14px!important}
.article-aside.enhanced-rail .aside-block>b{font-size:13.5px!important;margin-bottom:10px!important}
.playbook-aside li a{font-size:11.7px!important;line-height:1.35!important;padding:5px 2px!important}
.rail-tools>a:not(.rail-all-tools){padding:8px 0!important}.rail-tools a b{font-size:12.5px!important}.rail-tools a small{font-size:10.5px!important}
.rail-tool-mark{width:31px!important;height:31px!important;border-radius:9px!important}
.rail-related-visual>a{grid-template-columns:52px minmax(0,1fr)!important;gap:9px!important;padding:8px 0!important}
.rail-related-visual img{width:52px!important;height:42px!important;border-radius:8px!important;object-fit:contain!important;padding:3px!important;background:#f5faf7!important}
.rail-related-visual span{font-size:11.4px!important;line-height:1.35!important}
.rail-feature-card>img{height:118px!important;object-fit:contain!important;padding:8px!important;background:linear-gradient(145deg,#f0f8f4,#fff)!important}
.rail-cover-copy{padding:11px 12px!important}.rail-cover-copy b{font-size:12.7px!important;line-height:1.35!important}

.rail-snapshot{background:linear-gradient(145deg,#f4fbf7,#fff)!important;border-color:#cfe6db!important}
.rail-snapshot-list{display:grid!important;gap:8px!important}
.rail-snapshot-list>div{padding:8px 9px!important;border:1px solid #dcebe4!important;border-radius:8px!important;background:#fff!important}
.rail-snapshot-list small{display:block!important;margin-bottom:3px!important;color:#71877d!important;font-size:8.7px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.05em!important}
.rail-snapshot-list strong{display:block!important;color:#173c30!important;font-size:11.5px!important;line-height:1.35!important}
.rail-snapshot-note{margin:9px 0 0!important;padding:9px 10px!important;border-radius:8px!important;background:#fff8e9!important;color:#6d6048!important;font-size:10.6px!important;line-height:1.45!important}

/* Preserve the comfortable layout for slightly smaller desktops. */
@media(max-width:1320px) and (min-width:1051px){
  :root{--v97-reading:820px;--v97-rail:280px;--v97-gap:18px;--v97-canvas:1120px}
  .source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,
  .article-page .article p,.article-page .article li,.article-page .article dd{font-size:14.5px!important}
  .playbook-checklist,.platform-setup,.playbook-format-list,.traffic-diagnostic-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .source-journey-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .source-journey-grid.three>*:last-child:nth-child(odd){grid-column:1/-1!important;max-width:54%!important;justify-self:center!important}
}

@media(max-width:1050px){
  .article-page .article-layout,.source-playbook-page .article-layout{max-width:820px!important}
  .source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,.article-page .article p,.article-page .article li,.article-page .article dd{font-size:15px!important}
  .playbook-checklist,.platform-setup,.playbook-format-list,.traffic-diagnostic-list,.playbook-steps,.source-toolkit-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
  .article-page .article h1,.source-playbook-article h1{font-size:27px!important}
  .source-playbook-article h2,.article-page .article section>h2,.academy-content-section>h2{font-size:21px!important}
  .source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,.article-page .article p,.article-page .article li,.article-page .article dd{font-size:15px!important;line-height:1.62!important}
  .playbook-checklist,.platform-setup,.playbook-format-list,.traffic-diagnostic-list,.playbook-steps,.source-toolkit-grid,.source-journey-grid.three,.source-journey-grid.four{grid-template-columns:1fr!important}
  .source-journey-grid.three>*:last-child:nth-child(odd){grid-column:auto!important;max-width:none!important}
  .playbook-checklist li,.platform-setup>div,.playbook-format-list>div,.traffic-diagnostic-list li,.playbook-steps>li{min-height:0!important}
  .source-journey-card img{height:auto!important;max-height:280px!important}
}










/* v97.1: below a comfortable desktop width, keep one readable column instead of squeezing a fake two-column layout. */
@media(max-width:1160px) and (min-width:1051px){
  .article-page .article-layout,.source-playbook-page .article-layout{
    display:block!important;width:calc(100% - 28px)!important;max-width:900px!important;margin:0 auto!important;padding:22px 0 64px!important
  }
  .article-aside.enhanced-rail{display:none!important}
}

/* ======================================================================
   v98 — right rail alignment
   Keep the article readable, but anchor the utility rail close to the
   viewport edge instead of centering the whole two-column canvas.
   ====================================================================== */
@media(min-width:1161px){
  .article-page .article-layout,
  .source-playbook-page .article-layout{
    width:100%!important;
    max-width:none!important;
    grid-template-columns:minmax(0,1fr) 300px!important;
    gap:22px!important;
    justify-content:stretch!important;
    padding-left:22px!important;
    padding-right:12px!important;
    margin:0!important;
  }
  .article-page .article,
  .source-playbook-page .source-playbook-article{
    width:100%!important;
    max-width:980px!important;
    justify-self:end!important;
  }
  .article-aside.enhanced-rail{
    width:300px!important;
    justify-self:end!important;
    margin-right:0!important;
  }
}

/* The snapshot duplicated information already explained in the article. */
.rail-snapshot{display:none!important}

/* ======================================================================
   v99 — approved TrafficLab reference layout
   Exact visual direction: dark navigation shell, light course canvas,
   light sticky contents rail, restrained spacing and strong hierarchy.
   ====================================================================== */
:root{
  --ref-sidebar:238px;
  --ref-topbar:48px;
  --ref-rail:306px;
  --ref-gap:22px;
  --ref-green:#0f9968;
  --ref-green-dark:#08744f;
  --ref-ink:#131c1a;
  --ref-copy:#66736f;
  --ref-line:#e4e9e7;
  --ref-soft:#f7faf8;
  --ref-card:#ffffff;
  --ref-shell:#07151a;
  --ref-shell-2:#0a1b20;
  --ref-cream:#fffaf1;
}
*{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
body.reference-ui-v99{
  margin:0!important;
  background:#fff!important;
  color:var(--ref-ink)!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:14px!important;
  line-height:1.56!important;
}
body.reference-ui-v99 a{transition:color .16s ease,background .16s ease,border-color .16s ease,transform .16s ease}
body.reference-ui-v99 .skip-link{display:none!important}

/* shell */
body.reference-ui-v99 .global-sidebar{
  position:fixed!important;z-index:120!important;left:0!important;top:0!important;bottom:0!important;
  width:var(--ref-sidebar)!important;max-width:var(--ref-sidebar)!important;
  padding:18px 16px 14px!important;
  background:linear-gradient(180deg,#07141a 0%,#08191d 56%,#06151a 100%)!important;
  border-right:1px solid rgba(255,255,255,.08)!important;
  color:#e7f1ed!important;overflow-y:auto!important;overflow-x:hidden!important;
  box-shadow:none!important;transform:none!important
}
.ref-sidebar-brand{display:flex;align-items:center;gap:11px;padding:0 4px 16px;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08);text-decoration:none!important;color:#fff!important}
.ref-sidebar-brand img{width:38px;height:38px;object-fit:contain}.ref-sidebar-brand span{display:grid;line-height:1.06}.ref-sidebar-brand b,.ref-sidebar-brand strong{font-size:16px;font-weight:780;letter-spacing:-.02em}.ref-sidebar-brand strong{font-size:13px;margin-top:3px}
.ref-sidebar-groups{display:grid;gap:4px}.ref-nav-group{display:block}.ref-nav-heading{width:100%;height:29px;padding:0 4px;border:0;background:transparent;color:#7f9490;display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:.06em;text-align:left}.ref-nav-heading i{font-style:normal;color:#718580;font-size:14px;transform:rotate(-90deg);transition:transform .18s}.ref-nav-group.is-open .ref-nav-heading i{transform:none}.ref-nav-group nav{display:none;padding-bottom:5px}.ref-nav-group.is-open nav{display:grid;gap:2px}.ref-nav-group nav a{min-height:34px;padding:7px 9px;display:flex;align-items:center;gap:10px;border-radius:7px;color:#e1ebe7!important;text-decoration:none!important;font-size:12.5px;font-weight:570;line-height:1.2}.ref-nav-group nav a:hover{background:rgba(255,255,255,.055)}.ref-nav-group nav a.is-active{background:linear-gradient(90deg,rgba(23,159,110,.23),rgba(23,159,110,.08));color:#3fdb9d!important;box-shadow:inset 2px 0 #17b77c}.ref-nav-icon{width:18px;height:18px;display:grid;place-items:center;color:#b8c8c3;flex:0 0 auto}.ref-nav-icon svg{width:17px;height:17px}.ref-nav-group nav a.is-active .ref-nav-icon{color:#40d79c}
.ref-partner-card{display:grid;gap:8px;margin-top:14px;padding:14px 13px;border:1px solid rgba(38,190,132,.35);border-radius:10px;background:linear-gradient(150deg,rgba(13,61,51,.65),rgba(7,25,29,.82));color:#fff!important;text-decoration:none!important}.ref-partner-card b{font-size:12.5px;line-height:1.3}.ref-partner-card>span{font-size:10.5px;line-height:1.45;color:#a9bcb6}.ref-partner-card em{margin-top:3px;height:33px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;border-radius:6px;background:linear-gradient(90deg,#159a68,#08784f);font-style:normal;font-size:11px;font-weight:700}.ref-sidebar-collapse{width:100%;margin-top:12px;padding:12px 5px;border:0;border-top:1px solid rgba(255,255,255,.08);background:transparent;color:#becbc7;text-align:left;font-size:10.5px}.ref-sidebar-collapse span{margin-right:8px}
body.ref-sidebar-collapsed{--ref-sidebar:76px}body.ref-sidebar-collapsed .ref-sidebar-brand span,body.ref-sidebar-collapsed .ref-nav-heading span,body.ref-sidebar-collapsed .ref-nav-heading i,body.ref-sidebar-collapsed .ref-nav-group nav a>span:last-child,body.ref-sidebar-collapsed .ref-partner-card,body.ref-sidebar-collapsed .ref-sidebar-collapse{display:none!important}body.ref-sidebar-collapsed .global-sidebar{padding-inline:12px!important}body.ref-sidebar-collapsed .ref-sidebar-brand{justify-content:center;padding-inline:0}body.ref-sidebar-collapsed .ref-nav-group nav{display:grid!important}body.ref-sidebar-collapsed .ref-nav-group nav a{justify-content:center;padding-inline:0}

body.reference-ui-v99 .site-header{position:fixed!important;z-index:110!important;left:var(--ref-sidebar)!important;right:0!important;top:0!important;height:var(--ref-topbar)!important;background:#071419!important;border-bottom:1px solid rgba(255,255,255,.07)!important;box-shadow:none!important;padding:0!important}
.ref-topbar{height:100%;display:flex;align-items:center;gap:16px;padding:0 18px 0 24px;color:#cbd8d4}.ref-mobile-brand{display:none}.ref-topbar-crumbs{min-width:0;display:flex;align-items:center;gap:10px;flex:1;white-space:nowrap;overflow:hidden}.ref-topbar-crumbs a,.ref-topbar-crumbs b{font-size:10.5px;color:#c3d0cc!important;text-decoration:none!important;font-weight:560;overflow:hidden;text-overflow:ellipsis}.ref-topbar-crumbs b{color:#eff6f3!important}.ref-topbar-crumbs>span{color:#637873;font-size:13px}.ref-topbar-actions{display:flex;align-items:center;gap:9px;height:100%}.ref-top-search{height:32px;width:246px;padding:0 10px;display:flex;align-items:center;gap:7px;border:1px solid #26383d;border-radius:7px;background:#0c2025}.ref-top-search>span{width:15px;height:15px;color:#b8c8c4}.ref-top-search svg{width:15px;height:15px}.ref-top-search input{min-width:0;flex:1;border:0!important;outline:0!important;background:transparent!important;color:#edf4f2!important;font:500 11px/1.2 inherit!important;padding:0!important}.ref-top-search input::placeholder{color:#91a39e}.ref-top-search kbd{border:0;background:transparent;color:#9fb0ac;font:500 9px/1 inherit}.ref-theme-button,.ref-top-favorite{height:32px;border:1px solid #26383d;border-radius:7px;background:#0b1d22;color:#d4e0dd!important;display:flex;align-items:center;gap:7px;text-decoration:none!important;padding:0 11px}.ref-theme-button{width:36px;justify-content:center;padding:0;cursor:pointer}.ref-theme-button svg,.ref-top-favorite svg{width:15px;height:15px}.ref-top-favorite{font-size:10.5px;font-weight:650}.ref-top-progress{width:170px;height:32px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 4px;gap:3px 8px;align-content:center}.ref-top-progress span,.ref-top-progress b{font-size:9.5px;font-weight:600;color:#b8c7c3}.ref-top-progress b{color:#eef6f3}.ref-top-progress i{grid-column:1/-1;height:4px;background:#26383d;border-radius:99px;overflow:hidden}.ref-top-progress em{display:block;width:0;height:100%;background:#1cb780;border-radius:inherit}.ref-mobile-menu{display:none}

body.reference-ui-v99 main{margin-left:var(--ref-sidebar)!important;padding-top:var(--ref-topbar)!important;min-width:0!important;background:#fff!important}
body.reference-ui-v99 .source-playbook-page,body.reference-ui-v99 main.article-page{background:#fff!important}
body.reference-ui-v99 .article-layout{width:100%!important;max-width:1540px!important;margin:0 auto!important;padding:20px 28px 64px!important;display:grid!important;grid-template-columns:minmax(0,1fr) var(--ref-rail)!important;gap:var(--ref-gap)!important;align-items:start!important}
body.reference-ui-v99 .source-playbook-article,body.reference-ui-v99 .article-page .article{width:100%!important;max-width:none!important;min-width:0!important;justify-self:stretch!important;background:#fff!important;color:var(--ref-ink)!important}
body.reference-ui-v99 .site-footer{margin-left:var(--ref-sidebar)!important;background:#f8faf9!important;border-top:1px solid var(--ref-line)!important}

/* hero */
body.reference-ui-v99 .breadcrumbs{display:none!important}
body.reference-ui-v99 .source-hero-shell{padding:0 0 8px!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body.reference-ui-v99 .source-title-row{display:grid!important;grid-template-columns:66px minmax(0,1fr) 164px!important;gap:14px!important;align-items:center!important;margin:0 0 8px!important}
body.reference-ui-v99 .source-hero-icon{width:58px!important;height:58px!important;border-radius:12px!important;background:var(--source-accent,#159a68)!important;color:#fff!important;border:0!important;box-shadow:0 6px 18px rgba(0,0,0,.08)!important;font-size:0!important;display:grid!important;place-items:center!important;overflow:hidden!important}.ref-play-triangle{display:block;width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:16px solid #fff;margin-left:4px}
body.reference-ui-v99 .source-title-copy .article-label{display:none!important}
body.reference-ui-v99 .source-title-copy h1{margin:0 0 3px!important;font-size:30px!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:800!important;color:#101817!important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important}
body.reference-ui-v99 .source-hero-shell>.lead{margin:0!important;max-width:820px!important;color:#697572!important;font-size:12.6px!important;line-height:1.45!important}
.ref-launch-time{height:58px;padding:8px 13px;border:1px solid #f0ddbd;border-radius:9px;background:#fffaf0;display:grid;grid-template-columns:25px 1fr;grid-template-rows:auto auto;align-content:center;column-gap:7px}.ref-launch-time>span{grid-row:1/-1;align-self:center;font-size:25px;color:#8b5c16}.ref-launch-time small{font-size:9.5px;color:#846a45}.ref-launch-time b{font-size:11.5px;color:#75511c}
body.reference-ui-v99 .playbook-facts{display:flex!important;gap:7px!important;margin:7px 0 12px 80px!important;flex-wrap:wrap!important}.reference-ui-v99 .playbook-facts>div{display:flex!important;gap:4px!important;align-items:center!important;min-height:27px!important;padding:4px 9px!important;border:1px solid #e5ebe8!important;border-radius:6px!important;background:#fff!important;box-shadow:none!important}.reference-ui-v99 .playbook-facts dt{font-size:9.2px!important;color:#7e8b87!important;text-transform:none!important;letter-spacing:0!important}.reference-ui-v99 .playbook-facts dt:after{content:":"}.reference-ui-v99 .playbook-facts dd{margin:0!important;font-size:9.5px!important;font-weight:650!important;color:#377b64!important}
body.reference-ui-v99 .source-title-visual{display:none!important}
body.reference-ui-v99 .source-section-tabs{margin:14px 0 6px!important;padding:0!important;border-bottom:1px solid #e8ecea!important;background:transparent!important;display:flex!important;gap:2px!important;overflow-x:auto!important}.reference-ui-v99 .source-section-tabs a{display:flex!important;align-items:center!important;gap:5px!important;min-height:36px!important;padding:8px 10px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#4f5d59!important;font-size:10px!important;font-weight:580!important;white-space:nowrap!important;text-decoration:none!important}.reference-ui-v99 .source-section-tabs a:first-child{color:#0b6f4d!important;border-bottom:2px solid #149868!important}.reference-ui-v99 .source-section-tabs a span{width:17px;height:17px;border:1px solid #e3e8e6;border-radius:4px;display:grid;place-items:center;font-size:8px;color:#7b8884;background:#fff}

/* article rhythm */
body.reference-ui-v99 .source-playbook-article>section:not(.ref-summary-grid):not(.ref-connected-tools),body.reference-ui-v99 .article-page .article>section{padding:18px 0!important;margin:0!important;border-top:1px solid #eef1f0!important;background:transparent!important}.reference-ui-v99 .source-playbook-article>section:first-of-type{border-top:0!important;padding-top:10px!important}.reference-ui-v99 .source-playbook-article h2,.reference-ui-v99 .article-page .article h2{margin:0 0 9px!important;color:#121c19!important;font:760 18px/1.25 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;letter-spacing:-.018em!important}.reference-ui-v99 .source-playbook-article h3,.reference-ui-v99 .article-page .article h3{font-size:13px!important}.reference-ui-v99 .source-playbook-article p,.reference-ui-v99 .source-playbook-article li,.reference-ui-v99 .source-playbook-article dd,.reference-ui-v99 .article-page .article p,.reference-ui-v99 .article-page .article li,.reference-ui-v99 .article-page .article dd{font-size:12.5px!important;line-height:1.58!important;color:#596964!important}.reference-ui-v99 .source-playbook-article p,.reference-ui-v99 .article-page .article p{max-width:920px!important;margin:5px 0 9px!important}.reference-ui-v99 code{font-size:11px!important}

/* source funnel */
.ref-source-funnel{margin-top:13px;padding:14px 16px;border:1px solid #e3e9e6;border-radius:9px;background:#fff;display:grid;grid-template-columns:1fr 28px 1fr 28px 1fr 28px 1fr;align-items:center;gap:7px}.ref-source-funnel>div{display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:2px 9px;min-width:0}.ref-source-funnel i{grid-row:1/-1;width:38px;height:38px;display:grid;place-items:center;color:#159768}.ref-source-funnel i svg{width:30px;height:30px}.ref-source-funnel b{font-size:11px;line-height:1.2}.ref-source-funnel small{font-size:9.2px;line-height:1.35;color:#7b8884}.ref-source-funnel em{text-align:center;color:#6a7773;font-size:22px;font-style:normal;font-weight:300}

/* preparation cards */
.reference-ui-v99 .playbook-checklist{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important;margin:0!important;padding:0!important;list-style:none!important}.reference-ui-v99 .playbook-checklist li{min-height:78px!important;padding:12px 11px 10px 46px!important;border:1px solid #e2e8e5!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important;font-size:10.6px!important;line-height:1.45!important;position:relative!important}.reference-ui-v99 .playbook-checklist li:before{content:"✓"!important;position:absolute!important;left:12px!important;top:12px!important;width:24px!important;height:24px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#e7f6ef!important;color:#159468!important;font-weight:900!important;font-size:11px!important}

/* format cards */
.reference-ui-v99 .source-playbook-article:has(.ref-format-showcase) #formats>.playbook-format-list{display:none!important}.ref-format-showcase{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.ref-format-card{min-width:0;border:1px solid #e0e6e3;border-radius:8px;overflow:hidden;background:#fff}.ref-format-card>div{height:78px;padding:12px 13px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;text-shadow:0 1px 10px rgba(0,0,0,.55);position:relative;overflow:hidden}.ref-format-card>div:before,.ref-format-card>div:after{content:"";position:absolute;border-radius:50%;filter:blur(1px);opacity:.45}.ref-format-card>div:before{width:90px;height:90px;right:-20px;top:-25px;background:radial-gradient(circle,#ff9a38 0%,transparent 67%)}.ref-format-card>div:after{width:70px;height:70px;left:-20px;bottom:-25px;background:radial-gradient(circle,#11c391 0%,transparent 70%)}.ref-format-card.f1>div{background:linear-gradient(135deg,#070b0b,#153d25)}.ref-format-card.f2>div{background:linear-gradient(135deg,#10080a,#4b1f10)}.ref-format-card.f3>div{background:linear-gradient(135deg,#15090b,#6a181e)}.ref-format-card.f4>div{background:linear-gradient(135deg,#230b28,#6c1d65)}.ref-format-card.f5>div{background:linear-gradient(135deg,#07140f,#075a42)}.ref-format-card>div b{position:relative;z-index:1;font-size:18px;line-height:.95;letter-spacing:-.03em}.ref-format-card>div span{position:relative;z-index:1;font-size:11px;font-weight:800}.ref-format-card>strong{display:block;padding:8px 9px 0;font-size:10.5px;line-height:1.25}.ref-format-card>small{display:block;padding:3px 9px 9px;font-size:9.3px;line-height:1.35;color:#7a8783}
.ref-tip-strip{margin:9px 0 4px;padding:8px 11px;border:1px solid #f3e4c9;border-radius:7px;background:#fffaf1;display:flex;align-items:flex-start;gap:7px}.ref-tip-strip>span{color:#e49c1e}.ref-tip-strip p{margin:0!important;max-width:none!important;font-size:9.8px!important;color:#856b43!important;line-height:1.45!important}

/* summary */
.ref-summary-grid{display:grid!important;grid-template-columns:minmax(250px,.78fr) minmax(0,1.7fr)!important;gap:10px!important;padding:0!important;margin:8px 0 0!important;border:0!important}.ref-track-card,.ref-metrics-card{padding:12px;border:1px solid #e2e8e5;border-radius:8px;background:#fff}.ref-summary-grid h2{font-size:14px!important;margin:0 0 8px!important}.ref-track-card ul{display:grid;gap:4px;margin:0!important;padding:0!important;list-style:none!important}.ref-track-card li{position:relative;padding-left:17px;font-size:9.8px!important;line-height:1.4!important}.ref-track-card li:before{content:"✓";position:absolute;left:0;color:#159468;font-weight:900}.ref-metrics-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.ref-metrics-row>div{min-width:0;padding:9px 9px;border:1px solid #e8ecea;border-radius:7px;background:#fbfcfc}.ref-metrics-row small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:8.8px;color:#73817d}.ref-metrics-row b{display:block;margin:3px 0;font-size:18px;line-height:1;color:#121b19}.ref-metrics-row span{font-size:8.4px;color:#159468}
.ref-connected-tools{padding:10px 12px!important;margin:9px 0 0!important;border:1px solid #e2e8e5!important;border-radius:8px!important;background:#fff!important}.ref-connected-tools h2{font-size:11px!important;margin:0 0 7px!important}.ref-connected-tools>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.ref-connected-tools a{min-width:0;display:grid;grid-template-columns:26px minmax(0,1fr);grid-template-rows:auto auto;gap:0 7px;align-items:center;padding:3px 7px;text-decoration:none!important;color:#2b3733!important;border-right:1px solid #eef1f0}.ref-connected-tools a:last-child{border-right:0}.ref-connected-tools a>span{grid-row:1/-1;width:26px;height:26px;border-radius:7px;background:#eaf7f1;display:grid;place-items:center;font-size:8px;font-weight:800;color:#16865f}.ref-connected-tools b{font-size:9.4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ref-connected-tools small{font-size:8.2px;color:#84908c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* keep detailed sections readable below the reference overview */
.reference-ui-v99 .playbook-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}.reference-ui-v99 .playbook-steps>li{padding:14px!important;min-height:128px!important;border-radius:9px!important;border:1px solid #e2e8e5!important;box-shadow:none!important}.reference-ui-v99 .platform-setup,.reference-ui-v99 .playbook-format-list,.reference-ui-v99 .traffic-diagnostic-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}.reference-ui-v99 .platform-setup>div,.reference-ui-v99 .playbook-format-list>div,.reference-ui-v99 .traffic-diagnostic-list li{padding:13px!important;min-height:100px!important;border-radius:9px!important;border:1px solid #e2e8e5!important;box-shadow:none!important}.reference-ui-v99 .source-journey-grid.four,.reference-ui-v99 .source-journey-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.reference-ui-v99 .source-journey-card{border:1px solid #e2e8e5!important;border-radius:9px!important;box-shadow:none!important}.reference-ui-v99 .source-journey-card img{height:220px!important;background:#f7faf8!important}.reference-ui-v99 .source-journey-card figcaption{padding:12px!important;font-size:11.3px!important;line-height:1.5!important}.reference-ui-v99 .source-toolkit-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.reference-ui-v99 .source-tool-card{min-height:110px!important;border-radius:9px!important;border:1px solid #e2e8e5!important;box-shadow:none!important}

/* right rail */
body.reference-ui-v99 .article-aside.enhanced-rail{position:sticky!important;top:calc(var(--ref-topbar) + 18px)!important;width:var(--ref-rail)!important;max-width:var(--ref-rail)!important;max-height:calc(100vh - var(--ref-topbar) - 30px)!important;overflow-y:auto!important;display:grid!important;gap:12px!important;padding:0 2px 4px 0!important;margin:0!important;background:transparent!important;align-self:start!important}.reference-ui-v99 .article-aside.enhanced-rail::-webkit-scrollbar{width:4px}.reference-ui-v99 .article-aside.enhanced-rail::-webkit-scrollbar-thumb{background:#d5ded9;border-radius:9px}.reference-ui-v99 .article-aside.enhanced-rail .aside-block,.reference-ui-v99 .rail-partner-card,.reference-ui-v99 .rail-path-card,.reference-ui-v99 .rail-cover-card{margin:0!important;padding:14px!important;border:1px solid #e2e8e5!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important;color:#26332f!important}.reference-ui-v99 .article-aside.enhanced-rail .aside-block>b{display:block;margin:0 0 10px!important;font-size:13px!important;color:#26332f!important}.reference-ui-v99 .rail-progress{height:4px!important;background:#eef1f0!important;border-radius:99px!important;margin:0 0 10px!important}.reference-ui-v99 .rail-progress span{background:#18986b!important}.reference-ui-v99 .playbook-aside ol{margin:0!important;padding-left:20px!important;display:grid!important;gap:3px!important}.reference-ui-v99 .playbook-aside li{color:#6b7874!important;font-size:10px!important}.reference-ui-v99 .playbook-aside li a{display:block!important;padding:4px 2px!important;color:#53625d!important;font-size:10.3px!important;line-height:1.32!important;text-decoration:none!important}.reference-ui-v99 .playbook-aside li a.is-current{color:#0b7953!important;font-weight:700!important}.reference-ui-v99 .rail-tools{background:linear-gradient(180deg,#fbfffd,#f7fcf9)!important;border-color:#d7e9df!important}.reference-ui-v99 .rail-tools>b{color:#137452!important}.reference-ui-v99 .rail-tools>a:not(.rail-all-tools){display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;gap:9px!important;align-items:center!important;padding:7px 0!important;border-bottom:0!important;text-decoration:none!important}.reference-ui-v99 .rail-tool-mark{width:32px!important;height:32px!important;border-radius:8px!important;display:grid!important;place-items:center!important;background:#e8f4ff!important;color:#1e84dd!important;font-size:9px!important;font-weight:800!important}.reference-ui-v99 .rail-tools a b{font-size:10.7px!important;color:#26332f!important}.reference-ui-v99 .rail-tools a small{display:block!important;margin-top:1px!important;font-size:9px!important;color:#7a8783!important}.reference-ui-v99 .rail-all-tools{margin-top:7px!important;height:31px!important;border:1px solid #9dcab6!important;border-radius:5px!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#0d7652!important;font-size:9.5px!important;font-weight:700!important;text-decoration:none!important}.reference-ui-v99 .rail-related-visual{background:#fffaf3!important;border-color:#efe0c8!important}.reference-ui-v99 .rail-related-visual>b{color:#8a5b1f!important}.reference-ui-v99 .rail-related-visual>a{grid-template-columns:52px minmax(0,1fr)!important;gap:9px!important;padding:7px 0!important;border-bottom:0!important}.reference-ui-v99 .rail-related-visual img{width:52px!important;height:38px!important;border-radius:6px!important;object-fit:cover!important;padding:0!important;background:#f4f6f5!important}.reference-ui-v99 .rail-related-visual span{font-size:9.7px!important;line-height:1.3!important;color:#394640!important}.reference-ui-v99 .rail-cover-card,.reference-ui-v99 .rail-partner-card,.reference-ui-v99 .rail-path-card{display:none!important}

/* generic article pages receive the same shell */
.reference-ui-v99 .article-page .article h1{font:800 30px/1.1 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;letter-spacing:-.03em!important;color:#111a18!important;margin:0 0 8px!important}.reference-ui-v99 .article-page .article>.lead{font-size:13px!important;color:#6a7773!important;max-width:900px!important}.reference-ui-v99 .article-page .article>.article-label{display:none!important}.reference-ui-v99 .article-actions-unified{margin:10px 0!important}.reference-ui-v99 .article-figure{border-radius:9px!important;border:1px solid #e1e7e4!important;box-shadow:none!important}.reference-ui-v99 .article-figure figcaption{font-size:11px!important;line-height:1.5!important;color:#687772!important}

/* responsive */
@media(max-width:1320px){
  :root{--ref-sidebar:220px;--ref-rail:286px;--ref-gap:18px}
  body.reference-ui-v99 .article-layout{padding-inline:20px!important}.ref-top-search{width:210px}.ref-top-progress{width:145px}.reference-ui-v99 .playbook-checklist{grid-template-columns:repeat(3,minmax(0,1fr))!important}.ref-format-showcase{grid-template-columns:repeat(3,minmax(0,1fr))}.ref-format-card:nth-child(4),.ref-format-card:nth-child(5){display:none}.ref-metrics-row{grid-template-columns:repeat(3,minmax(0,1fr))}.ref-metrics-row>div:nth-child(4),.ref-metrics-row>div:nth-child(5){display:none}.ref-connected-tools>div{grid-template-columns:repeat(3,minmax(0,1fr))}.ref-connected-tools a:nth-child(n/**/+4){display:none}
}
@media(max-width:1100px){
  :root{--ref-sidebar:210px}
  .ref-top-progress,.ref-top-favorite span{display:none}.ref-top-favorite{width:34px;padding:0;justify-content:center}.ref-top-search{width:190px}
  body.reference-ui-v99 .article-layout{grid-template-columns:minmax(0,1fr)!important;max-width:920px!important}.reference-ui-v99 .article-aside.enhanced-rail{display:none!important}.reference-ui-v99 .source-title-row{grid-template-columns:58px minmax(0,1fr) 145px!important}.reference-ui-v99 .playbook-checklist{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:820px){
  :root{--ref-sidebar:278px;--ref-topbar:52px}
  body.reference-ui-v99 .global-sidebar{transform:translateX(-102%)!important;transition:transform .22s ease!important;box-shadow:18px 0 45px rgba(0,0,0,.22)!important}.reference-ui-v99.mobile-nav-open .global-sidebar{transform:none!important}
  body.reference-ui-v99 .site-header{left:0!important}.ref-topbar{padding:0 12px!important}.ref-topbar-crumbs{display:none}.ref-mobile-brand{display:flex;align-items:center;gap:8px;min-width:0;flex:1;color:#fff}.ref-mobile-brand img{width:29px;height:29px}.ref-mobile-brand b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ref-top-search,.ref-top-favorite,.ref-top-progress{display:none}.ref-theme-button{height:34px;width:34px}.ref-mobile-menu{display:grid;width:34px;height:34px;place-items:center;border:1px solid #26383d;border-radius:7px;background:#0b1d22;color:#fff;font-size:17px}
  body.reference-ui-v99 main{margin-left:0!important}.reference-ui-v99 .site-footer{margin-left:0!important}.reference-ui-v99 .article-layout{display:block!important;width:100%!important;max-width:none!important;padding:16px 15px 52px!important}.reference-ui-v99 .source-title-row{grid-template-columns:48px minmax(0,1fr)!important;gap:10px!important}.reference-ui-v99 .source-hero-icon{width:46px!important;height:46px!important;border-radius:10px!important}.ref-launch-time{display:none}.reference-ui-v99 .source-title-copy h1{font-size:25px!important}.reference-ui-v99 .source-hero-shell>.lead{font-size:12px!important}.reference-ui-v99 .playbook-facts{margin-left:0!important}.reference-ui-v99 .source-section-tabs{margin-inline:-15px!important;padding-inline:15px!important}.ref-source-funnel{grid-template-columns:1fr 20px 1fr!important;gap:6px!important}.ref-source-funnel>div:nth-of-type(n/**/+3),.ref-source-funnel>em:nth-of-type(n/**/+2){display:none!important}.reference-ui-v99 .playbook-checklist{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ref-format-showcase{grid-template-columns:repeat(2,minmax(0,1fr))}.ref-format-card:nth-child(3){display:none}.ref-summary-grid{grid-template-columns:1fr!important}.ref-metrics-row{grid-template-columns:repeat(3,minmax(0,1fr))}.reference-ui-v99 .playbook-steps,.reference-ui-v99 .platform-setup,.reference-ui-v99 .playbook-format-list,.reference-ui-v99 .traffic-diagnostic-list,.reference-ui-v99 .source-toolkit-grid,.reference-ui-v99 .source-journey-grid.four,.reference-ui-v99 .source-journey-grid.three{grid-template-columns:1fr!important}.ref-connected-tools>div{grid-template-columns:repeat(2,minmax(0,1fr))}.ref-connected-tools a:nth-child(3){display:none}.reference-ui-v99 .source-playbook-article p,.reference-ui-v99 .source-playbook-article li,.reference-ui-v99 .article-page .article p,.reference-ui-v99 .article-page .article li{font-size:14px!important;line-height:1.6!important}.reference-ui-v99 .source-playbook-article h2,.reference-ui-v99 .article-page .article h2{font-size:20px!important}
}
@media(max-width:480px){
  .reference-ui-v99 .playbook-checklist{grid-template-columns:1fr!important}.ref-format-showcase{grid-template-columns:1fr!important}.ref-format-card:nth-child(2){display:none}.ref-metrics-row{grid-template-columns:repeat(2,minmax(0,1fr))}.ref-metrics-row>div:nth-child(3){display:none}.ref-source-funnel{display:block!important}.ref-source-funnel>div{grid-template-columns:34px 1fr;margin-bottom:10px}.ref-source-funnel>em{display:none!important}.ref-connected-tools>div{grid-template-columns:1fr}.ref-connected-tools a:nth-child(2){display:none}.reference-ui-v99 .source-title-copy h1{font-size:23px!important}
}

/* ======================================================================
   v100 — restore the compact reading canvas
   Keep the v99 visual system, but stop stretching the article across the
   whole available desktop width. This restores the balanced proportions
   used before the full-width reference rebuild.
   ====================================================================== */
@media (min-width:1101px){
  body.reference-ui-v99 .article-layout{
    width:calc(100% - 28px)!important;
    max-width:1260px!important;
    margin:0 auto!important;
    padding-left:0!important;
    padding-right:0!important;
    grid-template-columns:minmax(0,920px) 300px!important;
    gap:22px!important;
    justify-content:center!important;
  }
  body.reference-ui-v99 .source-playbook-article,
  body.reference-ui-v99 .article-page .article{
    width:100%!important;
    max-width:920px!important;
    justify-self:stretch!important;
  }
  body.reference-ui-v99 .article-aside.enhanced-rail{
    width:300px!important;
    max-width:300px!important;
    justify-self:stretch!important;
  }
}

@media (min-width:1101px) and (max-width:1320px){
  body.reference-ui-v99 .article-layout{
    max-width:1120px!important;
    grid-template-columns:minmax(0,820px) 280px!important;
    gap:20px!important;
  }
  body.reference-ui-v99 .source-playbook-article,
  body.reference-ui-v99 .article-page .article{max-width:820px!important}
  body.reference-ui-v99 .article-aside.enhanced-rail{width:280px!important;max-width:280px!important}
}


/* ======================================================================
   v101 — structured long-form guide
   The article reads as a course: explanation first, cards only where they
   carry a concrete task, with more vertical breathing room between stages.
   ====================================================================== */
.guide-structured-v101 .guide-v101-section{margin:0;padding:30px 0 32px;border-top:1px solid #e6ebe8}
.guide-structured-v101 .guide-v101-section:first-of-type{border-top:0;padding-top:24px}
.guide-structured-v101 .guide-v101-section>h2{margin:0 0 12px!important;font-size:21px!important;line-height:1.25!important;color:#18231f!important}
.guide-structured-v101 .guide-v101-section>p{max-width:820px;margin:0 0 12px!important;color:#5b6964!important;font-size:14px!important;line-height:1.68!important}
.guide-v101-hero .playbook-facts{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.guide-v101-flow{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr);gap:6px;align-items:center;margin:20px 0 12px;padding:18px;border:1px solid #dfe8e3;border-radius:10px;background:#fbfdfc}
.guide-v101-flow>div{min-width:0;text-align:center}.guide-v101-flow span{display:grid;width:28px;height:28px;margin:0 auto 8px;place-items:center;border-radius:50%;background:#e7f5ee;color:#0a8359;font-size:11px;font-weight:800}.guide-v101-flow b{display:block;font-size:11.5px;color:#24342e}.guide-v101-flow small{display:block;margin-top:3px;color:#7a8983;font-size:9.5px;line-height:1.4}.guide-v101-flow>i{font-style:normal;color:#8ba39a;font-size:19px;text-align:center}
.guide-v101-flow.compact{grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 24px minmax(0,1fr) 24px minmax(0,1fr)}
.guide-v101-callout{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:start;margin-top:15px;padding:13px 15px;border-left:3px solid #159668;border-radius:0 8px 8px 0;background:#f2f9f5}.guide-v101-callout b{color:#176b4e;font-size:11.5px}.guide-v101-callout p{margin:0!important;color:#52645d!important;font-size:12px!important;line-height:1.55!important}.guide-v101-callout.warning{border-left-color:#df9d31;background:#fff9ed}.guide-v101-callout.warning b{color:#9a6415}
.guide-v101-dual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.guide-v101-verdict{padding:18px;border:1px solid #e0e7e3;border-radius:10px;background:#fff}.guide-v101-verdict.good{background:#f8fcfa}.guide-v101-verdict.bad{background:#fffaf7}.guide-v101-verdict h3{margin:0 0 10px;font-size:14px}.guide-v101-verdict.good h3{color:#147651}.guide-v101-verdict.bad h3{color:#9a5e2e}.guide-v101-verdict ul{margin:0;padding-left:20px;display:grid;gap:6px}.guide-v101-verdict li{font-size:12px!important;line-height:1.5!important;color:#5e6c67!important}
.guide-v101-grid{display:grid;gap:12px;margin-top:18px}.guide-v101-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.guide-v101-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.guide-v101-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-v101-grid>div{position:relative;padding:17px 15px;border:1px solid #e0e7e3;border-radius:9px;background:#fff;box-shadow:0 4px 14px rgba(32,64,51,.025)}.guide-v101-grid>div>span{display:block;margin-bottom:8px;color:#23a578;font-size:10px;font-weight:800}.guide-v101-grid h3{margin:0 0 7px;font-size:12.5px;color:#263832}.guide-v101-grid p{margin:0!important;color:#68766f!important;font-size:10.7px!important;line-height:1.5!important}.guide-v101-grid code{display:block;margin-top:9px;padding:7px 8px;border-radius:6px;background:#f4f7f5;color:#1d644b;font-size:9.8px;white-space:normal}
.guide-v101-inline-link{margin-top:13px!important}.guide-v101-inline-link a{display:inline-flex;align-items:center;padding:8px 11px;border:1px solid #b8dacb;border-radius:7px;color:#11704e!important;background:#f8fcfa;text-decoration:none!important;font-size:11px;font-weight:700}
.guide-v101-formats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:18px}.guide-v101-formats article{overflow:hidden;border:1px solid #e0e6e3;border-radius:9px;background:#fff}.guide-v101-format-art{height:88px;padding:15px;display:flex;flex-direction:column;justify-content:flex-end;color:white;font-size:12px;font-weight:800;line-height:1.03;letter-spacing:.02em;background:linear-gradient(145deg,#193e32,#081812)}.guide-v101-format-art b{font-size:22px}.guide-v101-format-art.f2{background:linear-gradient(145deg,#8d4218,#1b1710)}.guide-v101-format-art.f3{background:linear-gradient(145deg,#5a1e42,#18111a)}.guide-v101-format-art.f4{background:linear-gradient(145deg,#642535,#121626)}.guide-v101-format-art.f5{background:linear-gradient(145deg,#18564a,#0c1d18)}.guide-v101-formats h3{margin:10px 11px 4px;font-size:11.5px}.guide-v101-formats p{margin:0 11px 12px!important;color:#6d7a75!important;font-size:10px!important;line-height:1.45!important}
.guide-v101-timeline{display:grid;gap:0;margin-top:18px;border:1px solid #e0e7e3;border-radius:10px;background:#fff;overflow:hidden}.guide-v101-timeline>div{display:grid;grid-template-columns:130px 190px 1fr;gap:14px;padding:14px 16px;border-top:1px solid #edf1ef;align-items:start}.guide-v101-timeline>div:first-child{border-top:0}.guide-v101-timeline time{color:#11825a;font-size:10.5px;font-weight:800}.guide-v101-timeline h3{margin:0;font-size:11.5px;color:#263832}.guide-v101-timeline p{margin:0!important;color:#66736e!important;font-size:10.7px!important;line-height:1.5!important}
.guide-v101-media{margin:20px 0 0!important;border:1px solid #e1e7e4!important;border-radius:10px!important;background:#fff!important;overflow:hidden}.guide-v101-media img{display:block;width:100%;max-height:390px;object-fit:contain;background:#f7f9f8}.guide-v101-media figcaption{padding:12px 14px!important;background:#fbfcfb!important;color:#5f6d67!important;font-size:11.2px!important;line-height:1.55!important}.guide-v101-media figcaption strong{color:#31453d}
.guide-v101-link-options>div{padding:16px 17px;border:1px solid #e1e7e4;border-radius:9px;background:#fff}.guide-v101-link-options h3{margin:0 0 8px;font-size:12.5px}.guide-v101-link-options p,.guide-v101-link-options li{font-size:11.2px!important;line-height:1.55!important;color:#62706a!important}
.guide-v101-code{display:grid;grid-template-columns:150px 1fr;gap:12px;margin-top:14px;padding:16px;border:1px solid #dfe8e3;border-radius:9px;background:#f9fcfa}.guide-v101-code>b{font-size:11px;color:#315045}.guide-v101-code code{grid-column:2;padding:8px 10px;border-radius:6px;background:#eef6f2;color:#0b754f;font-size:11px}.guide-v101-code dl{grid-column:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}.guide-v101-code dl>div{padding-top:8px;border-top:1px solid #dfe8e3}.guide-v101-code dt{font-size:9px;font-weight:800;color:#217653}.guide-v101-code dd{margin:2px 0 0;font-size:9px!important;color:#6e7b76!important}
.guide-v101-steps{counter-reset:none;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin:18px 0 0!important;padding:0!important;list-style:none!important}.guide-v101-steps li{display:grid;grid-template-columns:34px 1fr;gap:11px;min-height:92px;padding:14px!important;border:1px solid #e0e7e3;border-radius:9px;background:#fff!important}.guide-v101-steps li>span{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#e8f5ef;color:#0b8057;font-size:10px;font-weight:850}.guide-v101-steps b{font-size:11.5px;color:#2c3f37}.guide-v101-steps p{margin:4px 0 0!important;color:#6a7772!important;font-size:10.5px!important;line-height:1.5!important}
.guide-v101-funnel-table{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.guide-v101-funnel-table>div{padding:14px;border:1px solid #dfe7e3;border-radius:9px;background:#fff}.guide-v101-funnel-table b{display:block;font-size:12px}.guide-v101-funnel-table span{display:block;margin:3px 0 7px;color:#16815a;font-size:9.5px;font-weight:750}.guide-v101-funnel-table small{display:block;color:#74817c;font-size:9.5px;line-height:1.4}
.guide-v101-diagnostics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.guide-v101-diagnostics a{padding:16px;border:1px solid #e0e7e3;border-radius:9px;background:#fff;text-decoration:none!important}.guide-v101-diagnostics b{display:block;color:#263a33;font-size:12px}.guide-v101-diagnostics p{margin:5px 0 9px!important;color:#697670!important;font-size:10.6px!important;line-height:1.5!important}.guide-v101-diagnostics span{color:#16815a;font-size:10px;font-weight:700}
.guide-v101-scale{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.guide-v101-scale>div{padding:15px;border-top:2px solid #1b9b6d;background:#f8fbf9}.guide-v101-scale b{display:block;font-size:11px;color:#176f50}.guide-v101-scale p{margin:5px 0 0!important;font-size:10.7px!important;line-height:1.5!important;color:#65736e!important}
.guide-v101-next>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.guide-v101-next a{padding:16px;border:1px solid #dfe7e3;border-radius:9px;background:#fff;text-decoration:none!important}.guide-v101-next b{display:block;color:#253a32;font-size:12px}.guide-v101-next span{display:block;margin-top:6px;color:#64736d;font-size:10.5px;line-height:1.45}
@media(max-width:1320px){.guide-v101-grid.five,.guide-v101-formats{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-v101-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.guide-v101-hero .playbook-facts{grid-template-columns:repeat(2,minmax(0,1fr))!important}.guide-v101-flow,.guide-v101-flow.compact{grid-template-columns:1fr!important}.guide-v101-flow>i{transform:rotate(90deg)}.guide-v101-dual,.guide-v101-grid.five,.guide-v101-grid.four,.guide-v101-grid.three,.guide-v101-formats,.guide-v101-funnel-table,.guide-v101-diagnostics,.guide-v101-scale,.guide-v101-next>div{grid-template-columns:1fr!important}.guide-v101-timeline>div{grid-template-columns:1fr;gap:5px}.guide-v101-code{grid-template-columns:1fr}.guide-v101-code code,.guide-v101-code dl{grid-column:1}.guide-v101-code dl{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-v101-steps{grid-template-columns:1fr!important}.guide-v101-callout{grid-template-columns:1fr;gap:5px}.guide-v101-section{padding-block:26px!important}}


/* ======================================================================
   v102 — refinement pass
   - compact home canvas
   - readable article scale
   - cleaner sidebar + icons
   - right rail pinned to the viewport edge
   - complete, layered dark theme
   ====================================================================== */
:root{
  --v102-article-max:900px;
  --v102-rail:300px;
  --v102-gap:24px;
  --v102-home:1180px;
}

/* LEFT NAV: fewer items, better icons, readable size */
.global-sidebar .sidebar-menu a{
  min-height:40px!important;
  padding:8px 10px 8px 39px!important;
  font-size:14px!important;
  line-height:1.25!important;
  letter-spacing:0!important;
}
.global-sidebar .sidebar-menu a:before{
  left:10px!important;
  width:21px!important;
  height:21px!important;
  border:0!important;
  border-radius:6px!important;
  background:rgba(255,255,255,.055)!important;
  color:#a8c9bd!important;
  font:700 12px/1 Inter,"Segoe UI",Arial,sans-serif!important;
}
.global-sidebar .sidebar-menu a[data-nav="home"]:before{content:"⌂"!important;font-size:14px!important}
.global-sidebar .sidebar-menu a[data-nav="start"]:before{content:"▶"!important;font-size:8px!important}
.global-sidebar .sidebar-menu a[data-nav="traffic"]:before{content:"↗"!important;font-size:14px!important}
.global-sidebar .sidebar-menu a[data-nav="practice"]:before{content:"✓"!important;font-size:12px!important}
.global-sidebar .sidebar-menu a[data-nav="diagnostics"]:before{content:"?"!important;font-size:12px!important}
.global-sidebar .sidebar-menu a[data-nav="analytics"]:before{content:"▥"!important;font-size:11px!important}
.global-sidebar .sidebar-menu a[data-nav="library"]:before{content:"▤"!important;font-size:11px!important}
.global-sidebar .sidebar-menu a[data-nav="services"]:before{content:"⚙"!important;font-size:11px!important}
.global-sidebar .sidebar-menu a[data-nav="glossary"]:before{content:"Aa"!important;font-size:8px!important}
.global-sidebar .sidebar-menu a.active:before,
.global-sidebar .sidebar-menu a.is-active:before,
.global-sidebar .sidebar-menu a[aria-current="page"]:before{
  background:rgba(83,216,164,.14)!important;
  color:#5bd7a8!important;
}
.global-sidebar .sidebar-group{margin-bottom:15px!important}
.global-sidebar .sidebar-group-title,.global-sidebar .sidebar-group-toggle{
  font-size:10.5px!important;
  letter-spacing:.07em!important;
}
.global-sidebar .sidebar-search input{font-size:14px!important}

/* HOME: restore the compact, centered composition instead of the stretched canvas */
main.home-page>section>.wrap,
main.home-page .wrap{
  width:min(calc(100% - 38px),var(--v102-home))!important;
  max-width:var(--v102-home)!important;
  margin-inline:auto!important;
}
main.home-page .home-welcome{padding:54px 0 56px!important}
main.home-page .home-welcome-grid{
  grid-template-columns:minmax(0,1fr) 350px!important;
  gap:44px!important;
  align-items:center!important;
}
main.home-page .home-welcome h1{
  max-width:720px!important;
  font-size:clamp(44px,4.5vw,64px)!important;
  line-height:1.03!important;
}
main.home-page .home-lead{max-width:700px!important;font-size:17px!important;line-height:1.68!important}
main.home-page .home-search-card{max-width:350px!important}
main.home-page .home-entry-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
main.home-page .home-source-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:13px!important}
main.home-page .home-reference .wrap{grid-template-columns:repeat(3,minmax(0,1fr))!important}

/* ARTICLE CANVAS: compact reading column; right rail sits near the viewport edge. */
@media(min-width:1051px){
  body.reference-ui-v99 .article-layout{
    width:calc(100vw - var(--ref-sidebar) - 20px)!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:12px!important;
    padding:24px 0 76px!important;
    grid-template-columns:minmax(0,var(--v102-article-max)) var(--v102-rail)!important;
    gap:var(--v102-gap)!important;
    justify-content:end!important;
    align-items:start!important;
  }
  body.reference-ui-v99 .article-aside.enhanced-rail{
    width:var(--v102-rail)!important;
    justify-self:end!important;
    position:sticky!important;
    top:calc(var(--ref-topbar) + 14px)!important;
    max-height:calc(100vh - var(--ref-topbar) - 26px)!important;
  }
}

/* ARTICLE TYPOGRAPHY: readable again, including the YouTube course. */
body.reference-ui-v99 .source-title-copy h1,
body.reference-ui-v99 .article h1{
  font-size:clamp(34px,2.4vw,43px)!important;
  line-height:1.08!important;
}
body.reference-ui-v99 .source-hero-shell>.lead,
body.reference-ui-v99 .article .lead,
.guide-v101-hero .lead{
  font-size:16px!important;
  line-height:1.62!important;
  color:#5a6c65!important;
}
body.reference-ui-v99 .source-playbook-article h2,
body.reference-ui-v99 .article-page .article h2,
.guide-structured-v101 .guide-v101-section>h2{
  font-size:24px!important;
  line-height:1.24!important;
  margin-bottom:12px!important;
}
body.reference-ui-v99 .source-playbook-article h3,
body.reference-ui-v99 .article-page .article h3,
.guide-structured-v101 h3{
  font-size:16px!important;
  line-height:1.4!important;
}
body.reference-ui-v99 .source-playbook-article p,
body.reference-ui-v99 .source-playbook-article li,
body.reference-ui-v99 .source-playbook-article dd,
body.reference-ui-v99 .article-page .article p,
body.reference-ui-v99 .article-page .article li,
body.reference-ui-v99 .article-page .article dd,
.guide-structured-v101 .guide-v101-section>p{
  font-size:16px!important;
  line-height:1.7!important;
}
body.reference-ui-v99 .source-playbook-article>section,
body.reference-ui-v99 .article-page .article>section,
.guide-structured-v101 .guide-v101-section{
  padding-top:28px!important;
  padding-bottom:28px!important;
}

/* YouTube structured guide: stop squeezing five tiny cards into one row. */
.guide-v101-grid.five,.guide-v101-formats{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.guide-v101-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.guide-v101-grid>div{padding:18px 17px!important}
.guide-v101-grid>div>span{font-size:11.5px!important}
.guide-v101-grid h3{font-size:15px!important;margin-bottom:8px!important}
.guide-v101-grid p{font-size:13.5px!important;line-height:1.58!important}
.guide-v101-grid code{font-size:11.5px!important;line-height:1.45!important}
.guide-v101-formats h3{font-size:14.5px!important;margin:11px 12px 5px!important}
.guide-v101-formats p{font-size:13px!important;line-height:1.52!important;margin:0 12px 14px!important}
.guide-v101-format-art{height:116px!important;font-size:13px!important}.guide-v101-format-art b{font-size:26px!important}
.guide-v101-callout{grid-template-columns:145px 1fr!important;padding:16px 17px!important}.guide-v101-callout b{font-size:13px!important}.guide-v101-callout p{font-size:13.5px!important;line-height:1.6!important}
.guide-v101-verdict h3{font-size:16px!important}.guide-v101-verdict li{font-size:14px!important;line-height:1.58!important}
.guide-v101-flow>div{padding:15px 12px!important}.guide-v101-flow b{font-size:13px!important}.guide-v101-flow small{font-size:11.5px!important;line-height:1.45!important}
.guide-v101-timeline>div{grid-template-columns:120px 180px 1fr!important;padding:17px 18px!important}.guide-v101-timeline time{font-size:12px!important}.guide-v101-timeline h3{font-size:14px!important}.guide-v101-timeline p{font-size:13.5px!important;line-height:1.56!important}
.guide-v101-media figcaption{font-size:13px!important;line-height:1.58!important;padding:14px 16px!important}
.guide-v101-link-options h3{font-size:15px!important}.guide-v101-link-options p,.guide-v101-link-options li{font-size:13.5px!important;line-height:1.58!important}
.guide-v101-code>b{font-size:13px!important}.guide-v101-code code{font-size:12.5px!important}.guide-v101-code dt{font-size:10.5px!important}.guide-v101-code dd{font-size:11.5px!important}
.guide-v101-steps li{min-height:118px!important;padding:17px!important}.guide-v101-steps b{font-size:14.5px!important}.guide-v101-steps p{font-size:13.5px!important;line-height:1.58!important}
.guide-v101-funnel-table b{font-size:14px!important}.guide-v101-funnel-table span{font-size:11px!important}.guide-v101-funnel-table small{font-size:11.5px!important;line-height:1.48!important}
.guide-v101-diagnostics b{font-size:14px!important}.guide-v101-diagnostics p{font-size:13px!important;line-height:1.55!important}.guide-v101-diagnostics span{font-size:11.5px!important}
.guide-v101-scale b{font-size:13px!important}.guide-v101-scale p{font-size:13px!important;line-height:1.56!important}.guide-v101-next b{font-size:14px!important}.guide-v101-next span{font-size:12.5px!important;line-height:1.5!important}
.guide-v101-inline-link a{font-size:12.5px!important;padding:9px 12px!important}

/* Right rail: denser but readable. */
.article-aside.enhanced-rail .rail-card{border-radius:11px!important}
.article-aside.enhanced-rail .rail-card h2,.article-aside.enhanced-rail .rail-card h3{font-size:14px!important}
.article-aside.enhanced-rail .rail-card a,.article-aside.enhanced-rail .rail-card p,.article-aside.enhanced-rail .rail-card span{font-size:12.5px!important;line-height:1.45!important}

/* COMPLETE DARK THEME: layered surfaces, readable type, preserved accents. */





























@media(max-width:1100px){
  main.home-page .home-source-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  main.home-page .home-welcome-grid{grid-template-columns:1fr!important}
  main.home-page .home-search-card{max-width:620px!important}
}
@media(max-width:820px){
  main.home-page>section>.wrap,main.home-page .wrap{width:min(calc(100% - 30px),var(--v102-home))!important}
  main.home-page .home-entry-grid,main.home-page .home-source-grid,main.home-page .home-reference .wrap{grid-template-columns:1fr!important}
  .guide-v101-grid.five,.guide-v101-grid.four,.guide-v101-formats{grid-template-columns:1fr!important}
  body.reference-ui-v99 .source-playbook-article p,body.reference-ui-v99 .source-playbook-article li,body.reference-ui-v99 .article-page .article p,body.reference-ui-v99 .article-page .article li{font-size:15.5px!important}
}

/* v102.1 — final desktop rail placement: the rail is fixed to the right edge,
   while the reading column stays centered in the remaining workspace. */
@media(min-width:1051px){
  body.reference-ui-v99 .article-layout{
    display:block!important;
    width:calc(100vw - var(--ref-sidebar) - var(--v102-rail) - 48px)!important;
    max-width:none!important;
    margin:0!important;
    padding:24px 0 76px 18px!important;
    box-sizing:border-box!important;
  }
  body.reference-ui-v99 .source-playbook-article,
  body.reference-ui-v99 .article-page .article{
    width:100%!important;
    max-width:var(--v102-article-max)!important;
    margin:0 auto!important;
  }
  body.reference-ui-v99 .article-aside.enhanced-rail{
    position:fixed!important;
    right:14px!important;
    left:auto!important;
    top:calc(var(--ref-topbar) + 14px)!important;
    width:var(--v102-rail)!important;
    max-height:calc(100vh - var(--ref-topbar) - 28px)!important;
    overflow:auto!important;
    z-index:45!important;
  }
}

/* Center the last row of five-card groups instead of leaving an awkward empty cell. */
@media(min-width:821px){
  .guide-v101-grid.five,.guide-v101-formats{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  .guide-v101-grid.five>div,.guide-v101-formats>article{grid-column:span 2}
  .guide-v101-grid.five>div:nth-child(4),.guide-v101-formats>article:nth-child(4){grid-column:2 / span 2}
  .guide-v101-grid.five>div:nth-child(5),.guide-v101-formats>article:nth-child(5){grid-column:4 / span 2}
}

/* v102.2 — dark theme contrast hierarchy */





























/* mobile reading scale */
@media(max-width:680px){
  body.reference-ui-v99 .source-title-copy h1,body.reference-ui-v99 .article h1{font-size:30px!important}
  body.reference-ui-v99 .source-hero-shell>.lead,body.reference-ui-v99 .article .lead{font-size:15.5px!important}
  body.reference-ui-v99 .source-playbook-article h2,body.reference-ui-v99 .article-page .article h2,.guide-structured-v101 .guide-v101-section>h2{font-size:22px!important}
  body.reference-ui-v99 .source-playbook-article p,body.reference-ui-v99 .source-playbook-article li,body.reference-ui-v99 .article-page .article p,body.reference-ui-v99 .article-page .article li,.guide-structured-v101 .guide-v101-section>p{font-size:15.5px!important;line-height:1.68!important}
  .global-sidebar .sidebar-menu a{font-size:14.5px!important;min-height:42px!important}
}


/* ======================================================================
   v103 — compact content system for every section except traffic playbooks.
   Traffic source guides keep their approved layout.
   ====================================================================== */
:root{
  --v103-content:1100px;
  --v103-reading:830px;
  --v103-rail:300px;
  --v103-card:#ffffff;
  --v103-soft:#f6f8f6;
  --v103-line:#dfe7e2;
  --v103-ink:#17231f;
  --v103-copy:#52645c;
}

/* Never stretch ordinary pages edge to edge. */
body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap,
body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap,
body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .page-head > .wrap,
body.content-system-v103 main.home-page > section > .wrap,
body.content-system-v103 main.home-page .wrap,
body.content-system-v103 .services-page > .wrap,
body.content-system-v103 .traffic-hub-page > .wrap{
  width:min(calc(100% - 48px),var(--v103-content))!important;
  max-width:var(--v103-content)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* Landing sections get breathing room, but do not become giant banners. */
body.content-system-v103 :is(.section-feature,.section-outcome,.section-groups,.section-bottom-links,.handbook,.tools-grid,.about-grid,.help-situations,.journal-shell,.library-shell,.glossary-shell,.service-start-grid,.service-tool-grid,.service-notice,.service-workflow){
  width:min(100%,var(--v103-content))!important;
  max-width:var(--v103-content)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.content-system-v103 .section-feature{grid-template-columns:minmax(0,1.45fr) minmax(260px,.72fr)!important;gap:20px!important;padding-top:28px!important;padding-bottom:26px!important}
body.content-system-v103 .section-feature>div,body.content-system-v103 .section-feature>aside{padding:22px 23px!important;border-radius:13px!important}
body.content-system-v103 .section-outcome{padding:22px 24px!important;border-radius:14px!important;gap:22px!important}
body.content-system-v103 .section-groups{padding-bottom:34px!important}
body.content-system-v103 .section-bottom-links{padding-top:22px!important;padding-bottom:38px!important}
body.content-system-v103 .handbook{padding-top:30px!important;padding-bottom:58px!important;max-width:900px!important}
body.content-system-v103 .service-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:920px!important}
body.content-system-v103 .service-tool-grid-one{grid-template-columns:minmax(0,620px)!important}
body.content-system-v103 .services-page .page-head{padding-bottom:18px!important}

/* Home stays compact: useful content occupies the space instead of stretched cards. */
body.content-system-v103 main.home-page .home-welcome{padding:48px 0 50px!important}
body.content-system-v103 main.home-page .home-welcome-grid{grid-template-columns:minmax(0,1.12fr) minmax(310px,.68fr)!important;gap:42px!important}
body.content-system-v103 main.home-page .home-entry-section,
body.content-system-v103 main.home-page .home-sources-v51{padding:42px 0 46px!important}
body.content-system-v103 main.home-page .home-entry-grid,
body.content-system-v103 main.home-page .home-source-grid{gap:12px!important}
body.content-system-v103 main.home-page .home-entry-grid>a,
body.content-system-v103 main.home-page .home-source-grid>a{padding:19px 20px!important;min-height:178px!important}
body.content-system-v103 main.home-page .home-results{padding:34px 0 46px!important}

/* Ordinary guide articles: reading column centered in its own workspace,
   with a clear gap before the fixed right rail. */
@media(min-width:1281px){
  body.content-system-v103.article-page main:not(.source-playbook-page) .article-layout{
    display:block!important;
    width:calc(100vw - var(--ref-sidebar) - var(--v103-rail) - 72px)!important;
    max-width:none!important;
    margin:0!important;
    padding:28px 0 78px!important;
  }
  body.content-system-v103.article-page main:not(.source-playbook-page) .article{
    width:min(100%,var(--v103-reading))!important;
    max-width:var(--v103-reading)!important;
    margin:0 auto!important;
    justify-self:auto!important;
  }
  body.content-system-v103.article-page main:not(.source-playbook-page) .article-aside.enhanced-rail{
    position:fixed!important;
    top:calc(var(--ref-topbar) + 16px)!important;
    right:18px!important;
    left:auto!important;
    width:var(--v103-rail)!important;
    max-height:calc(100vh - var(--ref-topbar) - 32px)!important;
    overflow:auto!important;
  }
}
@media(min-width:1051px) and (max-width:1280px){
  body.content-system-v103.article-page main:not(.source-playbook-page) .article-layout{
    display:block!important;width:calc(100vw - var(--ref-sidebar))!important;max-width:none!important;margin:0!important;padding:26px 30px 70px!important
  }
  body.content-system-v103.article-page main:not(.source-playbook-page) .article{width:min(100%,850px)!important;max-width:850px!important;margin:0 auto!important}
  body.content-system-v103.article-page main:not(.source-playbook-page) .article-aside.enhanced-rail{display:none!important}
}

/* Logical article structure. Each section is a meaningful unit, not a full-width slab. */
body.content-system-v103 .structured-article-v103 .academy-article-hero{
  margin-bottom:18px!important;padding-bottom:18px!important
}
body.content-system-v103 .structured-article-v103 .logic-section-v103{
  position:relative!important;
  margin:14px 0!important;
  padding:22px 24px 23px!important;
  background:var(--v103-card)!important;
  border:1px solid var(--v103-line)!important;
  border-radius:14px!important;
  box-shadow:0 7px 20px rgba(22,45,36,.035)!important;
}
body.content-system-v103 .structured-article-v103 .logic-section-v103>h2{
  display:flex!important;align-items:flex-start!important;gap:11px!important;
  margin:0 0 12px!important;font-size:23px!important;line-height:1.22!important;color:var(--v103-ink)!important
}
body.content-system-v103 .structured-article-v103 .logic-index-v103{
  flex:0 0 auto;display:grid;place-items:center;width:31px;height:27px;margin-top:1px;
  border-radius:8px;background:#eaf5f0;color:#167454;font-size:10px;font-weight:850;letter-spacing:.04em
}
body.content-system-v103 .structured-article-v103 .logic-action-v103{border-left:3px solid #2d9b72!important}
body.content-system-v103 .structured-article-v103 .logic-analysis-v103{border-left:3px solid #6b8e83!important}
body.content-system-v103 .structured-article-v103 .logic-warning-v103{border-left:3px solid #bd8a48!important;background:#fffdf8!important}
body.content-system-v103 .structured-article-v103 .logic-section-v103 :is(p,li,dd){font-size:16px!important;line-height:1.68!important;color:var(--v103-copy)!important}
body.content-system-v103 .structured-article-v103 .logic-section-v103 p{max-width:760px!important}
body.content-system-v103 .structured-article-v103 .logic-section-v103 :is(ul,ol){margin-top:10px!important;margin-bottom:10px!important}
body.content-system-v103 .structured-article-v103 .logic-section-v103 :is(.inline-note,.article-figure,table,pre){margin-top:16px!important;margin-bottom:16px!important}
body.content-system-v103 .structured-article-v103 .article-depth.logic-section-v103{background:#f8faf8!important}
body.content-system-v103 .structured-article-v103 .partner-specific-box.logic-section-v103{background:#f4f8f5!important}
body.content-system-v103 .structured-article-v103 .related-reading{margin-top:20px!important}

/* Non-article pages: card groups look deliberate, not stretched. */
body.content-system-v103 :is(.knowledge-map,.index-panel,.help-situations,.tools-grid,.about-grid,.service-start-grid,.journal-reading-grid,.section-outcome ul){gap:12px!important}
body.content-system-v103 :is(.knowledge-map>div,.index-panel>div,.help-situations>a,.tool-card,.about-card,.section-entry,.section-outcome li){border-radius:12px!important}
body.content-system-v103 .page-head{padding-top:38px!important;padding-bottom:30px!important}
body.content-system-v103 .page-head h1{max-width:800px!important}
body.content-system-v103 .page-head p{max-width:720px!important}

/* Footer is intentionally dark in both themes. */
body .site-footer{
  background:#071419!important;
  border-top:1px solid #183037!important;
  color:#9fb1ad!important;
}
body .site-footer .wrap{width:min(calc(100% - 48px),1100px)!important;max-width:1100px!important;margin:0 auto!important}
body .site-footer .footer-brand{color:#f0f6f4!important}
body .site-footer p,body .site-footer span{color:#91a6a1!important}
body .site-footer a{color:#c9d8d4!important}
body .site-footer a:hover{color:#6ed4ad!important}
body .site-footer .footer-bottom{border-color:#183037!important}

@media(max-width:1280px){
  body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap,
  body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap,
  body.content-system-v103 main.home-page > section > .wrap,
  body.content-system-v103 main.home-page .wrap{width:min(calc(100% - 36px),1020px)!important}
}
@media(max-width:820px){
  body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap,
  body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap,
  body.content-system-v103 main.home-page > section > .wrap,
  body.content-system-v103 main.home-page .wrap,
  body.content-system-v103 .site-footer .wrap{width:calc(100% - 28px)!important}
  body.content-system-v103 .section-feature{grid-template-columns:1fr!important;gap:12px!important}
  body.content-system-v103 .service-tool-grid{grid-template-columns:1fr!important}
  body.content-system-v103 .structured-article-v103 .logic-section-v103{padding:18px 17px 19px!important;margin:11px 0!important;border-radius:12px!important}
  body.content-system-v103 .structured-article-v103 .logic-section-v103>h2{font-size:21px!important;gap:9px!important}
  body.content-system-v103 .structured-article-v103 .logic-section-v103 :is(p,li,dd){font-size:15.5px!important;line-height:1.66!important}
  body.content-system-v103 main.home-page .home-welcome-grid{grid-template-columns:1fr!important;gap:25px!important}
}


/* ======================================================================
   v104 — proportions and block rhythm cleanup
   - source playbooks get a wider, symmetrical reading canvas
   - cards size to their content instead of stretching to row height
   - structured articles keep one visible number only
   - overflow protection for long terms, labels and code
   ====================================================================== */
:root{
  --v104-regular-content:980px;
  --v104-source-article:930px;
  --v104-source-rail:270px;
  --v104-source-gap:30px;
}

/* Ordinary section pages: keep the content compact and let cards hug their content. */
body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap,
body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap,
body.content-system-v103 main.section-landing > .wrap,
body.content-system-v103 main.section-landing .wrap{
  width:min(calc(100% - 42px),var(--v104-regular-content))!important;
  max-width:var(--v104-regular-content)!important;
}

/* Catalog / source cards: no artificial empty lower half. */
.playbook-catalog-grid,
.home-source-grid,
.home-entry-grid,
.section-entry-grid{
  align-items:start!important;
  grid-auto-rows:auto!important;
}
.playbook-card,
.traffic-hub-page .playbook-card,
.home-source-grid>a,
.home-entry-grid>a,
.section-entry{
  min-height:0!important;
  height:auto!important;
  align-self:start!important;
}
.playbook-card{
  padding:20px 20px 18px!important;
  border-radius:11px!important;
  box-shadow:0 4px 14px rgba(30,52,43,.035)!important;
}
.playbook-card h2{font-size:23px!important;line-height:1.18!important;margin:9px 0 8px!important}
.playbook-card>p{margin-bottom:13px!important;font-size:14px!important;line-height:1.55!important}
.playbook-card .playbook-facts{margin:10px 0 0!important;gap:6px!important}
.playbook-card .playbook-facts>div{padding:6px 8px!important}
.playbook-card>a{margin-top:14px!important;padding-top:11px!important}
.home-source-grid>a{padding:18px 18px 17px!important}
.home-source-grid small{margin-top:14px!important;padding-top:11px!important;border-top:1px solid #ece6dc!important}

/* Practice outcome: compact, balanced and impossible to clip horizontally. */
.section-outcome{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  grid-template-columns:minmax(225px,.7fr) minmax(0,1.7fr)!important;
  gap:20px!important;
  padding:20px 21px!important;
  overflow:visible!important;
}
.section-outcome>div,.section-outcome ul,.section-outcome li{min-width:0!important}
.section-outcome h2{font-size:25px!important;line-height:1.16!important;overflow-wrap:anywhere!important}
.section-outcome ul{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}
.section-outcome li{
  min-height:0!important;
  height:auto!important;
  padding:13px 12px 13px 38px!important;
  font-size:13.5px!important;
  line-height:1.48!important;
  overflow-wrap:anywhere!important;
}
.section-outcome li:before{top:12px!important;left:11px!important}

/* Normal guide blocks: a calmer lesson-card style, without oversized white slabs. */
body.content-system-v103 .structured-article-v103 .logic-section-v103{
  margin:11px 0!important;
  padding:18px 20px 19px!important;
  border:1px solid #e1e8e4!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(25,48,39,.025)!important;
  min-width:0!important;
}
body.content-system-v103 .structured-article-v103 .logic-section-v103>h2{
  gap:10px!important;
  margin:0 0 9px!important;
  font-size:20.5px!important;
  line-height:1.25!important;
  min-width:0!important;
}
body.content-system-v103 .structured-article-v103 .logic-index-v103{
  width:28px!important;height:25px!important;border-radius:7px!important;font-size:9.5px!important;
}
body.content-system-v103 .structured-article-v103 .logic-section-v103 :is(p,li,dd){
  font-size:15.5px!important;
  line-height:1.64!important;
  overflow-wrap:anywhere!important;
}
body.content-system-v103 .structured-article-v103 .logic-section-v103 p{max-width:none!important}
body.content-system-v103 .structured-article-v103 .logic-explain-v103{border-left:3px solid #9bb7aa!important}
body.content-system-v103 .structured-article-v103 .logic-action-v103{background:#f8fcfa!important;border-left:3px solid #2d9b72!important}
body.content-system-v103 .structured-article-v103 .logic-analysis-v103{background:#f7faf9!important;border-left:3px solid #718f84!important}
body.content-system-v103 .structured-article-v103 .logic-warning-v103{background:#fffaf2!important;border-left:3px solid #bd8a48!important}

/* Source playbooks: wider article, symmetrical space, separate right rail. */
@media(min-width:1051px){
  body.reference-ui-v99 .source-playbook-page .article-layout,
  .source-playbook-page .article-layout{
    width:calc(100% - 28px)!important;
    max-width:1230px!important;
    margin:0 auto!important;
    padding:27px 0 72px!important;
    display:grid!important;
    grid-template-columns:minmax(0,var(--v104-source-article)) var(--v104-source-rail)!important;
    gap:var(--v104-source-gap)!important;
    justify-content:center!important;
    align-items:start!important;
  }
  body.reference-ui-v99 .source-playbook-page .source-playbook-article,
  .source-playbook-page .source-playbook-article{
    width:100%!important;
    max-width:var(--v104-source-article)!important;
    min-width:0!important;
    padding:0!important;
  }
  body.reference-ui-v99 .source-playbook-page .article-aside.enhanced-rail,
  .source-playbook-page .article-aside.enhanced-rail{
    width:var(--v104-source-rail)!important;
    max-width:var(--v104-source-rail)!important;
    justify-self:stretch!important;
  }
}

/* Source cards: content determines height; 3-column checklists instead of five narrow towers. */
.source-playbook-article .playbook-checklist{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:start!important;
}
.source-playbook-article .playbook-checklist li{
  min-height:0!important;
  height:auto!important;
  align-self:start!important;
  padding:13px 13px 13px 39px!important;
  font-size:14.5px!important;
  line-height:1.56!important;
}
.source-playbook-article .playbook-checklist li:before{left:12px!important;top:12px!important}
.source-playbook-article :is(.platform-setup,.playbook-format-list,.traffic-diagnostic-list,.source-toolkit-grid){
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:start!important;
}
.source-playbook-article :is(.platform-setup>div,.playbook-format-list>div,.traffic-diagnostic-list li,.source-tool-card){
  min-height:0!important;
  height:auto!important;
  align-self:start!important;
}
.source-tool-card{padding:15px 16px!important}
.source-tool-card-copy{flex:0 1 auto!important}
.source-tool-card-action{margin-top:10px!important}

/* The three-step visual row remains balanced, but text may wrap freely. */
.source-journey-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;align-items:start!important}
.source-journey-card{min-width:0!important;height:auto!important;align-self:start!important}
.source-journey-card figcaption{overflow-wrap:anywhere!important}

/* Global overflow safeguards for the blocks touched in this pass. */
:is(.playbook-card,.home-source-grid>a,.home-entry-grid>a,.section-entry,.section-outcome,.logic-section-v103,.source-playbook-article,.source-tool-card) *{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
:is(.playbook-card,.home-source-grid>a,.home-entry-grid>a,.section-entry,.section-outcome,.logic-section-v103,.source-playbook-article,.source-tool-card) :is(p,li,dd,h2,h3,code,a,span){
  overflow-wrap:anywhere;
}
.article pre,.article table{max-width:100%!important}
.article pre{overflow:auto!important}

@media(max-width:1180px) and (min-width:1051px){
  body.reference-ui-v99 .source-playbook-page .article-layout,
  .source-playbook-page .article-layout{
    max-width:1030px!important;
    grid-template-columns:minmax(0,730px) 270px!important;
    gap:24px!important;
  }
}
@media(max-width:900px){
  .section-outcome{grid-template-columns:1fr!important}
  .section-outcome ul{grid-template-columns:1fr!important}
}
@media(max-width:820px){
  body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap,
  body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap,
  body.content-system-v103 main.section-landing > .wrap,
  body.content-system-v103 main.section-landing .wrap{width:calc(100% - 28px)!important}
  .source-playbook-article .playbook-checklist,
  .source-playbook-article :is(.platform-setup,.playbook-format-list,.traffic-diagnostic-list,.source-toolkit-grid),
  .source-journey-grid.three{grid-template-columns:1fr!important}
  body.content-system-v103 .structured-article-v103 .logic-section-v103{padding:16px 16px 17px!important}
}


/* v105 patch: proportional cards, real tool icons, neutral dark theme */

body .rail-tools>a:not(.rail-all-tools),
body .service-tool,
body .source-tool-card{min-width:0}

body .rail-tools>a:not(.rail-all-tools){align-items:center!important;gap:11px!important;padding:10px 0!important}
body .rail-tools>a>span:last-child{min-width:0;display:flex!important;flex-direction:column;justify-content:center}
body .rail-tools a b{display:block;font-size:12px!important;line-height:1.3!important;letter-spacing:.01em}
body .rail-tools a small{display:block;margin-top:2px;font-size:10px!important;line-height:1.35!important;color:#75817c!important}
body .rail-tool-mark,
body .service-mark{position:relative;display:grid;place-items:center;overflow:hidden;color:transparent!important;font-size:0!important;line-height:0!important;border:1px solid #cfe0d9!important;background:linear-gradient(180deg,#f7faf9,#edf4f1)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}
body .rail-tool-mark::before,
body .service-mark::before{content:"";width:19px;height:19px;background:var(--tool-icon) center/contain no-repeat;display:block;opacity:.98}
body .service-tool-head{align-items:flex-start!important;gap:14px!important}
body .service-mark{width:44px!important;height:44px!important;flex:0 0 44px!important;border-radius:12px!important}
body .service-tool h3{margin:2px 0 0!important;line-height:1.2!important}
body .service-kicker{margin-bottom:4px!important}
body .service-tool p,
body .service-tool dd,
body .service-tool dt{text-wrap:pretty}
body .service-tool dl>div{padding:11px 0!important}
body .service-tool-actions{display:flex;flex-wrap:wrap;gap:10px}
body .service-tool-actions a:last-child{align-self:center}

body .source-tool-card{display:grid!important;grid-template-rows:auto auto 1fr auto;gap:8px;align-content:start;min-height:0!important;padding:16px!important}
body .source-tool-card>b{margin:0!important;font-size:17px!important;line-height:1.22!important}
body .source-tool-card-top{margin-bottom:0!important}
body .source-tool-card-copy{font-size:13px!important;line-height:1.58!important}
body .source-tool-card-action{margin-top:0!important}

body .playbook-card{min-height:0!important}
body .playbook-card-top{position:relative;display:flex!important;align-items:flex-end!important;min-height:82px!important;margin:-3px -3px 15px!important;padding:16px 16px 14px!important;border-radius:12px!important;overflow:hidden;background:linear-gradient(135deg,#123128 0%,#0f211c 62%,#143f2f 100%)!important;color:#f4e5ce!important}
body .playbook-card-top span{position:relative;z-index:2;color:#f0d4aa!important;font-size:10px!important;letter-spacing:.12em!important}
body .playbook-card-top .playbook-hero-art{position:absolute;right:14px;bottom:10px;width:86px;height:56px;border-radius:14px;background:radial-gradient(circle at 30% 35%,rgba(255,210,120,.3),transparent 40%),linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.09);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
body .playbook-card-top .playbook-hero-art::before{content:"";position:absolute;inset:13px 17px;border-radius:10px;background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.02))}
body .playbook-card[data-source="youtube"] .playbook-card-top{background:linear-gradient(135deg,#431717 0%,#861e1e 50%,#d83d3d 100%)!important}
body .playbook-card[data-source="vk-video"] .playbook-card-top{background:linear-gradient(135deg,#173044 0%,#1f4b72 52%,#3193ff 100%)!important}
body .playbook-card[data-source="telegram"] .playbook-card-top{background:linear-gradient(135deg,#123045 0%,#185379 54%,#2daeff 100%)!important}
body .playbook-card[data-source="content-site"] .playbook-card-top{background:linear-gradient(135deg,#2c2214 0%,#5f4722 56%,#c58b39 100%)!important}
body .playbook-card[data-source="social"] .playbook-card-top,
body .playbook-card[data-source="short-video"] .playbook-card-top{background:linear-gradient(135deg,#21153d 0%,#4b1e74 55%,#a04bff 100%)!important}
body .playbook-card[data-source="search"] .playbook-card-top{background:linear-gradient(135deg,#0f291a 0%,#1d5631 54%,#38b46d 100%)!important}
body .playbook-card[data-source="paid"] .playbook-card-top{background:linear-gradient(135deg,#331c22 0%,#6d273b 56%,#c54b70 100%)!important}
body .playbook-card[data-source="streams"] .playbook-card-top{background:linear-gradient(135deg,#372010 0%,#7e451d 54%,#ff9b44 100%)!important}
body .playbook-card[data-source="reddit"] .playbook-card-top,
body .playbook-card[data-source="x-twitter"] .playbook-card-top{background:linear-gradient(135deg,#17222b 0%,#273b49 56%,#4f85a7 100%)!important}
body .playbook-card h2{font-size:24px!important;line-height:1.18!important;margin:0 0 10px!important;text-wrap:balance}
body .playbook-card>p{font-size:14.2px!important;line-height:1.62!important;text-wrap:pretty}
body .playbook-card .playbook-facts{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
body .playbook-card .playbook-facts>div{display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:6px!important;min-height:0!important;padding:7px 10px!important;border-radius:8px!important;background:#fbfcfb!important}
body .playbook-card .playbook-facts dt{font-size:11px!important;font-weight:700!important;color:#6c7874!important}
body .playbook-card .playbook-facts dd{font-size:12px!important;line-height:1.35!important}
body .playbook-card>a{margin-top:16px!important;padding-top:14px!important;border-top:1px solid #e7e1d7!important;font-size:12px!important;opacity:1!important;color:#184e40!important}

/* Source articles: unified width and calmer layout */
body.reference-ui-v99 .source-playbook-page .article-layout,
body .source-playbook-page .article-layout{grid-template-columns:minmax(0,930px) 280px!important;gap:38px!important;max-width:1248px!important;padding-left:26px!important;padding-right:26px!important}
body.reference-ui-v99 .source-playbook-page .source-playbook-article,
body .source-playbook-page .source-playbook-article{background:transparent!important;border:0!important;box-shadow:none!important}
body .source-playbook-page .source-hero-shell{margin-bottom:14px!important}
body .source-playbook-page section{margin-top:26px!important}
body .source-playbook-page .playbook-checklist{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
body .source-playbook-page .playbook-checklist li{min-height:0!important;padding:16px 16px 15px!important;border-radius:14px!important}
body .source-playbook-page .source-journey-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
body .source-playbook-page .source-journey-card{height:100%!important}
body .source-playbook-page .source-journey-card figcaption{padding:14px 15px 15px!important;line-height:1.55!important}
body .source-playbook-page .source-journey-card img{aspect-ratio:16/9;object-fit:cover}
body .source-playbook-page .source-section-tabs{row-gap:8px!important}
body .source-playbook-page .source-section-tabs a{padding:8px 12px!important}
body .source-playbook-page .playbook-facts{gap:10px!important}
body .source-playbook-page .playbook-facts>div{min-height:0!important;padding:10px 12px!important;border-radius:10px!important}
body .source-playbook-page .playbook-risk{padding:16px 18px!important;border-radius:12px!important}
body .source-playbook-page .playbook-steps>li{padding:16px 18px!important;border-radius:14px!important;grid-template-columns:42px minmax(0,1fr)!important;gap:14px!important}
body .source-playbook-page .playbook-steps>li>span:first-child{width:42px;height:42px;border-radius:12px!important;font-size:12px!important}
body .source-playbook-page .source-visual-section h2,
body .source-playbook-page h2{text-wrap:balance}

/* Global compactness and text cleanup */
body .handbook-intro{border-radius:14px!important;padding:22px 24px!important;background:#f8f4ea!important;border:1px solid #e4d7c1!important;border-left:4px solid #bd9056!important}
body .handbook ol.starter-five li a{border-radius:14px!important;padding:18px 18px 16px!important;align-items:start!important;min-height:0!important}
body .home-entry-grid>a,.home-source-grid>a,.logic-section-v103,.section-entry,.section-outcome{min-height:0!important}
body :is(.home-entry-grid>a,.home-source-grid>a,.section-entry,.section-outcome,.playbook-card,.service-tool,.source-tool-card) :is(h2,h3,p,li,dd,dt,span,a){overflow-wrap:anywhere}

@media(max-width:1180px){
  body.reference-ui-v99 .source-playbook-page .article-layout,
  body .source-playbook-page .article-layout{grid-template-columns:minmax(0,1fr) 272px!important;gap:26px!important;max-width:1180px!important}
}
@media(max-width:980px){
  body .source-playbook-page .playbook-checklist{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body .source-playbook-page .source-journey-grid.three{grid-template-columns:1fr!important}
}
@media(max-width:860px){
  body.reference-ui-v99 .source-playbook-page .article-layout,
  body .source-playbook-page .article-layout{display:block!important;padding:18px 16px 56px!important}
  body.reference-ui-v99 .source-playbook-page .article-aside.enhanced-rail,
  body .source-playbook-page .article-aside.enhanced-rail{display:none!important}
  body .source-playbook-page .playbook-checklist{grid-template-columns:1fr!important}
  body .playbook-card-top{min-height:74px!important}
}


/* ======================================================================
   v106 — mobile repair layer
   One final responsive contract to override legacy v90–v105 collisions.
   ====================================================================== */
@media (max-width: 900px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  body{min-width:0!important}
  *,*::before,*::after{box-sizing:border-box}

  :root{--v106-mobile-bar:58px}
  .site-header{
    display:block!important;position:fixed!important;inset:0 0 auto 0!important;
    width:100%!important;height:var(--v106-mobile-bar)!important;z-index:150!important;
    margin:0!important;padding:0!important;background:#10231d!important;
    border-bottom:1px solid rgba(255,255,255,.1)!important;box-shadow:0 5px 18px rgba(0,0,0,.13)!important
  }
  .site-header .header-inner{
    width:100%!important;max-width:none!important;height:100%!important;margin:0!important;
    padding:0 10px!important;display:flex!important;align-items:center!important;gap:7px!important;overflow:hidden!important
  }
  .site-header .brand{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;flex:1 1 auto!important;color:#fff!important;text-decoration:none!important}
  .site-header .brand-logo{width:33px!important;height:30px!important;flex:0 0 33px!important;object-fit:contain!important}
  .site-header .brand-text{min-width:0!important;display:block!important}
  .site-header .brand-text b{display:block!important;max-width:145px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#fff!important;font:760 12.5px/1.1 Inter,"Segoe UI",Arial,sans-serif!important}
  .site-header .brand-text small,.header-tagline{display:none!important}
  .header-actions{display:flex!important;align-items:center!important;gap:5px!important;margin:0!important;flex:0 0 auto!important}
  .site-header .header-about-link,.site-header .theme-toggle,.site-header .mobile-nav-toggle{
    display:grid!important;place-items:center!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
    padding:0!important;margin:0!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:9px!important;
    background:rgba(255,255,255,.07)!important;color:#fff!important;box-shadow:none!important
  }
  .site-header .header-about-link{font-size:0!important;text-decoration:none!important}
  .site-header .header-about-link::before{content:"i";font:800 14px/1 Inter,"Segoe UI",Arial,sans-serif!important}
  .site-header .theme-toggle [data-theme-label],.site-header .mobile-nav-toggle>span:last-child{display:none!important}
  .site-header .theme-toggle-icon{font-size:16px!important}
  .site-header .mobile-nav-toggle{display:flex!important;align-items:center!important;justify-content:center!important}
  .mobile-nav-icon{width:18px!important;height:14px!important}

  .global-sidebar{
    position:fixed!important;left:0!important;top:var(--v106-mobile-bar)!important;bottom:0!important;
    width:min(300px,86vw)!important;max-width:min(300px,86vw)!important;height:auto!important;
    margin:0!important;padding:12px 12px 22px!important;z-index:145!important;
    overflow-y:auto!important;overflow-x:hidden!important;transform:translateX(-104%)!important;
    transition:transform .2s ease!important;background:#101b18!important;border-right:1px solid #27352f!important
  }
  body.mobile-nav-open .global-sidebar{transform:translateX(0)!important}
  .global-sidebar .sidebar-brand{display:none!important}
  .global-sidebar .sidebar-search{margin:0 0 10px!important;width:100%!important}
  .global-sidebar .sidebar-search input{width:100%!important;height:42px!important;font-size:16px!important;padding-inline:12px!important}
  .sidebar-mode-compact{display:none!important}
  .sidebar-group{width:100%!important;margin:0!important;padding:0!important}
  .sidebar-group-title,.sidebar-group-toggle{max-width:100%!important}
  .global-sidebar .sidebar-menu{width:100%!important}
  .global-sidebar .sidebar-menu a{display:flex!important;align-items:center!important;width:100%!important;min-height:42px!important;padding:9px 10px!important;font-size:14px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .sidebar-partner-cta,.sidebar-partner-rules,.sidebar-bottom{width:100%!important;max-width:100%!important}

  body>main#main-content,body>main,.site-footer{
    width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important
  }
  body>main#main-content{padding-top:var(--v106-mobile-bar)!important}
  .wrap,.narrow,.compact-block-v103,.section-landing>.wrap,
  main.compact-main-v103>.wrap,main.compact-main-v103 .wrap{
    width:100%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important;padding-left:14px!important;padding-right:14px!important
  }

  .article-page .article-layout,.source-playbook-page .article-layout,
  body.reference-ui-v99 .source-playbook-page .article-layout{
    display:block!important;width:100%!important;max-width:780px!important;margin:0 auto!important;padding:16px 14px 52px!important
  }
  .article-page .article,.source-playbook-article,
  body.reference-ui-v99 .source-playbook-page .source-playbook-article{
    width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding-left:0!important;padding-right:0!important
  }
  .article-aside.enhanced-rail,.source-playbook-page .article-aside{display:none!important}

  .breadcrumbs{display:flex!important;flex-wrap:wrap!important;gap:5px 7px!important;margin-bottom:14px!important;font-size:11px!important}
  .source-title-row{display:grid!important;grid-template-columns:46px minmax(0,1fr)!important;gap:10px!important;align-items:center!important}
  .source-title-visual,.ref-launch-time{display:none!important}
  .source-hero-icon{width:46px!important;height:46px!important;min-width:46px!important;margin:0!important}
  .source-title-copy h1,.source-playbook-article h1,.article-page .article h1{font-size:27px!important;line-height:1.12!important;letter-spacing:-.025em!important;overflow-wrap:anywhere!important}
  .source-hero-shell>.lead,.academy-article-hero .lead,.article .lead{font-size:15px!important;line-height:1.58!important}
  .source-section-tabs{display:flex!important;flex-wrap:nowrap!important;gap:5px!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;margin:14px 0 8px!important;padding:0 0 8px!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important}
  .source-section-tabs::-webkit-scrollbar{display:none!important}
  .source-section-tabs a{flex:0 0 auto!important;white-space:nowrap!important;font-size:11px!important;padding:8px 10px!important}

  .playbook-facts,.source-playbook-article>.playbook-facts{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important}
  .playbook-facts>div,.source-playbook-article>.playbook-facts>div{width:100%!important;min-width:0!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:start!important;gap:7px!important}
  .playbook-facts dt,.playbook-facts dd{min-width:0!important;overflow-wrap:anywhere!important}

  .source-playbook-page .playbook-checklist,
  .source-playbook-page :is(.platform-setup,.playbook-format-list,.playbook-steps,.traffic-diagnostic-list,.source-toolkit-grid),
  .source-playbook-page :is(.source-journey-grid.three,.source-journey-grid.four),
  .guide-v101-grid,.guide-v101-formats,.guide-v101-dual,.guide-v101-funnel-table,.guide-v101-diagnostics,.guide-v101-scale,.guide-v101-next>div,
  .service-tool-grid,.service-tool-grid-one,.service-start-grid,.playbook-catalog-grid,
  .home-entry-grid,.home-source-grid,.home-welcome-grid,.traffic-hub-basics,.traffic-next,.section-entry-grid,.rules-summary-grid,.rules-model-grid,.geo-chip-grid{
    grid-template-columns:1fr!important;width:100%!important;max-width:100%!important
  }
  .source-playbook-page .playbook-checklist li,
  .source-playbook-page :is(.platform-setup>div,.playbook-format-list>div,.playbook-steps>li,.traffic-diagnostic-list li,.source-tool-card),
  .playbook-card,.service-tool,.home-entry-grid>a,.home-source-grid>a{
    width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important;height:auto!important;margin-left:0!important;margin-right:0!important
  }
  .source-journey-card{width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important}
  .source-journey-card img,.article-figure img,.guide-v101-media img{width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important}
  .article-figure,.guide-v101-media{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}

  .playbook-card{padding:16px!important;border-radius:12px!important}
  .playbook-card-top{min-height:70px!important;margin:0 0 13px!important;padding:13px 14px!important}
  .playbook-card-top .playbook-hero-art{width:72px!important;height:46px!important;right:10px!important;bottom:8px!important}
  .playbook-card h2{font-size:22px!important;line-height:1.22!important}
  .playbook-card>p{font-size:14.5px!important;line-height:1.58!important}
  .playbook-card .playbook-facts{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}
  .playbook-card .playbook-facts>div{display:grid!important;grid-template-columns:110px minmax(0,1fr)!important;width:100%!important}
  .playbook-card>a{display:block!important;margin-top:13px!important;padding:12px 0 0!important}

  .service-tool{padding:16px!important}
  .service-tool-head{padding-right:0!important;gap:12px!important}
  .service-mark{width:42px!important;height:42px!important;flex-basis:42px!important}
  .service-tool p,.service-tool dd{font-size:14px!important;line-height:1.55!important}
  .service-tool-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .service-tool-actions a,.service-open-link{width:100%!important;max-width:100%!important;justify-content:center!important;text-align:center!important}

  .handbook{width:100%!important;max-width:100%!important;padding:22px 14px 50px!important}
  .handbook-intro{padding:18px!important;margin-bottom:18px!important}
  .handbook ol.starter-five{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;border-top:0!important}
  .handbook ol.starter-five li{width:100%!important;margin:0!important}
  .handbook ol.starter-five li a{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;gap:10px!important;width:100%!important;padding:15px!important}
  .handbook ol.starter-five li em{grid-column:2!important;text-align:left!important;margin-top:4px!important}

  .article table{display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  .article pre{max-width:100%!important;overflow-x:auto!important}
  .article code{overflow-wrap:anywhere!important;white-space:normal!important}

  .site-footer{padding-left:14px!important;padding-right:14px!important}
  .footer-main,.footer-bottom{display:grid!important;grid-template-columns:1fr!important;gap:16px!important;width:100%!important;max-width:100%!important;padding-left:0!important;padding-right:0!important}
  .footer-links{display:flex!important;flex-wrap:wrap!important;gap:8px 14px!important}

  
  
}

@media (max-width: 520px){
  .site-header .brand-text b{max-width:112px!important;font-size:12px!important}
  .site-header .header-about-link{display:none!important}
  .site-header .header-inner{padding-inline:8px!important}
  .site-header .theme-toggle,.site-header .mobile-nav-toggle{width:38px!important;min-width:38px!important}
  .wrap,.narrow,main.compact-main-v103>.wrap,main.compact-main-v103 .wrap{padding-left:11px!important;padding-right:11px!important}
  .article-page .article-layout,.source-playbook-page .article-layout,body.reference-ui-v99 .source-playbook-page .article-layout{padding-left:11px!important;padding-right:11px!important}
  .source-title-copy h1,.source-playbook-article h1,.article-page .article h1{font-size:24px!important}
  .source-hero-shell>.lead,.article .lead{font-size:14.5px!important}
  .source-playbook-article p,.source-playbook-article li,.article-page .article p,.article-page .article li{font-size:15px!important;line-height:1.62!important}
  .playbook-card .playbook-facts>div{grid-template-columns:1fr!important;gap:2px!important}
  .playbook-card .playbook-facts dt{font-size:10px!important}
  .playbook-card .playbook-facts dd{font-size:12px!important}
}

@media (max-width: 360px){
  .site-header .brand-text b{max-width:92px!important}
  .site-header .brand-logo{width:30px!important;height:28px!important;flex-basis:30px!important}
  .site-header .theme-toggle,.site-header .mobile-nav-toggle{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important}
  .global-sidebar{width:90vw!important;max-width:90vw!important}
}


/* ======================================================================
   v107 — spacing normalization, platform logos, true neutral dark theme
   ====================================================================== */
body .playbook-card[data-source="youtube"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%225%22%20y%3D%2212%22%20width%3D%2254%22%20height%3D%2240%22%20rx%3D%2212%22%20fill%3D%22%23ff2d2d%22/%3E%3Cpath%20d%3D%22M27%2023l17%209-17%209z%22%20fill%3D%22white%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="vk-video"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%227%22%20y%3D%227%22%20width%3D%2250%22%20height%3D%2250%22%20rx%3D%2215%22%20fill%3D%22%232787f5%22/%3E%3Cpath%20d%3D%22M17%2022h8c.5%207%203.3%2010%206%2012V22h7v7c2.8-.3%205.7-3.6%207.4-7H52c-1.4%205-5.5%209.4-8%2011%202.6%201.4%207.3%205.3%209%2010h-8c-2-3.4-4.5-6-7-6v6h-3c-11.2%200-17.6-7.8-18-21Z%22%20fill%3D%22white%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="telegram"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2232%22%20r%3D%2227%22%20fill%3D%22%232aabee%22/%3E%3Cpath%20d%3D%22M17%2031l30-12-6%2027c-.4%201.7-1.5%202.1-3%201.3l-9-6.7-4.4%204.2c-.5.5-.9.9-1.8.9l.7-9.2L40%2022.7c.7-.7-.2-1-1.1-.4L19%2034.8l-8.6-2.7c-1.9-.6-1.9-1.9.4-2.8Z%22%20fill%3D%22white%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="content-site"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2232%22%20r%3D%2226%22%20fill%3D%22%234c8f72%22/%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2232%22%20r%3D%2215%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%224%22/%3E%3Cpath%20d%3D%22M8%2032h48M32%208c7%208%2010%2016%2010%2024S39%2048%2032%2056M32%208c-7%208-10%2016-10%2024s3%2016%2010%2024%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="social"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%220%22%20y1%3D%221%22%20x2%3D%221%22%20y2%3D%220%22%3E%3Cstop%20stop-color%3D%22%23feda75%22/%3E%3Cstop%20offset%3D%22.35%22%20stop-color%3D%22%23fa7e1e%22/%3E%3Cstop%20offset%3D%22.65%22%20stop-color%3D%22%23d62976%22/%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%234f5bd5%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect%20x%3D%228%22%20y%3D%228%22%20width%3D%2248%22%20height%3D%2248%22%20rx%3D%2215%22%20fill%3D%22url%28%23g%29%22/%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2232%22%20r%3D%2211%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%224%22/%3E%3Ccircle%20cx%3D%2246%22%20cy%3D%2219%22%20r%3D%223%22%20fill%3D%22white%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="communities"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2225%22%20r%3D%229%22%20fill%3D%22%236c7dff%22/%3E%3Ccircle%20cx%3D%2243%22%20cy%3D%2227%22%20r%3D%227%22%20fill%3D%22%239b8cff%22/%3E%3Cpath%20d%3D%22M9%2051c1-10%207-16%2015-16s14%206%2015%2016H9Zm26%200c1-7%204-12%209-12%206%200%2010%205%2011%2012H35Z%22%20fill%3D%22%236c7dff%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="search"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2228%22%20cy%3D%2228%22%20r%3D%2217%22%20fill%3D%22none%22%20stroke%3D%22%234285f4%22%20stroke-width%3D%227%22/%3E%3Cpath%20d%3D%22M40%2040l13%2013%22%20stroke%3D%22%2334a853%22%20stroke-width%3D%228%22%20stroke-linecap%3D%22round%22/%3E%3Cpath%20d%3D%22M16%2016a17%2017%200%200%201%2024%200%22%20stroke%3D%22%23ea4335%22%20stroke-width%3D%227%22%20stroke-linecap%3D%22round%22/%3E%3Cpath%20d%3D%22M12%2032a17%2017%200%200%201%204-16%22%20stroke%3D%22%23fbbc05%22%20stroke-width%3D%227%22%20stroke-linecap%3D%22round%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="streams"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%228%22%20y%3D%2214%22%20width%3D%2248%22%20height%3D%2236%22%20rx%3D%229%22%20fill%3D%22%23ff5a5f%22/%3E%3Cpath%20d%3D%22M27%2024l14%208-14%208z%22%20fill%3D%22white%22/%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2218%22%20r%3D%227%22%20fill%3D%22%23ffda57%22%20stroke%3D%22%23fff%22%20stroke-width%3D%222%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="paid"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cpath%20d%3D%22M9%2034l33-14v28L9%2034Z%22%20fill%3D%22%23ef5b78%22/%3E%3Crect%20x%3D%228%22%20y%3D%2231%22%20width%3D%2210%22%20height%3D%228%22%20rx%3D%223%22%20fill%3D%22%23ffd3dc%22/%3E%3Cpath%20d%3D%22M21%2038l6%2014h9l-7-17%22%20fill%3D%22%238d2940%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="short-video"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%2213%22%20y%3D%226%22%20width%3D%2238%22%20height%3D%2252%22%20rx%3D%2210%22%20fill%3D%22%2314171d%22/%3E%3Cpath%20d%3D%22M29%2020v24l17-12z%22%20fill%3D%22%23ff3b6b%22/%3E%3Cpath%20d%3D%22M33%2017v28%22%20stroke%3D%22%2325f4ee%22%20stroke-width%3D%223%22%20opacity%3D%22.85%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="alt-video"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%227%22%20y%3D%2210%22%20width%3D%2250%22%20height%3D%2234%22%20rx%3D%229%22%20fill%3D%22%234978d1%22/%3E%3Cpath%20d%3D%22M27%2020l15%207-15%208z%22%20fill%3D%22white%22/%3E%3Crect%20x%3D%2220%22%20y%3D%2248%22%20width%3D%2224%22%20height%3D%225%22%20rx%3D%222.5%22%20fill%3D%22%2382a4e4%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="dzen"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2232%22%20r%3D%2226%22%20fill%3D%22%23111%22/%3E%3Cpath%20d%3D%22M17%2017c10%200%2015%205%2015%2015%200-10%205-15%2015-15-10%200-15%205-15%2015%200%2010-5%2015-15%2015%2010%200%2015-5%2015-15%200%2010%205%2015%2015%2015-10%200-15-5-15-15%200-10-5-15-15-15Z%22%20fill%3D%22white%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="reddit"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2234%22%20r%3D%2222%22%20fill%3D%22%23ff4500%22/%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2233%22%20r%3D%224%22%20fill%3D%22white%22/%3E%3Ccircle%20cx%3D%2240%22%20cy%3D%2233%22%20r%3D%224%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M22%2043c6%204%2014%204%2020%200%22%20stroke%3D%22white%22%20stroke-width%3D%223%22%20fill%3D%22none%22%20stroke-linecap%3D%22round%22/%3E%3Cpath%20d%3D%22M34%2014l3-8%208%202%22%20stroke%3D%22%23ff4500%22%20stroke-width%3D%223%22%20fill%3D%22none%22/%3E%3Ccircle%20cx%3D%2247%22%20cy%3D%229%22%20r%3D%224%22%20fill%3D%22%23ff4500%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="x-twitter"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%228%22%20y%3D%228%22%20width%3D%2248%22%20height%3D%2248%22%20rx%3D%2212%22%20fill%3D%22%23111%22/%3E%3Cpath%20d%3D%22M18%2018h8l20%2028h-8L18%2018Zm3%2028%2014-15m4-4%206-9%22%20stroke%3D%22white%22%20stroke-width%3D%224%22/%3E%3C/svg%3E")}
body .playbook-card[data-source="mailing"] .playbook-hero-art{--source-logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%228%22%20y%3D%2214%22%20width%3D%2248%22%20height%3D%2236%22%20rx%3D%228%22%20fill%3D%22%234c88e8%22/%3E%3Cpath%20d%3D%22M12%2020l20%2016%2020-16%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%224%22%20stroke-linejoin%3D%22round%22/%3E%3C/svg%3E")}

/* Traffic hub: the top visual shows only a platform mark, never another title. */
body .playbook-card-top>span:not(.playbook-hero-art){display:none!important}
body .playbook-card-top{align-items:center!important;justify-content:center!important;min-height:104px!important;padding:14px!important}
body .playbook-card-top .playbook-hero-art{position:static!important;display:grid!important;place-items:center!important;width:70px!important;height:70px!important;border:0!important;border-radius:0!important;background:var(--source-logo) center/contain no-repeat!important;box-shadow:none!important}
body .playbook-card-top .playbook-hero-art::before{display:none!important}
body .playbook-card h2{margin-top:2px!important}

/* The duplicated connected-tools strip is gone both in markup and as a safety fallback. */
body .ref-connected-tools{display:none!important}

/* One spacing rhythm for every article. */
body .article-layout,
body.reference-ui-v99 .article-layout,
body .source-playbook-page .article-layout{box-sizing:border-box!important}
body .article,
body .source-playbook-article{box-sizing:border-box!important}
body .article>section,
body .source-playbook-article>section{scroll-margin-top:88px}
body .academy-content-section,
body .logic-section-v103,
body .guide-v101-section{box-sizing:border-box!important}

/* Cells/cards: always keep readable inner padding and avoid displaced text. */
body :is(.playbook-risk,.guide-v101-callout,.ref-tip-strip,.inline-note,.warning-note,.service-notice,.partner-next-step,.traffic-hub-basics>div,.traffic-next a,.playbook-checklist li,.platform-setup>div,.playbook-format-list>div,.traffic-diagnostic-list li,.playbook-steps>li,.source-journey-card,.source-tool-card,.guide-v101-grid>div,.guide-v101-verdict,.guide-v101-flow,.guide-v101-timeline>div,.guide-v101-link-options>div,.guide-v101-code,.guide-v101-funnel-table>div,.guide-v101-diagnostics a,.handbook-intro,.handbook ol.starter-five li a){box-sizing:border-box!important}
body .playbook-risk{display:block!important;padding:15px 17px!important}
body .playbook-risk b{display:block!important;margin:0 0 7px!important}
body .playbook-risk p{display:block!important;margin:0!important}
body .guide-v101-callout{display:block!important;padding:15px 17px!important}
body .guide-v101-callout b{display:block!important;margin:0 0 7px!important}
body .guide-v101-callout p{display:block!important;margin:0!important}
body .ref-tip-strip{padding:12px 14px!important;align-items:flex-start!important}
body .playbook-checklist li{padding:16px 17px 16px 44px!important}
body .playbook-checklist li:before{left:14px!important;top:15px!important}
body .playbook-steps>li{padding:16px 17px!important}
body .source-journey-card figcaption{padding:14px 15px 16px!important}
body .source-tool-card{padding:16px 17px!important}
body .article-aside.enhanced-rail .aside-block{padding:15px!important}
body :is(.playbook-risk,.guide-v101-callout,.ref-tip-strip,.inline-note,.playbook-checklist li,.playbook-steps>li,.source-journey-card figcaption,.source-tool-card,.article-aside.enhanced-rail .aside-block) :is(p,li,dd,small,span,b,strong){overflow-wrap:anywhere;text-wrap:pretty}

/* Desktop article alignment: same inset for all articles, source articles keep their wider canvas. */
@media(min-width:1051px){
  body.article-page:not(.reference-ui-v99) .article-layout{max-width:1180px!important;margin:0 auto!important;padding:26px 26px 72px!important}
  body.reference-ui-v99 .source-playbook-page .article-layout,
  body .source-playbook-page .article-layout{grid-template-columns:minmax(0,930px) 280px!important;gap:38px!important;max-width:1248px!important;margin:0 auto!important;padding:26px 26px 72px!important}
}

/* Mobile: no negative margins, no side-by-side labels inside callouts, same article inset everywhere. */
@media(max-width:1050px){
  body .article-layout,
  body.reference-ui-v99 .article-layout,
  body .source-playbook-page .article-layout{width:100%!important;max-width:860px!important;margin:0 auto!important;padding:18px 16px 54px!important}
  body .source-section-tabs,
  body.reference-ui-v99 .source-section-tabs{width:100%!important;margin:10px 0 0!important;padding:0 0 8px!important}
  body .source-playbook-article>section,
  body.reference-ui-v99 .source-playbook-article>section{padding-left:0!important;padding-right:0!important}
  body .playbook-risk,
  body .guide-v101-callout{width:100%!important;margin-left:0!important;margin-right:0!important;padding:14px 15px!important}
  body .ref-tip-strip{width:100%!important;margin-left:0!important;margin-right:0!important;padding:12px 13px!important}
  body .guide-v101-flow{width:100%!important;margin-left:0!important;margin-right:0!important}
}
@media(max-width:520px){
  body .article-layout,
  body.reference-ui-v99 .article-layout,
  body .source-playbook-page .article-layout{padding-left:15px!important;padding-right:15px!important}
  body .article>section,
  body .source-playbook-article>section{margin-left:0!important;margin-right:0!important}
  body .playbook-risk,
  body .guide-v101-callout,
  body .ref-tip-strip{border-radius:10px!important}
}

/* True dark mode: charcoal/graphite, with green used only as a small accent. */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --paper:#101318!important;--paper-2:#14181e!important;--surface:#191e25!important;
  --ink:#edf1f4!important;--muted:#a7b0ba!important;--line:#2b323b!important;--line-dark:#38414b!important;
  --forest:#74c9ab!important;--forest-2:#151a20!important;--forest-soft:#20262d!important;
  --academy-bg:#101318!important;--academy-page:#101318!important;--academy-card:#191e25!important;--academy-border:#2b333d!important;
  --ref-soft:#151a20!important;--ref-card:#191e25!important;--ref-line:#2b333d!important;--ref-ink:#edf1f4!important;--ref-copy:#a7b0ba!important;
  background:#101318!important;color:#edf1f4!important;
}
html body.theme-dark :is(main,.home-page,.article-page,.source-playbook-page,.traffic-hub-page,.services-page,.compact-main-v103),
html body.reference-ui-v99.theme-dark :is(main,.article-page,.source-playbook-page,.source-playbook-article,.article){background:#101318!important;color:#edf1f4!important}
html body.theme-dark .site-header{background:#0c0f13!important;border-color:#252b33!important}
html body.theme-dark .global-sidebar{background:#0d1116!important;border-color:#252b33!important}
html body.theme-dark .site-footer{background:#0b0e12!important;border-color:#252b33!important}
html body.theme-dark :is(.source-playbook-article,.source-hero-shell,.source-playbook-article>section,.academy-article-hero){background:transparent!important}
html body.theme-dark :is(.article,.structured-article-v103){background:transparent!important;box-shadow:none!important}
html body.theme-dark :is(.home-search-card,.home-entry-grid>a,.home-source-grid>a,.home-results-inner,.catalog-search,.library-row,.library-card,.service-card,.service-tool,.tool-card,.about-card,.section-card,.knowledge-map>div,.handbook-intro,.handbook ol.starter-five li a,.playbook-facts>div,.playbook-checklist li,.platform-setup>div,.playbook-format-list>div,.playbook-steps>li,.traffic-diagnostic-list li,.source-journey-card,.source-tool-card,.article-aside.enhanced-rail .aside-block,.rail-partner-card,.rail-path-card,.rail-cover-card,.playbook-card,.service-notice,.service-task-nav a,.service-start-grid>div,.traffic-next a,.traffic-hub-basics>div,.partner-next-step,.guide-v101-flow,.guide-v101-verdict,.guide-v101-grid>div,.guide-v101-formats article,.guide-v101-timeline,.guide-v101-media,.guide-v101-link-options>div,.guide-v101-code,.guide-v101-steps li,.guide-v101-funnel-table>div,.guide-v101-diagnostics a,.guide-v101-next a,.article-figure,.calc-card,.diagnostic-card,.field-case,.notes-card,.tool-panel,.academy-content-section,.logic-section-v103,.related-reading,.related-primary,.related-secondary,.article-exit-nav a,.next-reading a,.starter-next,.service-inline,.section-entry,.section-outcome,.section-feature,.section-groups,.section-bottom-links){background:#191e25!important;border-color:#2b333d!important;color:#edf1f4!important;box-shadow:none!important}
html body.reference-ui-v99.theme-dark :is(.playbook-facts>div,.ref-source-funnel,.playbook-checklist li,.ref-format-card,.ref-track-card,.ref-metrics-card,.ref-metrics-row>div,.playbook-steps>li,.source-journey-card,.source-tool-card,.article-aside.enhanced-rail .aside-block,.rail-tools,.rail-related-visual){background:#191e25!important;border-color:#2b333d!important;color:#edf1f4!important}
/* Structured article surfaces use the same canonical charcoal palette. */
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-explain-v103{background:#191e25!important;border-color:#2b333d!important;border-left-color:#52606d!important}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-action-v103{background:#18211f!important;border-color:#2b333d!important;border-left-color:#5dbf99!important}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-analysis-v103{background:#181e24!important;border-color:#2b333d!important;border-left-color:#71808e!important}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-warning-v103{background:#24211c!important;border-color:#5a4d37!important;border-left-color:#d0a05e!important}
html body.theme-dark.content-system-v103 .structured-article-v103 .article-depth.logic-section-v103{background:#161b20!important}
html body.theme-dark.content-system-v103 .structured-article-v103 .partner-specific-box.logic-section-v103{background:#18211f!important}
html body.theme-dark :is(h1,h2,h3,h4,strong,b,.article-label,.footer-brand,.source-title-copy h1,.service-tool h3,.playbook-card h2){color:#edf1f4!important}
html body.theme-dark :is(p,li,dd,dt,small,figcaption,.lead,.article-meta,.breadcrumbs,.service-kicker,.source-tool-card-copy,.rail-tools a small,.rail-related-visual span,.article-author p,.handbook-intro p,.playbook-card>p,.article p,.article li,.source-playbook-article p,.source-playbook-article li){color:#a7b0ba!important}
html body.theme-dark a{color:#7fd0b4!important}
html body.theme-dark a:hover{color:#a7e8d1!important}
html body.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.inline-note){background:#24211c!important;border-color:#5a4d37!important;color:#d9c9aa!important}
html body.theme-dark .guide-v101-callout:not(.warning){background:#1a2026!important;border-color:#34414c!important}
html body.theme-dark .ref-tip-strip{background:#232019!important;border-color:#55472f!important}
html body.theme-dark .ref-tip-strip p{color:#cbbd9d!important}
html body.theme-dark :is(.source-title-visual,.academy-article-hero-visual,.source-journey-card img,.article-figure img,.guide-v101-media img){background:#151a20!important;border-color:#2b333d!important}
html body.theme-dark .source-section-tabs{border-color:#2b333d!important}
html body.theme-dark .source-section-tabs a{background:transparent!important;color:#9fa9b4!important;border-color:transparent!important}
html body.theme-dark .source-section-tabs a.is-current,
html body.theme-dark .source-section-tabs a:first-child{background:transparent!important;color:#8ad4bb!important;border-bottom-color:#6ec3a6!important}
html body.theme-dark :is(.rail-tool-mark,.service-mark){background:#20262e!important;border-color:#37414c!important}
html body.theme-dark .rail-all-tools{background:transparent!important;border-color:#43515c!important;color:#8fd5bd!important}
html body.theme-dark :is(input,select,textarea,.sidebar-search input,.home-main-search input){background:#171c23!important;border-color:#343d47!important;color:#edf1f4!important}
html body.theme-dark :is(input,select,textarea)::placeholder{color:#7f8994!important}
html body.theme-dark .theme-toggle{background:#1a2027!important;border-color:#3a444f!important;color:#e9edf0!important}
html body.theme-dark .sidebar-menu a:hover,
html body.theme-dark .sidebar-menu a[aria-current="page"],
html body.theme-dark .sidebar-menu a.is-active{background:#1a2027!important;color:#eef2f4!important}
html body.theme-dark .sidebar-partner-cta{background:#1b2524!important;border-color:#334640!important}
html body.theme-dark .sidebar-partner-rules{background:#171c23!important;border-color:#303943!important;color:#d6dde3!important}
html body.theme-dark .home-results-inner{background:#191e25!important;border-color:#2b333d!important}
html body.theme-dark table{background:#151a20!important;color:#e8edf0!important}
html body.theme-dark th{background:#1e242b!important;color:#e8edf0!important;border-color:#333c46!important}
html body.theme-dark td{background:#171c22!important;color:#b3bcc5!important;border-color:#303943!important}
html body.theme-dark :is(pre,code){background:#161d22!important;color:#91d8bf!important}

/* ======================================================================
   v109 — final presentation pass
   Calm editorial system: fewer decorative stripes, consistent surfaces,
   stronger navigation contrast and a quieter card hierarchy.
   ====================================================================== */
:root{
  --v109-bg:#f4f6f3;
  --v109-bg-soft:#f8f8f5;
  --v109-surface:#fff;
  --v109-surface-warm:#fbf8f2;
  --v109-ink:#1b2f28;
  --v109-copy:#5f6c66;
  --v109-muted:#7d8983;
  --v109-line:#dde4df;
  --v109-line-strong:#cfd8d2;
  --v109-green:#205144;
  --v109-green-dark:#163c32;
  --v109-green-soft:#eaf3ef;
  --v109-warm:#9a744a;
  --v109-warm-soft:#f6efe4;
  --v109-warning:#9d6d2d;
  --v109-warning-soft:#fff8ec;
  --v109-radius:12px;
  --v109-shadow:0 8px 24px rgba(25,47,39,.045);
  --v109-shadow-hover:0 14px 32px rgba(25,47,39,.075);
}

/* Base canvas */
html body:not(.theme-dark){background:var(--v109-bg)!important;color:var(--v109-ink)!important}
html body:not(.theme-dark) :is(main,.compact-main-v103,.home-page,.article-page,.source-playbook-page,.traffic-hub-page,.services-page){color:var(--v109-ink)}
html body:not(.theme-dark) :is(p,li,dd,dt,small,figcaption,.lead){color:var(--v109-copy)}
html body:not(.theme-dark) :is(h1,h2,h3,h4,strong,b){color:var(--v109-ink)}

/* Header and permanent navigation: one dark, high-contrast frame. */
html body:not(.theme-dark) .site-header{
  background:#173f35!important;
  border-bottom:1px solid rgba(255,255,255,.09)!important;
  box-shadow:0 5px 20px rgba(18,45,37,.10)!important;
}
html body:not(.theme-dark) .site-header :is(.brand-text b,.brand-text strong,.header-about-link,.theme-toggle){color:#f4f8f6!important}
html body:not(.theme-dark) .site-header :is(.brand-text small,.header-tagline){color:#b9d0c7!important}
html body:not(.theme-dark) .site-header .header-about-link{border-color:rgba(255,255,255,.16)!important;background:rgba(255,255,255,.035)!important}
html body:not(.theme-dark) .site-header .theme-toggle{border-color:rgba(255,255,255,.17)!important;background:rgba(255,255,255,.055)!important}
html body:not(.theme-dark) .site-header .theme-toggle:hover,
html body:not(.theme-dark) .site-header .header-about-link:hover{background:rgba(255,255,255,.10)!important}

html body:not(.theme-dark) .global-sidebar{
  background:#17382f!important;
  border-right:1px solid rgba(255,255,255,.08)!important;
  box-shadow:8px 0 26px rgba(18,42,35,.09)!important;
  scrollbar-color:#54786d transparent!important;
}
html body:not(.theme-dark) .sidebar-brand{border-bottom-color:rgba(255,255,255,.10)!important;color:#fff!important}
html body:not(.theme-dark) .sidebar-brand :is(b,strong){color:#fff!important}
html body:not(.theme-dark) .sidebar-brand small{color:#9fbdb2!important}
html body:not(.theme-dark) .global-sidebar>.sidebar-search input{
  background:rgba(7,24,19,.28)!important;
  border-color:rgba(255,255,255,.13)!important;
  color:#fff!important;
}
html body:not(.theme-dark) .global-sidebar>.sidebar-search input::placeholder{color:#9fb9b0!important}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a{color:#cfe0da!important}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a:before{color:#a8c5ba!important;background:rgba(255,255,255,.045)!important}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a:hover{background:rgba(255,255,255,.07)!important;color:#fff!important}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a:is(.active,.is-active,[aria-current="page"]){
  background:rgba(117,201,169,.14)!important;
  color:#fff!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a:is(.active,.is-active,[aria-current="page"]):before{
  background:rgba(117,201,169,.16)!important;color:#91dfc0!important
}
html body:not(.theme-dark) .global-sidebar>.sidebar-partner-cta{
  background:rgba(86,176,141,.10)!important;border-color:rgba(113,208,171,.25)!important
}
html body:not(.theme-dark) .global-sidebar>.sidebar-partner-rules{
  background:rgba(255,255,255,.035)!important;border-color:rgba(255,255,255,.09)!important;color:#bfd4cc!important
}

/* Calm page headers. Remove multicolor bars and category gradients. */
body .page-head:after{display:none!important}
html body:not(.theme-dark) :is(.page-head,.section-landing-head){
  background:#f7f9f7!important;
  background-image:none!important;
  border-bottom:1px solid var(--v109-line-strong)!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) :is(.section-basics-page,.section-economics-page,.section-analytics-page,.section-practice-page) .section-landing-head{
  background:#f7f9f7!important;border-bottom:1px solid var(--v109-line-strong)!important
}
html body:not(.theme-dark) .home-welcome{
  background:linear-gradient(135deg,#f8faf8 0%,#f5f6f2 68%,#f6f1e9 100%)!important;
  border-bottom:1px solid var(--v109-line)!important;
}
html body:not(.theme-dark) :is(.home-entry-section,.home-results){background:#fbfcfa!important}
html body:not(.theme-dark) .home-sources-v51{background:#f1f4f1!important}

/* Consistent section cards, without decorative side rails. */
body :is(.playbook-card,.home-source-grid>a,.home-entry-grid>a,.section-entry,.section-outcome,.knowledge-map>div,.library-row,.tool-card,.about-card,.service-card,.service-tool,.source-tool-card,.traffic-hub-basics>div,.traffic-next a,.handbook ol.starter-five li a,.guide-v101-grid>div,.guide-v101-formats article,.guide-v101-diagnostics a,.guide-v101-next a){
  border-color:var(--v109-line)!important;
  border-left-width:1px!important;
  border-radius:var(--v109-radius)!important;
  background:var(--v109-surface)!important;
  box-shadow:none!important;
}
body :is(.playbook-card,.home-source-grid>a,.home-entry-grid>a,.section-entry,.knowledge-map>div,.library-row,.service-tool,.source-tool-card,.traffic-next a):hover{
  transform:translateY(-1px)!important;
  border-color:var(--v109-line-strong)!important;
  box-shadow:var(--v109-shadow)!important;
}
body :is(.playbook-card,.home-source-grid>a,.section-entry,.section-feature aside,.library-row,.knowledge-map>div):before{display:none!important}
body .playbook-card:after{display:none!important}

/* Homepage summary: one visual language instead of three accent colors. */
body .home-welcome-summary{gap:10px!important}
body .home-welcome-summary>div{
  padding:14px 15px!important;
  border:1px solid var(--v109-line)!important;
  border-top-width:1px!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.64)!important;
}
body .home-welcome-summary>div:nth-child(n){border-top-color:var(--v109-line)!important}
html body:not(.theme-dark) .home-search-card{
  border:1px solid var(--v109-line-strong)!important;
  border-top-width:1px!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:var(--v109-shadow)!important;
}
body .home-entry-grid>a{padding:21px 21px 20px!important}
body .home-source-grid>a{padding:19px 19px 18px!important}
body .home-source-grid small{border-top-color:#e8ece9!important;color:var(--v109-green)!important}

/* Traffic hub: small logo tiles, not large colored banners or side stripes. */
body .playbook-card{position:relative!important;padding:20px 20px 18px!important;overflow:hidden!important}
body .playbook-card-top{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:11px!important;
  min-height:52px!important;
  margin:0 0 14px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--v109-muted)!important;
}
body .playbook-card[data-source] .playbook-card-top{background:transparent!important}
body .playbook-card-top>span:not(.playbook-hero-art){
  display:block!important;
  order:2!important;
  color:#7a6d5d!important;
  font-size:9.5px!important;
  font-weight:800!important;
  letter-spacing:.10em!important;
}
body .playbook-card-top .playbook-hero-art{
  position:static!important;
  order:1!important;
  display:block!important;
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  border:1px solid var(--v109-line)!important;
  border-radius:11px!important;
  background-color:#f7f9f7!important;
  background-image:var(--source-logo)!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:32px 32px!important;
  box-shadow:none!important;
}
body .playbook-card-top .playbook-hero-art::before{display:none!important}
body .playbook-card h2{margin:0 0 9px!important;font-size:22px!important;line-height:1.22!important}
body .playbook-card>p{margin:0 0 14px!important;font-size:13.5px!important;line-height:1.6!important}
body .playbook-card .playbook-facts{gap:7px!important}
body .playbook-card .playbook-facts>div{padding:9px 10px!important;background:#f8faf8!important;border-color:#e2e8e4!important}
body .playbook-card>a{margin-top:14px!important;padding:11px 0 0!important;padding-right:0!important;border-top:1px solid #e8ece9!important;color:var(--v109-green)!important;font-size:11.5px!important;font-weight:800!important;opacity:1!important}

/* Section landing pages: no colored left bars. */
body .section-entry{padding-left:20px!important}
body .section-feature aside:before{display:none!important}
body .section-feature>div,body .section-feature>aside{
  border:1px solid var(--v109-line)!important;
  border-left-width:1px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body .section-outcome{border:1px solid var(--v109-line)!important;background:#fff!important;box-shadow:none!important}

/* Articles: use spacing and tone for hierarchy, not a colored stripe on every block. */
body.content-system-v103 .structured-article-v103 .logic-section-v103{
  border:1px solid var(--v109-line)!important;
  border-left-width:1px!important;
  background:#fff!important;
  box-shadow:none!important;
  border-radius:11px!important;
}
body.content-system-v103 .structured-article-v103 :is(.logic-explain-v103,.logic-action-v103,.logic-analysis-v103){
  border-left:1px solid var(--v109-line)!important;
  background:#fff!important;
}
body.content-system-v103 .structured-article-v103 .logic-warning-v103{
  border:1px solid #e6d6bc!important;
  background:var(--v109-warning-soft)!important;
}
body.content-system-v103 .structured-article-v103 .logic-index-v103{
  background:var(--v109-green-soft)!important;
  color:var(--v109-green)!important;
  border:1px solid #d7e7e0!important;
}
body.content-system-v103 .structured-article-v103 .logic-warning-v103 .logic-index-v103{
  background:#f6ead7!important;color:#8f6125!important;border-color:#ead9bc!important
}

/* Notes/callouts: full borders, no universal left accent. Warnings still read as warnings. */
body :is(.handbook-intro,.inline-note,.playbook-risk,.guide-v101-callout,.traffic-principle,.traffic-cost-note,.source-cost-box,.author-note,.tool-source-note,.source-mode-panel article,.related-primary,.source-partner-cta,.service-notice,.service-legal,.service-inline,.service-review-note,.partner-next-step,.playbook-tips,.hero-note,.hero-route){
  border-left-width:1px!important;
  border-radius:10px!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) :is(.handbook-intro,.inline-note,.traffic-principle,.traffic-cost-note,.source-cost-box,.author-note,.tool-source-note,.service-inline,.service-review-note,.partner-next-step,.playbook-tips,.hero-note,.hero-route,.related-primary){
  border:1px solid #e2e1db!important;
  background:#faf8f4!important;
}
html body:not(.theme-dark) :is(.playbook-risk,.guide-v101-callout.warning,.service-warning,.warning-note){
  border:1px solid #e6d4b6!important;
  background:var(--v109-warning-soft)!important;
}
body .related-primary{padding:14px 15px!important}

/* Right rail: quieter cards with one shared treatment. */
body .article-aside.enhanced-rail :is(.aside-block,.rail-card,.rail-cover-card,.rail-partner-card,.rail-path-card){
  border:1px solid var(--v109-line)!important;
  border-left-width:1px!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body .article-aside.enhanced-rail .aside-block+ .aside-block{margin-top:9px!important}

/* Forms and actions: clear hierarchy without heavy ornament. */
body :is(.home-actions a,.service-tool-actions a,.service-open-link,.home-results nav a,.guide-v101-inline-link a){border-radius:8px!important}
html body:not(.theme-dark) .home-actions .home-action-primary{background:var(--v109-green)!important;border-color:var(--v109-green)!important;color:#fff!important}
html body:not(.theme-dark) .home-actions .home-action-primary:hover{background:var(--v109-green-dark)!important}
html body:not(.theme-dark) .home-actions .home-action-partner{background:var(--v109-warm-soft)!important;border-color:#d9c2a4!important;color:#6d4c29!important}
html body:not(.theme-dark) :is(input,select,textarea){border-color:#cfd8d2!important;border-radius:8px!important;background:#fff!important;color:var(--v109-ink)!important}

/* Tables and small cells. */
html body:not(.theme-dark) .article th{background:#f3f5f3!important;color:#31423b!important;border-color:var(--v109-line)!important}
html body:not(.theme-dark) .article td{background:#fff!important;border-color:var(--v109-line)!important}

/* Dark theme mirrors the same quiet hierarchy. */
html body.theme-dark{
  --v109-bg:#101318;
  --v109-bg-soft:#15191f;
  --v109-surface:#191e25;
  --v109-surface-warm:#1c2025;
  --v109-ink:#edf1f4;
  --v109-copy:#a9b2bb;
  --v109-muted:#88939e;
  --v109-line:#2d353f;
  --v109-line-strong:#3a444f;
  --v109-green:#79cfb2;
  --v109-green-dark:#63b89d;
  --v109-green-soft:#1b2926;
  --v109-warm:#c7a477;
  --v109-warm-soft:#26221c;
  --v109-warning:#d1a35f;
  --v109-warning-soft:#24211b;
}
html body.theme-dark :is(.page-head,.section-landing-head,.home-welcome,.home-entry-section,.home-sources-v51,.home-results){
  background:#101318!important;background-image:none!important;border-color:#2b333d!important
}
html body.theme-dark .home-welcome{background:linear-gradient(135deg,#12171c 0%,#101318 72%,#181713 100%)!important}
html body.theme-dark :is(.playbook-card,.home-source-grid>a,.home-entry-grid>a,.section-entry,.section-outcome,.knowledge-map>div,.library-row,.tool-card,.about-card,.service-card,.service-tool,.source-tool-card,.traffic-hub-basics>div,.traffic-next a,.section-feature>div,.section-feature>aside,.article-aside.enhanced-rail .aside-block,.article-aside.enhanced-rail .rail-card){
  background:#191e25!important;border-color:#2d353f!important;box-shadow:none!important
}
html body.theme-dark .home-welcome-summary>div{background:#171c22!important;border-color:#2d353f!important}
html body.theme-dark .home-search-card{background:#191e25!important;border-color:#35404a!important;box-shadow:none!important}
html body.theme-dark .playbook-card-top{background:transparent!important}
html body.theme-dark .playbook-card-top .playbook-hero-art{background-color:#151a20!important;border-color:#35404a!important}
html body.theme-dark .playbook-card .playbook-facts>div{background:#151a20!important;border-color:#2d353f!important}
html body.theme-dark .playbook-card>a{border-top-color:#2d353f!important;color:#85d5ba!important}
html body.theme-dark.content-system-v103 .structured-article-v103 :is(.logic-section-v103,.logic-explain-v103,.logic-action-v103,.logic-analysis-v103){
  background:#191e25!important;border:1px solid #2d353f!important
}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-warning-v103{background:#24211b!important;border:1px solid #5a4c36!important}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-index-v103{background:#1d2b28!important;color:#86d2b8!important;border-color:#30463f!important}
html body.theme-dark :is(.handbook-intro,.inline-note,.traffic-principle,.traffic-cost-note,.source-cost-box,.author-note,.tool-source-note,.service-inline,.service-review-note,.partner-next-step,.playbook-tips,.hero-note,.hero-route,.related-primary){
  background:#191d22!important;border:1px solid #313943!important;color:#c4ccd3!important
}
html body.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.service-warning,.warning-note){background:#24211b!important;border:1px solid #5a4c36!important}

/* Mobile: keep the same rhythm and avoid cramped decorative elements. */
@media(max-width:1050px){
  body .global-sidebar{box-shadow:16px 0 38px rgba(8,20,16,.24)!important}
  body .playbook-card-top{min-height:46px!important}
  body .playbook-card-top .playbook-hero-art{width:44px!important;height:44px!important;min-width:44px!important;background-size:29px 29px!important}
  body .playbook-card{padding:17px!important}
  body .home-welcome-summary>div{padding:13px!important}
}
@media(max-width:520px){
  body .playbook-card h2{font-size:20px!important}
  body .home-search-card{padding:19px 17px!important}
  body .section-feature>div,body .section-feature>aside{padding:17px!important}
  body.content-system-v103 .structured-article-v103 .logic-section-v103{padding:16px!important}
}

/* v109 final polish: search shell and dark action contrast */
body .global-sidebar>.sidebar-search{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body.theme-dark .home-source-grid small{border-top-color:#323b44!important;color:#82d1b6!important}
html body.theme-dark .home-actions .home-action-partner{
  background:#262119!important;
  border-color:#5b4b36!important;
  color:#d9bd96!important;
}
html body.theme-dark .home-actions .home-action-partner:hover{background:#30271d!important;border-color:#715c41!important;color:#ead0aa!important}
html body.theme-dark .home-actions a:not(.home-action-primary):not(.home-action-partner){background:transparent!important;border-color:#46515c!important;color:#9ed9c5!important}

/* v109 mobile header: keep the product name readable instead of ellipsizing it. */
@media(max-width:520px){
  .site-header .brand{gap:8px!important;min-width:0!important;max-width:178px!important}
  .site-header .brand-text{min-width:0!important;max-width:125px!important}
  .site-header .brand-text b{
    display:block!important;
    max-width:125px!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    font-size:11.5px!important;
    line-height:1.05!important;
  }
  .site-header .brand-text small{display:none!important}
}
@media(max-width:360px){
  .site-header .brand{max-width:154px!important}
  .site-header .brand-text,.site-header .brand-text b{max-width:105px!important;font-size:10.8px!important}
}

/* ======================================================================
   v110 — FINAL MOBILE CONTRACT
   The v99 shell is injected after page load, so these rules deliberately
   match its full specificity. Nothing below affects desktop widths.
   ====================================================================== */
@media (max-width:900px){
  :root{--v110-mobile-header:58px}

  html,html body,html body.reference-ui-v99{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  html body{min-width:0!important}
  html body.mobile-nav-open{overflow:hidden!important;touch-action:none}
  html body *{box-sizing:border-box}

  /* One mobile top bar for the original shell and the JS-injected shell. */
  html body .site-header,
  html body.reference-ui-v99 .site-header{
    position:fixed!important;
    inset:0 0 auto 0!important;
    left:0!important;
    right:0!important;
    top:0!important;
    width:100%!important;
    height:var(--v110-mobile-header)!important;
    min-height:var(--v110-mobile-header)!important;
    margin:0!important;
    padding:0!important;
    z-index:200!important;
    background:#173f35!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
    box-shadow:0 4px 16px rgba(10,28,22,.14)!important;
  }
  html body.theme-dark .site-header,
  html body.reference-ui-v99.theme-dark .site-header{background:#0c1115!important}

  html body .site-header .header-inner,
  html body.reference-ui-v99 .ref-topbar{
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0 12px!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    overflow:hidden!important;
  }

  /* Header before app.js finishes. */
  html body .site-header .brand{
    display:flex!important;align-items:center!important;gap:8px!important;
    min-width:0!important;max-width:none!important;flex:1 1 auto!important;
    color:#fff!important;text-decoration:none!important
  }
  html body .site-header .brand-logo{width:31px!important;height:29px!important;flex:0 0 31px!important;object-fit:contain!important}
  html body .site-header .brand-text{min-width:0!important;max-width:none!important}
  html body .site-header .brand-text b{
    display:block!important;max-width:none!important;color:#fff!important;
    white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
    font:760 12px/1.1 Inter,"Segoe UI",Arial,sans-serif!important
  }
  html body .site-header .brand-text small,
  html body .site-header .header-tagline,
  html body .site-header .header-about-link{display:none!important}
  html body .header-actions{display:flex!important;align-items:center!important;gap:6px!important;flex:0 0 auto!important;margin:0!important}
  html body .site-header .theme-toggle,
  html body .site-header .mobile-nav-toggle{
    display:grid!important;place-items:center!important;
    width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
    padding:0!important;margin:0!important;border:1px solid rgba(255,255,255,.16)!important;
    border-radius:9px!important;background:rgba(0,0,0,.13)!important;color:#fff!important;box-shadow:none!important
  }
  html body .site-header .theme-toggle [data-theme-label],
  html body .site-header .mobile-nav-toggle>span:last-child{display:none!important}

  /* Header after v99 rebuild. */
  html body.reference-ui-v99 .ref-topbar-crumbs,
  html body.reference-ui-v99 .ref-top-search,
  html body.reference-ui-v99 .ref-top-favorite,
  html body.reference-ui-v99 .ref-top-progress{display:none!important}
  html body.reference-ui-v99 .ref-mobile-brand{
    display:flex!important;align-items:center!important;gap:8px!important;
    min-width:0!important;max-width:calc(100% - 88px)!important;flex:1 1 auto!important;
    color:#fff!important;text-decoration:none!important
  }
  html body.reference-ui-v99 .ref-mobile-brand img{display:block!important;width:31px!important;height:31px!important;flex:0 0 31px!important;object-fit:contain!important}
  html body.reference-ui-v99 .ref-mobile-brand b{
    display:block!important;min-width:0!important;max-width:100%!important;
    color:#fff!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
    font:760 12.5px/1.1 Inter,"Segoe UI",Arial,sans-serif!important
  }
  html body.reference-ui-v99 .ref-topbar-actions{display:flex!important;align-items:center!important;gap:7px!important;height:100%!important;flex:0 0 auto!important}
  html body.reference-ui-v99 .ref-theme-button,
  html body.reference-ui-v99 .ref-mobile-menu{
    display:grid!important;place-items:center!important;width:38px!important;height:38px!important;min-width:38px!important;
    padding:0!important;margin:0!important;border:1px solid #35514a!important;border-radius:9px!important;
    background:#102722!important;color:#fff!important;box-shadow:none!important
  }
  html body.reference-ui-v99.theme-dark .ref-theme-button,
  html body.reference-ui-v99.theme-dark .ref-mobile-menu{background:#13191f!important;border-color:#34404a!important}
  html body.reference-ui-v99 .ref-mobile-menu>span:last-child{display:none!important}

  /* Drawer starts below the top bar instead of covering it. */
  html body .global-sidebar,
  html body.reference-ui-v99 .global-sidebar{
    position:fixed!important;
    left:0!important;top:var(--v110-mobile-header)!important;bottom:0!important;
    width:min(310px,86vw)!important;max-width:min(310px,86vw)!important;
    height:auto!important;max-height:none!important;
    margin:0!important;padding:12px 12px max(22px,env(safe-area-inset-bottom))!important;
    display:block!important;overflow-y:auto!important;overflow-x:hidden!important;
    overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch;
    visibility:hidden!important;pointer-events:none!important;
    transform:translate3d(-104%,0,0)!important;
    transition:transform .2s ease,visibility 0s linear .2s!important;
    z-index:190!important;
    background:#0d2b24!important;border-right:1px solid rgba(255,255,255,.09)!important;
    box-shadow:14px 0 34px rgba(5,18,14,.24)!important
  }
  html body.theme-dark .global-sidebar,
  html body.reference-ui-v99.theme-dark .global-sidebar{background:#0d1116!important;border-color:#28323a!important}
  html body.mobile-nav-open .global-sidebar,
  html body.reference-ui-v99.mobile-nav-open .global-sidebar{
    visibility:visible!important;pointer-events:auto!important;transform:translate3d(0,0,0)!important;
    transition:transform .2s ease,visibility 0s!important
  }
  html body.reference-ui-v99 .ref-sidebar-brand{display:none!important}
  html body.reference-ui-v99 .ref-sidebar-groups{display:grid!important;gap:5px!important}
  html body.reference-ui-v99 .ref-nav-heading{
    height:31px!important;padding:0 7px!important;color:#8fa9a0!important;
    font-size:9.5px!important;letter-spacing:.075em!important
  }
  html body.reference-ui-v99 .ref-nav-group nav{padding-bottom:5px!important}
  html body.reference-ui-v99 .ref-nav-group nav a{
    width:100%!important;min-height:40px!important;padding:8px 9px!important;gap:10px!important;
    border-radius:8px!important;font-size:12.5px!important;line-height:1.25!important;white-space:normal!important
  }
  html body.reference-ui-v99 .ref-partner-card{margin-top:12px!important;padding:13px!important}
  html body.reference-ui-v99 .ref-sidebar-collapse{display:none!important}

  html body .mobile-nav-overlay{
    display:block!important;position:fixed!important;
    inset:var(--v110-mobile-header) 0 0 0!important;
    visibility:hidden!important;opacity:0!important;pointer-events:none!important;
    border:0!important;background:rgba(10,16,14,.42)!important;
    z-index:180!important;transition:opacity .2s ease,visibility 0s linear .2s!important
  }
  html body.mobile-nav-open .mobile-nav-overlay{
    visibility:visible!important;opacity:1!important;pointer-events:auto!important;
    transition:opacity .2s ease,visibility 0s!important
  }

  /* Main canvas: reset every desktop sidebar offset, including v99 specificity. */
  html body>main,
  html body>main#main-content,
  html body.reference-ui-v99 main{
    width:100%!important;max-width:100%!important;min-width:0!important;
    margin:0!important;margin-left:0!important;margin-right:0!important;
    padding-top:var(--v110-mobile-header)!important;
  }
  html body .site-footer,
  html body.reference-ui-v99 .site-footer{
    width:100%!important;max-width:100%!important;
    margin:0!important;margin-left:0!important;margin-right:0!important
  }
  html body .wrap,
  html body main .wrap,
  html body .site-footer .wrap,
  html body.reference-ui-v99 main .wrap,
  html body.reference-ui-v99 .site-footer .wrap{
    width:100%!important;max-width:100%!important;min-width:0!important;
    margin-left:auto!important;margin-right:auto!important;
    padding-left:15px!important;padding-right:15px!important
  }

  /* Homepage: one clean column. */
  html body main.home-page>section>.wrap,
  html body.reference-ui-v99 main.home-page>section>.wrap,
  html body main.home-page .wrap,
  html body.reference-ui-v99 main.home-page .wrap{
    width:100%!important;max-width:100%!important;padding-left:15px!important;padding-right:15px!important
  }
  html body main.home-page .home-welcome{padding:32px 0 38px!important}
  html body main.home-page .home-welcome-grid,
  html body main.home-page .home-entry-grid,
  html body main.home-page .home-source-grid,
  html body main.home-page .home-section-title-split,
  html body main.home-page .home-results-inner,
  html body main.home-page .home-welcome-summary{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:100%!important
  }
  html body main.home-page .home-welcome-grid{gap:28px!important}
  html body main.home-page .home-welcome h1{
    max-width:100%!important;margin-right:0!important;
    font-size:clamp(34px,10vw,44px)!important;line-height:1.05!important;
    overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important
  }
  html body main.home-page .home-lead{max-width:100%!important;font-size:15px!important;line-height:1.62!important}
  html body main.home-page .home-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important}
  html body main.home-page .home-actions a{
    width:100%!important;max-width:100%!important;min-height:46px!important;
    margin:0!important;padding:0 14px!important;box-shadow:none!important;
    overflow:hidden!important;text-align:center!important
  }
  html body main.home-page .home-actions a::before,
  html body main.home-page .home-actions a::after{display:none!important;content:none!important}
  html body main.home-page .home-search-card{width:100%!important;max-width:100%!important;margin:0!important;padding:19px 17px!important}
  html body main.home-page .home-main-search,
  html body main.home-page .home-main-search>div{width:100%!important;max-width:100%!important}
  html body main.home-page .home-main-search>div{
    display:grid!important;grid-template-columns:1fr!important;gap:8px!important;
    height:auto!important;border:0!important;background:transparent!important;overflow:visible!important
  }
  html body main.home-page .home-main-search input{
    display:block!important;width:100%!important;height:48px!important;
    padding:0 13px!important;border:1px solid #cfd8d2!important;border-radius:8px!important;background:#fff!important
  }
  html body main.home-page .home-main-search button{
    width:100%!important;height:46px!important;margin:0!important;padding:0 14px!important;
    border:0!important;border-radius:8px!important;background:#765b42!important;color:#fff!important
  }
  html body main.home-page .home-entry-grid>a,
  html body main.home-page .home-source-grid>a{width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important;height:auto!important}
  html body main.home-page .home-source-grid>a::before{display:none!important;content:none!important}
  html body main.home-page .home-results-inner{gap:18px!important;padding:22px 18px!important}
  html body main.home-page .home-results nav{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  html body main.home-page .home-results nav a{width:100%!important;text-align:center!important}

  /* Landing pages, tools, services, notes and diagnostics. */
  html body :is(.page-head-grid,.section-entry-grid,.service-tool-grid,.service-tool-grid-one,.service-start-grid,.tools-grid,.tool-form-grid,.compare-grid,.notes-grid,.journal-reading-grid,.about-grid,.about-quick-grid,.rules-summary-grid,.rules-model-grid,.geo-chip-grid,.playbook-catalog-grid,.traffic-hub-basics,.traffic-next,.knowledge-map){
    grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:100%!important
  }
  html body :is(.service-tool,.service-card,.tool-card,.big-tool,.diagnostic-card,.notes-card,.library-row,.section-entry,.traffic-source-card,.source-card,.playbook-card){
    width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important
  }
  html body :is(.tool-form-grid input,.tool-form-grid select,.tool-form-grid textarea,.compare-side input,.compare-side select,.notes-composer input,.notes-composer textarea,.library-search input,.glossary-search input){
    width:100%!important;max-width:100%!important;min-width:0!important;font-size:16px!important
  }
  html body .service-tool-actions,
  html body .service-inline-actions,
  html body .article-cta-row,
  html body .source-compare-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important}
  html body :is(.service-tool-actions a,.service-inline-actions a,.article-cta-row a,.source-compare-actions a){width:100%!important;max-width:100%!important;justify-content:center!important;text-align:center!important}

  /* Traffic catalog cards were inheriting the article's 80px facts offset. */
  html body.reference-ui-v99 main:not(.source-playbook-page) .playbook-card .playbook-facts,
  html body.reference-ui-v99 main.traffic-hub-page .playbook-facts,
  html body main.traffic-hub-page .playbook-facts{
    width:100%!important;max-width:100%!important;margin:12px 0 0!important;
    display:grid!important;grid-template-columns:1fr!important;gap:7px!important
  }
  html body.reference-ui-v99 main:not(.source-playbook-page) .playbook-card .playbook-facts>div,
  html body.reference-ui-v99 main.traffic-hub-page .playbook-facts>div,
  html body main.traffic-hub-page .playbook-facts>div{
    width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;
    display:grid!important;grid-template-columns:92px minmax(0,1fr)!important;gap:7px!important
  }
  html body main.traffic-hub-page .playbook-facts :is(dt,dd){min-width:0!important;margin:0!important;overflow-wrap:normal!important;word-break:normal!important}

  /* Article canvas. */
  html body .article-layout,
  html body.reference-ui-v99 .article-layout,
  html body .source-playbook-page .article-layout,
  html body.reference-ui-v99 .source-playbook-page .article-layout{
    display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
    margin:0!important;padding:18px 15px 54px!important
  }
  html body .article,
  html body .source-playbook-article,
  html body.reference-ui-v99 .article,
  html body.reference-ui-v99 .source-playbook-article{
    width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding-left:0!important;padding-right:0!important
  }
  html body .article-aside.enhanced-rail,
  html body.reference-ui-v99 .article-aside.enhanced-rail{display:none!important}
  html body :is(.article h1,.source-playbook-article h1,.source-title-copy h1){
    max-width:100%!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:auto!important
  }
  html body .article h1{font-size:clamp(28px,8.2vw,36px)!important;line-height:1.1!important}

  /* Source article hero: override the high-specificity three-column v99 grid. */
  html body.reference-ui-v99 .source-title-row,
  html body .source-playbook-page .source-title-row{
    display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;
    gap:11px!important;align-items:center!important;width:100%!important;max-width:100%!important;margin:0 0 10px!important
  }
  html body.reference-ui-v99 .source-hero-icon,
  html body .source-playbook-page .source-hero-icon{
    width:48px!important;height:48px!important;min-width:48px!important;max-width:48px!important;
    margin:0!important;border-radius:10px!important
  }
  html body.reference-ui-v99 .source-title-copy,
  html body .source-playbook-page .source-title-copy{width:auto!important;max-width:100%!important;min-width:0!important;margin:0!important}
  html body.reference-ui-v99 .source-title-copy h1,
  html body .source-playbook-page .source-title-copy h1{
    width:auto!important;max-width:100%!important;margin:0!important;
    font-size:27px!important;line-height:1.08!important;letter-spacing:-.03em!important;
    overflow-wrap:normal!important;word-break:normal!important;hyphens:auto!important
  }
  html body.reference-ui-v99 .ref-launch-time{display:none!important}
  html body.reference-ui-v99 .source-hero-shell>.lead,
  html body .source-playbook-page .source-hero-shell>.lead{width:100%!important;max-width:100%!important;margin:0!important;font-size:14px!important;line-height:1.55!important}

  /* Facts must start at the article edge, not 80px to the right. */
  html body.reference-ui-v99 .source-playbook-article>.playbook-facts,
  html body.reference-ui-v99 .source-hero-shell>.playbook-facts,
  html body .source-playbook-page .source-playbook-article>.playbook-facts{
    width:100%!important;max-width:100%!important;margin:13px 0!important;
    display:grid!important;grid-template-columns:1fr!important;gap:8px!important
  }
  html body.reference-ui-v99 .source-playbook-article>.playbook-facts>div,
  html body.reference-ui-v99 .source-hero-shell>.playbook-facts>div,
  html body .source-playbook-page .source-playbook-article>.playbook-facts>div{
    width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;
    display:grid!important;grid-template-columns:96px minmax(0,1fr)!important;gap:8px!important;align-items:center!important
  }
  html body.reference-ui-v99 .source-playbook-article>.playbook-facts :is(dt,dd),
  html body.reference-ui-v99 .source-hero-shell>.playbook-facts :is(dt,dd){min-width:0!important;margin:0!important;overflow-wrap:normal!important;word-break:normal!important}

  html body .source-section-tabs,
  html body.reference-ui-v99 .source-section-tabs{
    display:flex!important;flex-wrap:nowrap!important;width:100%!important;max-width:100%!important;
    margin:14px 0 5px!important;padding:0 0 8px!important;gap:6px!important;
    overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important
  }
  html body .source-section-tabs::-webkit-scrollbar{display:none!important}
  html body .source-section-tabs a{flex:0 0 auto!important;white-space:nowrap!important;min-width:0!important}

  html body .source-playbook-article>section,
  html body.reference-ui-v99 .source-playbook-article>section,
  html body .guide-v101-section{
    width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;
    padding-left:0!important;padding-right:0!important
  }
  html body :is(.playbook-checklist,.platform-setup,.playbook-format-list,.playbook-steps,.traffic-diagnostic-list,.source-toolkit-grid,.source-journey-grid,.guide-v101-grid,.guide-v101-formats,.guide-v101-dual,.guide-v101-funnel-table,.guide-v101-diagnostics,.guide-v101-scale,.guide-v101-next>div,.ref-summary-grid,.ref-format-showcase,.ref-metrics-row){
    grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:100%!important
  }
  html body :is(.playbook-checklist>li,.platform-setup>div,.playbook-format-list>div,.playbook-steps>li,.traffic-diagnostic-list>li,.source-tool-card,.source-journey-card,.guide-v101-grid>div,.guide-v101-formats>article){
    width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important
  }
  html body :is(.article-figure,.guide-v101-media,.source-journey-card){max-width:100%!important;margin-left:0!important;margin-right:0!important;overflow:hidden!important}
  html body :is(.article-figure img,.guide-v101-media img,.source-journey-card img){display:block!important;width:100%!important;max-width:100%!important;height:auto!important;object-fit:contain!important}

  /* Tables: scroll inside the article instead of moving the page. */
  html body .article table,
  html body .rules-table,
  html body .source-compare-table{
    display:block!important;width:100%!important;max-width:100%!important;
    overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch!important
  }
  html body .compare-table{width:100%!important;max-width:100%!important;overflow-x:auto!important;grid-template-columns:minmax(130px,1.2fr) minmax(105px,1fr) minmax(105px,1fr)!important}
  html body :is(pre,code){max-width:100%!important}
  html body pre{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}

  /* Footer is deliberately compact and never inherits the desktop sidebar offset. */
  html body .footer-main,
  html body.reference-ui-v99 .footer-main{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;padding-top:28px!important;padding-bottom:20px!important}
  html body .footer-links,
  html body.reference-ui-v99 .footer-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px 16px!important}
  html body .footer-bottom,
  html body.reference-ui-v99 .footer-bottom{display:flex!important;flex-wrap:wrap!important;gap:8px 16px!important;padding-top:14px!important;padding-bottom:18px!important}

  /* Long technical strings may break; normal prose and headings may not. */
  html body :is(a,p,li,dd,dt,span,strong,b,h1,h2,h3,h4){min-width:0}
  html body :is(code,pre,kbd,.url,.mono){overflow-wrap:anywhere!important;word-break:break-word!important}
}

@media (max-width:360px){
  html body .site-header .header-inner,
  html body.reference-ui-v99 .ref-topbar{padding-left:10px!important;padding-right:10px!important;gap:6px!important}
  html body.reference-ui-v99 .ref-mobile-brand{max-width:calc(100% - 84px)!important;gap:7px!important}
  html body.reference-ui-v99 .ref-mobile-brand b{font-size:11.5px!important}
  html body.reference-ui-v99 .ref-theme-button,
  html body.reference-ui-v99 .ref-mobile-menu,
  html body .site-header .theme-toggle,
  html body .site-header .mobile-nav-toggle{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important}
  html body main.home-page .home-welcome h1{font-size:32px!important}
  html body .article h1{font-size:27px!important}
  html body.reference-ui-v99 .source-title-copy h1,
  html body .source-playbook-page .source-title-copy h1{font-size:24px!important}
  html body .footer-links,
  html body.reference-ui-v99 .footer-links{grid-template-columns:1fr!important}
}

@media (min-width:370px) and (max-width:900px){
  html body.reference-ui-v99 .source-playbook-article>.playbook-facts,
  html body.reference-ui-v99 .source-hero-shell>.playbook-facts,
  html body .source-playbook-page .source-playbook-article>.playbook-facts{
    grid-template-columns:repeat(2,minmax(0,1fr))!important
  }
  html body.reference-ui-v99 .source-playbook-article>.playbook-facts>div,
  html body.reference-ui-v99 .source-hero-shell>.playbook-facts>div,
  html body .source-playbook-page .source-playbook-article>.playbook-facts>div{
    display:block!important;padding:11px 12px!important
  }
  html body.reference-ui-v99 .source-playbook-article>.playbook-facts dt,
  html body.reference-ui-v99 .source-hero-shell>.playbook-facts dt{display:block!important;margin:0 0 4px!important}
  html body.reference-ui-v99 .source-playbook-article>.playbook-facts dd,
  html body.reference-ui-v99 .source-hero-shell>.playbook-facts dd{display:block!important;margin:0!important}
}

/* v110 mobile follow-up: structured YouTube guide must not keep desktop inner grids. */
@media (max-width:900px){
  html body .guide-v101-timeline>div,
  html body.reference-ui-v99 .guide-v101-timeline>div{
    grid-template-columns:minmax(0,1fr)!important;
    gap:5px!important;
    padding:15px 16px!important;
  }
  html body .guide-v101-timeline time{width:auto!important;max-width:100%!important;margin:0 0 1px!important}
  html body .guide-v101-timeline h3{width:auto!important;max-width:100%!important;margin:0!important}
  html body .guide-v101-timeline p{width:auto!important;max-width:100%!important;margin:2px 0 0!important}
  html body .guide-v101-callout,
  html body.reference-ui-v99 .guide-v101-callout{
    grid-template-columns:minmax(0,1fr)!important;
    gap:6px!important;
  }
}


/* ======================================================================
   v111 — spacing, contrast, centered reading canvas and strict dark mode
   ====================================================================== */
:root{--v111-footer:#0d241e;--v111-footer-line:#23443a;--v111-card-pad:20px}

/* Card copy must never touch an edge. */
body .home-results-inner{padding:30px 32px!important}
body .home-results-inner>div{padding:2px 4px!important}
body .home-results-inner h2{color:#fff!important}
body .home-results-inner>div>p{color:#e1bf94!important}
body .home-results-inner>div>span{color:#eef5f2!important}

body .section-outcome{padding:24px 26px!important}
body .section-outcome>div{padding:2px 2px!important}
body .section-outcome h2{color:#17372f!important}
body .section-outcome>div>span{color:#8a6240!important}

body .guide-v101-formats>article{
  overflow:hidden!important;
  padding:0 14px 16px!important;
}
body .guide-v101-formats .guide-v101-format-art{
  width:calc(100% + 28px)!important;
  margin:0 -14px 12px!important;
  color:#fff!important;
}
body .guide-v101-formats .guide-v101-format-art b{color:#fff!important}
body .guide-v101-formats h3{margin:0 0 7px!important;color:#17372f!important}
body .guide-v101-formats p{margin:0!important;color:#596862!important}

/* A little breathing room in every common editorial card. */
body :is(.section-entry,.home-entry-grid>a,.home-source-grid>a,.knowledge-map>div,.tool-card,.about-card,.service-card,.service-tool,.source-tool-card,.traffic-hub-basics>div,.traffic-next a){
  padding-left:max(18px,var(--v111-card-pad))!important;
  padding-right:max(18px,var(--v111-card-pad))!important;
}

/* Footer is deliberately dark in both themes. */
html body .site-footer,
html body.reference-ui-v99 .site-footer{
  background:var(--v111-footer)!important;
  background-image:none!important;
  border-top:1px solid var(--v111-footer-line)!important;
  color:#dce9e4!important;
}
html body .site-footer :is(.footer-brand,h2,h3,h4,b,strong){color:#f2f7f5!important}
html body .site-footer :is(p,span,small,li){color:#aebfba!important}
html body .site-footer a{color:#d6e6e0!important}
html body .site-footer a:hover{color:#fff!important}
html body .site-footer :is(.footer-bottom,.disclosure){border-color:#29483f!important}

/* Desktop article canvas: centered inside the area that remains after the sidebar. */
@media (min-width:901px){
  html body.reference-ui-v99>main,
  html body.reference-ui-v99 main{
    margin-left:var(--ref-sidebar)!important;
    width:auto!important;
    max-width:none!important;
  }
  html body.reference-ui-v99 .site-footer{
    margin-left:var(--ref-sidebar)!important;
    width:auto!important;
  }
  html body.reference-ui-v99 .article-layout,
  html body .article-page .article-layout,
  html body .source-playbook-page .article-layout{
    box-sizing:border-box!important;
    width:calc(100% - 48px)!important;
    max-width:1180px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    justify-content:center!important;
  }
  html body.reference-ui-v99.ref-sidebar-collapsed .article-layout{margin-left:auto!important;margin-right:auto!important}
}

/* Strict dark mode. First neutralize old light structural fills, then restore dark surfaces. */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{background:#101318!important;color:#edf2f5!important}
html body.theme-dark main,
html body.reference-ui-v99.theme-dark main{background:#101318!important;background-image:none!important;color:#edf2f5!important}
html body.theme-dark main :where(section,article,aside,nav,div,ul,ol,li,figure,figcaption,form,details,summary,dl,dt,dd){
  background-color:transparent!important;
  background-image:none!important;
}
html body.theme-dark :is(.page-head,.section-landing-head,.home-welcome,.home-entry-section,.home-sources-v51,.home-results,.compact-main-v103,.article-page,.source-playbook-page){
  background:#101318!important;background-image:none!important;border-color:#2d353f!important;
}
html body.theme-dark :is(
  .home-search-card,.home-welcome-summary>div,.home-entry-grid>a,.home-source-grid>a,
  .playbook-card,.section-entry,.section-outcome,.section-feature>div,.section-feature>aside,
  .knowledge-map>div,.library-row,.library-card,.tool-card,.about-card,.service-card,.service-tool,
  .source-tool-card,.traffic-hub-basics>div,.traffic-next a,.handbook-intro,.playbook-facts>div,
  .playbook-checklist li,.platform-setup>div,.playbook-format-list>div,.playbook-steps>li,
  .traffic-diagnostic-list li,.source-journey-card,.article-aside.enhanced-rail .aside-block,
  .article-aside.enhanced-rail .rail-card,.rail-partner-card,.rail-path-card,.rail-cover-card,
  .service-notice,.service-task-nav a,.service-start-grid>div,.partner-next-step,
  .guide-v101-flow,.guide-v101-verdict,.guide-v101-grid>div,.guide-v101-formats>article,
  .guide-v101-timeline,.guide-v101-media,.guide-v101-link-options>div,.guide-v101-code,
  .guide-v101-steps li,.guide-v101-funnel-table>div,.guide-v101-diagnostics a,.guide-v101-next a,
  .article-figure,.calc-card,.diagnostic-card,.field-case,.notes-card,.tool-panel,
  .academy-content-section,.logic-section-v103,.related-reading,.related-primary,.related-secondary,
  .article-exit-nav a,.next-reading a,.starter-next,.service-inline
){
  background:#191e25!important;
  background-image:none!important;
  border-color:#303945!important;
  color:#edf2f5!important;
  box-shadow:none!important;
}
html body.theme-dark .home-results-inner{background:#17372f!important;border-color:#31584c!important}
html body.theme-dark .home-results-inner h2,
html body.theme-dark .home-results-inner>div>span{color:#f2f7f5!important}
html body.theme-dark .home-results-inner>div>p{color:#e3bd8b!important}
html body.theme-dark .section-outcome h2{color:#f1f5f7!important}
html body.theme-dark .section-outcome>div>span{color:#d7ad79!important}
html body.theme-dark .guide-v101-formats h3{color:#f2f5f7!important}
html body.theme-dark .guide-v101-formats p{color:#adb7c0!important}
html body.theme-dark .guide-v101-format-art,
html body.theme-dark .guide-v101-format-art.f1{background:linear-gradient(145deg,#123f35,#0b201a)!important;color:#fff!important}
html body.theme-dark .guide-v101-format-art.f2{background:linear-gradient(145deg,#173a4a,#101d26)!important}
html body.theme-dark .guide-v101-format-art.f3{background:linear-gradient(145deg,#3b3521,#201c13)!important}
html body.theme-dark .guide-v101-format-art.f4{background:linear-gradient(145deg,#402a38,#20151d)!important}
html body.theme-dark .guide-v101-format-art.f5{background:linear-gradient(145deg,#18564a,#0c1d18)!important}
html body.theme-dark :is(input,select,textarea,button:not(.ref-nav-heading),.home-main-search input,.sidebar-search input){
  background-color:#171c23!important;border-color:#36414c!important;color:#edf2f5!important;
}
html body.theme-dark :is(table,thead,tbody,tr){background:#151a20!important;color:#edf2f5!important}
html body.theme-dark th{background:#20262d!important;color:#f0f4f6!important;border-color:#36404a!important}
html body.theme-dark td{background:#171c22!important;color:#b8c1ca!important;border-color:#303943!important}
html body.theme-dark :is(.inline-note,.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning){
  background:#24211b!important;background-image:none!important;border-color:#5a4c36!important;color:#dbc9aa!important;
}
html body.theme-dark .site-footer,
html body.reference-ui-v99.theme-dark .site-footer{background:#0b0e12!important;border-color:#252d35!important}

/* Mobile spacing remains real even when older responsive rules collide. */
@media (max-width:900px){
  html body .article-layout,
  html body.reference-ui-v99 .article-layout,
  html body .source-playbook-page .article-layout{
    width:100%!important;
    max-width:820px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  html body .home-results-inner{padding:22px 20px!important}
  html body .home-results-inner>div{padding:0 2px!important}
  html body .section-outcome{padding:20px!important}
  html body .section-outcome>div{padding:0!important}
  html body .guide-v101-formats>article{padding:0 14px 16px!important}
}
@media (max-width:360px){
  html body .article-layout,
  html body.reference-ui-v99 .article-layout,
  html body .source-playbook-page .article-layout{padding-left:14px!important;padding-right:14px!important}
  html body .home-results-inner{padding:20px 17px!important}
  html body .section-outcome{padding:18px!important}
}

/* ======================================================================
   v112 — free-width editorial blocks; restore real inner spacing
   ====================================================================== */

/*
   Regular copy can stay in the compact reading column, but composite
   editorial blocks are allowed to break out of it.  The outcome block
   keeps the normal left reading edge and grows to the right instead of
   being forced into a symmetrical 980px box.
*/
@media (min-width:901px){
  html body.content-system-v103 main.section-landing > .wrap.section-outcome{
    --v112-copy-offset:max(21px,calc((100% - var(--v104-regular-content))/2));
    box-sizing:border-box!important;
    width:min(1180px,calc(100% - var(--v112-copy-offset) - 21px))!important;
    max-width:none!important;
    margin-left:var(--v112-copy-offset)!important;
    margin-right:0!important;
    padding:26px 28px 26px 30px!important;
    grid-template-columns:minmax(260px,.72fr) minmax(0,1.8fr)!important;
    gap:26px!important;
    overflow:visible!important;
  }
  html body.content-system-v103 main.section-landing > .wrap.section-outcome>div{
    padding:2px 0 2px 0!important;
  }
  html body.content-system-v103 main.section-landing > .wrap.section-outcome ul{
    gap:12px!important;
  }
  html body.content-system-v103 main.section-landing > .wrap.section-outcome li{
    padding:15px 15px 15px 44px!important;
    line-height:1.5!important;
  }
  html body.content-system-v103 main.section-landing > .wrap.section-outcome li:before{
    top:14px!important;
    left:13px!important;
  }
  html body.content-system-v103 main.section-landing > .wrap.section-outcome h2{
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
}

/* On narrower desktop widths, keep the breakout but stack the heading
   above the three checks so none of the cards is squeezed. */
@media (min-width:901px) and (max-width:1240px){
  html body.content-system-v103 main.section-landing > .wrap.section-outcome{
    grid-template-columns:minmax(0,1fr)!important;
    gap:18px!important;
  }
}

/* Mobile needs an explicit high-specificity rule because old .wrap rules
   otherwise zero/replace the horizontal padding. */
@media (max-width:900px){
  html body.content-system-v103 main.section-landing > .wrap.section-outcome{
    box-sizing:border-box!important;
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin-left:14px!important;
    margin-right:14px!important;
    padding:20px!important;
    overflow:visible!important;
  }
  html body.content-system-v103 main.section-landing > .wrap.section-outcome>div{
    padding:0!important;
  }
  html body.content-system-v103 main.section-landing > .wrap.section-outcome li{
    padding:14px 14px 14px 43px!important;
  }
}
@media (max-width:360px){
  html body.content-system-v103 main.section-landing > .wrap.section-outcome{
    width:calc(100% - 24px)!important;
    margin-left:12px!important;
    margin-right:12px!important;
    padding:17px!important;
  }
}

/* ======================================================================
   v113 — wider editorial canvas for ordinary guides
   Standard articles no longer inherit the old 830px reading cap. The
   article is centered in the actual workspace between the left navigation
   and the fixed right rail. On medium desktop widths the rail is removed
   so it cannot squeeze the article into a narrow strip.
   ====================================================================== */
:root{--v113-article-max:1000px;--v113-workspace-gap:84px;--v113-workspace-left:36px}

@media (min-width:1501px){
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article-layout{
    box-sizing:border-box!important;
    display:block!important;
    width:calc(100% - var(--v103-rail) - var(--v113-workspace-gap))!important;
    max-width:none!important;
    margin-left:var(--v113-workspace-left)!important;
    margin-right:0!important;
    padding:28px 0 78px!important;
  }
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:var(--v113-article-max)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    justify-self:auto!important;
  }
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article-aside.enhanced-rail{
    display:grid!important;
  }
}

@media (min-width:1051px) and (max-width:1500px){
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article-layout{
    box-sizing:border-box!important;
    display:block!important;
    width:calc(100% - 64px)!important;
    max-width:none!important;
    margin-left:32px!important;
    margin-right:32px!important;
    padding:26px 0 72px!important;
  }
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:var(--v113-article-max)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article-aside.enhanced-rail{
    display:none!important;
  }
}

@media (min-width:901px) and (max-width:1050px){
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article-layout{
    box-sizing:border-box!important;
    width:calc(100% - 44px)!important;
    max-width:none!important;
    margin-left:22px!important;
    margin-right:22px!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article{
    width:100%!important;
    max-width:920px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article-aside.enhanced-rail{
    display:none!important;
  }
}

/* ======================================================================
   v114 — rail/footer boundary, useful About page, accessible sidebar
   ====================================================================== */

/* Ordinary article rail belongs to the article grid again. Sticky keeps it
   useful while scrolling, but the parent grid naturally stops it before the
   footer instead of allowing a fixed panel to float over the footer. */
@media (min-width:1501px){
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article-layout{
    display:grid!important;
    grid-template-columns:minmax(0,var(--v113-article-max)) minmax(280px,var(--v103-rail))!important;
    gap:32px!important;
    width:min(calc(100% - 48px),1332px)!important;
    max-width:1332px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:28px 0 78px!important;
    align-items:start!important;
    justify-content:center!important;
  }
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article{
    width:100%!important;
    max-width:var(--v113-article-max)!important;
    margin:0!important;
    justify-self:stretch!important;
  }
  html body.reference-ui-v99.content-system-v103.article-page main:not(.source-playbook-page) .article-aside.enhanced-rail{
    display:grid!important;
    position:sticky!important;
    top:calc(var(--ref-topbar) + 16px)!important;
    right:auto!important;
    left:auto!important;
    width:100%!important;
    max-width:var(--v103-rail)!important;
    max-height:calc(100vh - var(--ref-topbar) - 32px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    align-self:start!important;
  }
}

/* Collapse control is intentionally high in the sidebar and remains usable
   after the sidebar has been collapsed. */
body.reference-ui-v99 .global-sidebar .ref-sidebar-collapse-top{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  width:100%!important;
  min-height:34px!important;
  margin:0 0 10px!important;
  padding:7px 9px!important;
  border:1px solid rgba(255,255,255,.09)!important;
  border-radius:7px!important;
  background:rgba(255,255,255,.035)!important;
  color:#d9e7e2!important;
  font-size:10.5px!important;
  font-weight:650!important;
  line-height:1.2!important;
  text-align:left!important;
  cursor:pointer!important;
}
body.reference-ui-v99 .global-sidebar .ref-sidebar-collapse-top:hover{
  background:rgba(255,255,255,.075)!important;
  color:#fff!important;
}
body.reference-ui-v99 .global-sidebar .ref-collapse-icon{
  display:inline-grid!important;
  place-items:center!important;
  flex:0 0 18px!important;
  width:18px!important;
  height:18px!important;
  margin:0!important;
  color:#78d9b6!important;
  font-size:14px!important;
  transition:transform .18s ease!important;
}
body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-sidebar-collapse-top{
  display:flex!important;
  width:44px!important;
  min-width:44px!important;
  margin:0 auto 10px!important;
  padding:7px!important;
  justify-content:center!important;
}
body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-sidebar-collapse-top .ref-collapse-label{display:none!important}
body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-sidebar-collapse-top .ref-collapse-icon{transform:rotate(180deg)!important}

/* Force readable text throughout both the rebuilt and fallback sidebar. */
body.reference-ui-v99 .global-sidebar .ref-sidebar-brand,
body.reference-ui-v99 .global-sidebar .ref-sidebar-brand b,
body.reference-ui-v99 .global-sidebar .ref-sidebar-brand strong,
body.reference-ui-v99 .global-sidebar .sidebar-brand,
body.reference-ui-v99 .global-sidebar .sidebar-brand b,
body.reference-ui-v99 .global-sidebar .sidebar-brand strong{color:#f3faf7!important}
body.reference-ui-v99 .global-sidebar .ref-nav-heading{color:#91a7a1!important}
body.reference-ui-v99 .global-sidebar .ref-nav-group nav a{color:#e3eeea!important}
body.reference-ui-v99 .global-sidebar .ref-nav-group nav a:hover{color:#fff!important}
body.reference-ui-v99 .global-sidebar .ref-nav-group nav a.is-active{color:#59e0aa!important}
body.reference-ui-v99 .global-sidebar .ref-partner-card b{color:#f3faf7!important}
body.reference-ui-v99 .global-sidebar .ref-partner-card>span{color:#b4c7c1!important}
body.reference-ui-v99 .global-sidebar .ref-partner-card em{color:#fff!important}

/* The desktop collapse control has no purpose inside the mobile drawer. */
@media (max-width:1050px){
  body.reference-ui-v99 .global-sidebar .ref-sidebar-collapse-top{display:none!important}
}

/* About page: a wider editorial canvas and practical, task-first content. */
body.about-page-v114 .about-hero-v114 .wrap.narrow{
  width:min(calc(100% - 48px),1180px)!important;
  max-width:1180px!important;
  margin-inline:auto!important;
}
body.about-page-v114 .about-hero-v114 h1{max-width:900px!important}
body.about-page-v114 .about-hero-v114 p{max-width:920px!important;font-size:17px!important;line-height:1.65!important}
body.about-page-v114 .about-layout-v114{
  box-sizing:border-box!important;
  width:min(calc(100% - 48px),1180px)!important;
  max-width:1180px!important;
  margin-inline:auto!important;
  padding:34px 0 72px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 330px!important;
  gap:34px!important;
  align-items:start!important;
}
body.about-page-v114 .about-main{width:100%!important;max-width:none!important}
body.about-page-v114 .about-main p{max-width:none!important}
body.about-page-v114 .about-section-v114{padding:0 0 34px!important;margin:0 0 34px!important;border-bottom:1px solid #e1e7e3!important}
body.about-page-v114 .about-section-v114:last-child{margin-bottom:0!important}
body.about-page-v114 .about-section-head-v114>span{
  display:block!important;margin-bottom:7px!important;color:#8a6844!important;
  font-size:10px!important;font-weight:850!important;letter-spacing:.09em!important;text-transform:uppercase!important
}
body.about-page-v114 .about-section-head-v114 h2{margin:0 0 18px!important;font-size:29px!important;line-height:1.17!important}
body.about-page-v114 .about-value-grid-v114,
body.about-page-v114 .about-principle-grid-v114{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}
body.about-page-v114 .about-value-grid-v114>a,
body.about-page-v114 .about-principle-grid-v114>div{
  display:flex!important;flex-direction:column!important;min-height:154px!important;padding:18px 19px!important;
  border:1px solid #dce4df!important;border-radius:11px!important;background:#fff!important;color:#34443e!important;text-decoration:none!important
}
body.about-page-v114 .about-value-grid-v114>a:hover{border-color:#a9c7ba!important;transform:translateY(-1px)!important}
body.about-page-v114 .about-value-grid-v114 b,
body.about-page-v114 .about-principle-grid-v114 b{display:block!important;margin-bottom:7px!important;color:#183b30!important;font-size:16px!important;line-height:1.3!important}
body.about-page-v114 .about-value-grid-v114 span,
body.about-page-v114 .about-principle-grid-v114 p{margin:0!important;color:#65736d!important;font-size:13.5px!important;line-height:1.55!important}
body.about-page-v114 .about-value-grid-v114 em{margin-top:auto!important;padding-top:15px!important;color:#0d7955!important;font-size:12px!important;font-style:normal!important;font-weight:800!important}
body.about-page-v114 .about-route-v114{margin:0!important;padding:0!important;list-style:none!important;counter-reset:about-route!important;display:grid!important;gap:0!important}
body.about-page-v114 .about-route-v114 li{position:relative!important;counter-increment:about-route!important;padding:18px 18px 18px 58px!important;border-top:1px solid #e1e7e3!important}
body.about-page-v114 .about-route-v114 li:last-child{border-bottom:1px solid #e1e7e3!important}
body.about-page-v114 .about-route-v114 li:before{content:counter(about-route)!important;position:absolute!important;left:8px!important;top:18px!important;display:grid!important;place-items:center!important;width:31px!important;height:31px!important;border-radius:9px!important;background:#e9f5f0!important;color:#0d7955!important;font-size:12px!important;font-weight:850!important}
body.about-page-v114 .about-route-v114 b{display:block!important;margin-bottom:4px!important;color:#183b30!important;font-size:16px!important}
body.about-page-v114 .about-route-v114 p{margin:0 0 8px!important;color:#65736d!important;font-size:14px!important;line-height:1.6!important}
body.about-page-v114 .about-route-v114 a{color:#0c7954!important;font-size:12.5px!important;font-weight:800!important;text-underline-offset:3px!important}
body.about-page-v114 .about-boundaries-v114 ul{margin:0!important;padding:0!important;list-style:none!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
body.about-page-v114 .about-boundaries-v114 li{position:relative!important;padding:13px 15px 13px 38px!important;border:1px solid #e3ddd4!important;border-radius:10px!important;background:#fbf9f5!important;color:#5b625e!important;font-size:13.5px!important;line-height:1.5!important}
body.about-page-v114 .about-boundaries-v114 li:before{content:"×"!important;position:absolute!important;left:14px!important;top:11px!important;color:#9a6c4b!important;font-size:18px!important;font-weight:500!important}
body.about-page-v114 .about-nav-card-v114{position:sticky!important;top:calc(var(--ref-topbar) + 20px)!important;padding:20px!important;border-top-width:1px!important;background:#f8faf8!important}
body.about-page-v114 .about-nav-card-v114>span{display:block!important;color:#7b8d85!important;font-size:9.5px!important;font-weight:850!important;letter-spacing:.08em!important;text-transform:uppercase!important}
body.about-page-v114 .about-nav-card-v114>strong{display:block!important;margin:5px 0 15px!important;color:#193a30!important;font:700 23px/1.2 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important}
body.about-page-v114 .about-nav-links-v114{display:grid!important;gap:7px!important}
body.about-page-v114 .about-nav-links-v114 a{display:block!important;margin:0!important;padding:12px 13px!important;border:1px solid #dce5e0!important;border-radius:8px!important;background:#fff!important;text-decoration:none!important}
body.about-page-v114 .about-nav-links-v114 b{display:block!important;color:#244239!important;font-size:12.5px!important}
body.about-page-v114 .about-nav-links-v114 small{display:block!important;margin-top:3px!important;color:#78847f!important;font-size:10.5px!important;line-height:1.4!important}
body.about-page-v114 .about-nav-note-v114{margin-top:14px!important;padding:14px!important;border-radius:9px!important;background:#eef6f2!important}
body.about-page-v114 .about-nav-note-v114 b{color:#176248!important;font-size:11.5px!important}
body.about-page-v114 .about-nav-note-v114 p{margin:5px 0 0!important;color:#61716a!important;font-size:11.5px!important;line-height:1.5!important}
body.about-page-v114 .about-review-v114{display:block!important;margin-top:15px!important;color:#8a938f!important;font-size:9.5px!important}

/* About page dark mode follows the global no-light-surfaces rule. */
html body.theme-dark.about-page-v114 .about-section-v114{border-color:#303943!important}
html body.theme-dark.about-page-v114 :is(.about-value-grid-v114>a,.about-principle-grid-v114>div,.about-nav-card-v114,.about-nav-links-v114 a,.about-boundaries-v114 li){background:#191e25!important;border-color:#303943!important;color:#edf1f4!important}
html body.theme-dark.about-page-v114 :is(.about-value-grid-v114 b,.about-principle-grid-v114 b,.about-route-v114 b,.about-nav-card-v114>strong,.about-nav-links-v114 b){color:#edf2f5!important}
html body.theme-dark.about-page-v114 :is(.about-value-grid-v114 span,.about-principle-grid-v114 p,.about-route-v114 p,.about-nav-links-v114 small,.about-boundaries-v114 li){color:#aeb8c0!important}
html body.theme-dark.about-page-v114 .about-route-v114 li{border-color:#303943!important}
html body.theme-dark.about-page-v114 .about-route-v114 li:before{background:#1d2b28!important;color:#83d4b7!important}
html body.theme-dark.about-page-v114 .about-nav-note-v114{background:#1b2926!important}
html body.theme-dark.about-page-v114 .about-nav-note-v114 b{color:#86d4b9!important}
html body.theme-dark.about-page-v114 .about-nav-note-v114 p{color:#aeb8c0!important}

@media (max-width:1050px){
  body.about-page-v114 .about-hero-v114 .wrap.narrow,
  body.about-page-v114 .about-layout-v114{width:min(calc(100% - 36px),900px)!important;max-width:900px!important}
  body.about-page-v114 .about-layout-v114{grid-template-columns:1fr!important;gap:24px!important}
  body.about-page-v114 .about-nav-card-v114{position:static!important;max-width:none!important}
}
@media (max-width:700px){
  body.about-page-v114 .about-hero-v114 .wrap.narrow,
  body.about-page-v114 .about-layout-v114{width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important}
  body.about-page-v114 .about-value-grid-v114,
  body.about-page-v114 .about-principle-grid-v114,
  body.about-page-v114 .about-boundaries-v114 ul{grid-template-columns:1fr!important}
  body.about-page-v114 .about-value-grid-v114>a,
  body.about-page-v114 .about-principle-grid-v114>div{min-height:0!important}
  body.about-page-v114 .about-section-head-v114 h2{font-size:24px!important}
  body.about-page-v114 .about-route-v114 li{padding-left:52px!important;padding-right:8px!important}
}

/* v114.1 — override the older 980px compact-page cap on About only. */
@media (min-width:1051px){
  html body.about-page-v114.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .about-hero-v114 > .wrap.narrow,
  html body.about-page-v114.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap.about-layout-v114,
  html body.about-page-v114.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap.about-layout-v114{
    width:min(calc(100% - 48px),1180px)!important;
    max-width:1180px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* ======================================================================
   v115 — spacing cleanup, one active nav item, real service favicons
   ====================================================================== */

/* Inline glossary controls must never sit on top of neighbouring copy. */
html body .term-help{
  display:inline-flex!important;
  align-items:baseline!important;
  gap:3px!important;
  margin-left:1px!important;
  margin-right:3px!important;
  padding:0 1px!important;
  line-height:inherit!important;
  vertical-align:baseline!important;
  white-space:nowrap!important;
}
html body .term-help::after{
  position:static!important;
  flex:0 0 12px!important;
  margin:0!important;
  transform:translateY(-1px)!important;
}

/* Old compact layers zeroed padding on several callouts. These are text
   containers, so they always keep an actual inner gutter. */
html body.content-system-v103 :is(
  .partner-next-step,.traffic-partner-step,.handbook-intro,.inline-note,
  .traffic-principle,.traffic-cost-note,.source-cost-box,.author-note,
  .tool-source-note,.service-inline,.service-review-note,.playbook-tips,
  .hero-note,.hero-route,.related-primary,.playbook-risk,.guide-v101-callout
){
  box-sizing:border-box!important;
  padding:18px 20px!important;
}
html body.content-system-v103 .traffic-partner-step{
  padding:20px 22px!important;
}
html body.content-system-v103 .partner-next-step>span,
html body.content-system-v103 .partner-next-step>p,
html body.content-system-v103 .partner-next-step>a{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  max-width:none!important;
}

/* Use actual web favicons for named services. The former generated SVG
   approximations are disabled completely. */
html body .rail-tool-mark::before,
html body .service-mark::before{
  content:none!important;
  display:none!important;
  background:none!important;
}
html body .rail-tool-mark img,
html body .service-mark img{
  display:block!important;
  width:24px!important;
  height:24px!important;
  max-width:70%!important;
  max-height:70%!important;
  object-fit:contain!important;
  border-radius:5px!important;
}
html body .service-mark img{width:28px!important;height:28px!important}
html body.theme-dark :is(.rail-tool-mark,.service-mark){
  background:#20262e!important;
  border-color:#37414c!important;
}

/* Sidebar contrast: inactive copy is readable, only one exact route gets
   the active treatment produced by app.js. */
html body.reference-ui-v99 .global-sidebar .ref-nav-heading{
  color:#a4b7b1!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a{
  color:#e8f1ee!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a .ref-nav-icon{
  color:#b9cbc5!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a:hover{
  color:#fff!important;
  background:rgba(255,255,255,.065)!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a.is-active,
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"]{
  color:#8cf0c8!important;
  background:linear-gradient(90deg,rgba(23,159,110,.25),rgba(23,159,110,.075))!important;
  box-shadow:inset 2px 0 #27c98e!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a.is-active .ref-nav-icon,
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"] .ref-nav-icon{
  color:#63e1b0!important;
}

@media(max-width:650px){
  html body.content-system-v103 :is(
    .partner-next-step,.traffic-partner-step,.handbook-intro,.inline-note,
    .traffic-principle,.traffic-cost-note,.source-cost-box,.author-note,
    .tool-source-note,.service-inline,.service-review-note,.playbook-tips,
    .hero-note,.hero-route,.related-primary,.playbook-risk,.guide-v101-callout
  ){
    padding:16px!important;
  }
}


/* v115.1 — restore gutters on .wrap callouts after the compact-page rule. */
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap.partner-next-step,
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap.partner-next-step{
  padding-left:22px!important;
  padding-right:22px!important;
}
@media(max-width:650px){
  html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap.partner-next-step,
  html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap.partner-next-step{
    padding-left:16px!important;
    padding-right:16px!important;
  }
}


/* v115.2 — remaining spacing and navigation-state cleanup. */
/* This comparison note is a real callout, not a page-edge accent. */
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap.source-compare-note,
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap.source-compare-note{
  box-sizing:border-box!important;
  padding:18px 20px!important;
  border:1px solid #e2e1db!important;
  border-left-width:1px!important;
  border-radius:10px!important;
  background:#faf8f4!important;
}
html body.theme-dark.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap.source-compare-note,
html body.theme-dark.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap.source-compare-note{
  background:#191e25!important;
  border-color:#2b333d!important;
  color:#edf1f4!important;
}
html body.theme-dark .source-compare-note strong{color:#f3f6f8!important}
html body.theme-dark .source-compare-note p{color:#c8d0d7!important}

/* Only aria-current marks the selected route. This deliberately neutralises
   any stale .active/.is-active class left by older markup or scripts. */
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a:not([aria-current="page"]),
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a.is-active:not([aria-current="page"]){
  color:#e8f1ee!important;
  background:transparent!important;
  box-shadow:none!important;
  font-weight:570!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a:not([aria-current="page"]) .ref-nav-icon,
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a.is-active:not([aria-current="page"]) .ref-nav-icon{
  color:#b9cbc5!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"]{
  color:#8cf0c8!important;
  background:linear-gradient(90deg,rgba(23,159,110,.25),rgba(23,159,110,.075))!important;
  box-shadow:inset 2px 0 #27c98e!important;
  font-weight:700!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"] .ref-nav-icon{color:#63e1b0!important}

/* Same rule for the pre-JS fallback sidebar: never show two selected links. */
html body .global-sidebar .sidebar-menu a:not([aria-current="page"]){
  background:transparent!important;
  box-shadow:none!important;
}

@media(max-width:650px){
  html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap.source-compare-note,
  html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap.source-compare-note{
    padding:16px!important;
  }
}

/* v115.3 — source playbook mistake blocks keep real inner gutters too. */
html body .source-playbook-page .playbook-tips{
  box-sizing:border-box!important;
  padding:18px 20px!important;
  border:1px solid #e6d4b6!important;
  border-left-width:1px!important;
  border-radius:10px!important;
  background:#fbf5eb!important;
}
html body.theme-dark .source-playbook-page .playbook-tips{
  background:#211e1a!important;
  border-color:#40382f!important;
  color:#edf1f4!important;
}
html body.theme-dark .source-playbook-page .playbook-tips :is(h2,h3,strong,b){color:#f4f6f7!important}
html body.theme-dark .source-playbook-page .playbook-tips :is(p,li){color:#cbd1d6!important}
@media(max-width:650px){
  html body .source-playbook-page .playbook-tips{padding:16px!important}
}
/* v115.3a — outrank the article-rhythm shorthand on these semantic warning sections. */
html body.article-page main.source-playbook-page .source-playbook-article > section.playbook-tips{
  padding:18px 20px!important;
}
@media(max-width:650px){
  html body.article-page main.source-playbook-page .source-playbook-article > section.playbook-tips{padding:16px!important}
}

/* ======================================================================
   v116 — final UI polish: light controls, Academy-wide progress,
   aligned article headers, source-only hero art, readable compact cards,
   and stable Lucide navigation icons.
   ====================================================================== */

/* ---------- Light theme top bar ---------- */
html body.reference-ui-v99:not(.theme-dark) .site-header{
  background:#f6f9f7!important;
  border-bottom:1px solid #dce5e1!important;
  box-shadow:0 2px 10px rgba(27,56,46,.045)!important;
}
html body.reference-ui-v99:not(.theme-dark) .ref-topbar{color:#425951!important}
html body.reference-ui-v99:not(.theme-dark) .ref-topbar-crumbs a{
  color:#557068!important;
}
html body.reference-ui-v99:not(.theme-dark) .ref-topbar-crumbs b{color:#183f34!important}
html body.reference-ui-v99:not(.theme-dark) .ref-topbar-crumbs>span{color:#9aa9a3!important}

html body.reference-ui-v99:not(.theme-dark) .ref-top-search{
  height:36px!important;
  width:280px!important;
  padding:0 11px!important;
  border:1px solid #cbd8d2!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 1px 3px rgba(25,57,46,.04)!important;
}
html body.reference-ui-v99:not(.theme-dark) .ref-top-search>span{color:#41665a!important}
html body.reference-ui-v99:not(.theme-dark) .ref-top-search input{
  color:#173b31!important;
  font-size:12px!important;
  font-weight:550!important;
}
html body.reference-ui-v99:not(.theme-dark) .ref-top-search input::placeholder{color:#7d918a!important;opacity:1!important}
html body.reference-ui-v99:not(.theme-dark) .ref-top-search kbd{
  padding:3px 5px!important;
  border:1px solid #dce5e1!important;
  border-radius:5px!important;
  background:#f2f6f4!important;
  color:#647a72!important;
  font-size:9px!important;
}
html body.reference-ui-v99:not(.theme-dark) :is(.ref-theme-button,.ref-top-favorite){
  height:36px!important;
  border:1px solid #cbd8d2!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#244c40!important;
  box-shadow:0 1px 3px rgba(25,57,46,.04)!important;
}
html body.reference-ui-v99:not(.theme-dark) :is(.ref-theme-button,.ref-top-favorite):hover{
  background:#eef5f1!important;
  border-color:#aec4ba!important;
  color:#103f31!important;
}
html body.reference-ui-v99:not(.theme-dark) .ref-top-progress span,
html body.reference-ui-v99:not(.theme-dark) .ref-top-progress b{color:#526c63!important}
html body.reference-ui-v99:not(.theme-dark) .ref-top-progress b{color:#174a3a!important}
html body.reference-ui-v99:not(.theme-dark) .ref-top-progress i{background:#dbe5e0!important}
html body.reference-ui-v99:not(.theme-dark) .ref-top-progress em{background:#1a9a69!important}

/* Dark theme retains the dark shell and gets a slightly cleaner control contrast. */
html body.reference-ui-v99.theme-dark :is(.ref-top-search,.ref-theme-button,.ref-top-favorite){
  border-color:#34414a!important;
  background:#161d23!important;
  box-shadow:none!important;
}
html body.reference-ui-v99.theme-dark .ref-top-search input{color:#eef4f2!important}
html body.reference-ui-v99.theme-dark .ref-top-search input::placeholder{color:#92a29d!important}

/* ---------- Header and article canvas alignment ---------- */
@media (min-width:1501px){
  html body.reference-ui-v99.article-page .ref-topbar{
    box-sizing:border-box!important;
    width:min(calc(100% - 48px),1332px)!important;
    max-width:1332px!important;
    margin-inline:auto!important;
    padding-inline:0!important;
  }
}
@media (min-width:1051px) and (max-width:1500px){
  html body.reference-ui-v99.article-page.content-system-v103 .ref-topbar{
    box-sizing:border-box!important;
    width:min(calc(100% - 64px),1000px)!important;
    max-width:1000px!important;
    margin-inline:auto!important;
    padding-inline:0!important;
  }
  html body.reference-ui-v99.article-page:not(.content-system-v103) .ref-topbar{
    box-sizing:border-box!important;
    width:calc(100% - 48px)!important;
    max-width:1160px!important;
    margin-inline:auto!important;
    padding-inline:0!important;
  }
}

/* Ordinary guides: text-only headers. Header illustrations were removed from
   the markup in v116, and these rules keep old cached markup harmless. */
html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0 0 24px!important;
  padding:8px 0 24px!important;
  border:0!important;
  border-bottom:1px solid #dfe7e3!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero-main{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero-visual{display:none!important}
html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero-copy{
  width:100%!important;
  max-width:940px!important;
  margin:0!important;
  padding:0!important;
}
html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero .article-label{
  margin:0 0 7px!important;
  font-size:10.5px!important;
  line-height:1.3!important;
  letter-spacing:.075em!important;
}
html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero h1{
  max-width:940px!important;
  margin:0 0 10px!important;
  font-size:38px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}
html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero .lead{
  max-width:880px!important;
  margin:0!important;
  font-size:16px!important;
  line-height:1.62!important;
}
html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero-foot{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-top:20px!important;
  padding-top:15px!important;
  border-top:1px solid #edf1ef!important;
}
html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero .article-meta{
  margin:0!important;
}

/* Source playbooks are the only article family that keeps header artwork. */
@media (min-width:1261px){
  html body.reference-ui-v99 main.source-playbook-page .source-title-row{
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr) 182px!important;
    gap:16px!important;
    align-items:center!important;
    margin:0 0 10px!important;
  }
  html body.reference-ui-v99 main.source-playbook-page .source-title-visual{
    display:block!important;
    width:182px!important;
    height:92px!important;
    padding:7px!important;
    border:1px solid #dfe8e4!important;
    border-radius:11px!important;
    background:#f7faf8!important;
    overflow:hidden!important;
  }
  html body.reference-ui-v99 main.source-playbook-page .source-title-visual img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
  }
}
@media (max-width:1260px){
  html body.reference-ui-v99 main.source-playbook-page .source-title-visual{display:none!important}
}
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-title-visual{
  background:#171d23!important;
  border-color:#303942!important;
}

/* ---------- Real Lucide icons in the left navigation ---------- */
html body.reference-ui-v99 .global-sidebar .ref-nav-icon{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  flex:0 0 20px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  overflow:visible!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-icon-img{
  display:block!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  color:#f4fbf8!important;
  opacity:.68!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a:hover .ref-nav-icon-img{opacity:.9!important}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"] .ref-nav-icon-img{opacity:1!important}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a{
  grid-template-columns:20px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
}

/* ---------- Larger text in compact information blocks ---------- */
html body.reference-ui-v99 .home-welcome-summary b{font-size:13px!important;line-height:1.35!important}
html body.reference-ui-v99 .home-welcome-summary span{font-size:13px!important;line-height:1.55!important}
html body.reference-ui-v99 .home-welcome-summary>div{padding:15px 15px 16px!important}
html body.reference-ui-v99 .playbook-facts dt{font-size:10.5px!important;line-height:1.3!important}
html body.reference-ui-v99 .playbook-facts dd{font-size:12.5px!important;line-height:1.42!important}
html body.reference-ui-v99 .playbook-risk b{font-size:12px!important;line-height:1.4!important}
html body.reference-ui-v99 .playbook-risk p{font-size:13px!important;line-height:1.55!important}
html body.reference-ui-v99 .source-section-tabs a{font-size:11.8px!important;line-height:1.25!important}
html body.reference-ui-v99 .playbook-checklist li{font-size:12.8px!important;line-height:1.5!important}
html body.reference-ui-v99 .ref-source-funnel b{font-size:12.5px!important;line-height:1.3!important}
html body.reference-ui-v99 .ref-source-funnel small{font-size:11.2px!important;line-height:1.45!important}
html body.reference-ui-v99 .ref-format-card>strong{font-size:12.5px!important;line-height:1.35!important}
html body.reference-ui-v99 .ref-format-card>small{font-size:11.5px!important;line-height:1.5!important}
html body.reference-ui-v99 .ref-tip-strip p{font-size:12.5px!important;line-height:1.5!important}
html body.reference-ui-v99 :is(.service-task-nav,.traffic-next,.guide-v101-next,.guide-v101-diagnostics) :is(p,small,span){font-size:max(12px,1em)!important;line-height:1.5!important}

/* Main article reading text gets a comfortable floor on desktop. */
@media (min-width:901px){
  html body.reference-ui-v99 .source-playbook-article :is(p,li,dd),
  html body.reference-ui-v99.article-page.content-system-v103 .article :is(p,li,dd){
    font-size:14.5px!important;
    line-height:1.65!important;
  }
}

/* ---------- Light-theme buttons and search on content pages ---------- */
html body.reference-ui-v99:not(.theme-dark) .home-main-search>div{
  border-color:#c9d6d0!important;
  background:#fff!important;
  box-shadow:0 1px 3px rgba(25,57,46,.035)!important;
}
html body.reference-ui-v99:not(.theme-dark) .home-main-search input{
  background:#fff!important;
  color:#173b31!important;
  font-size:13px!important;
}
html body.reference-ui-v99:not(.theme-dark) .home-main-search button{
  border-left:1px solid #c9d6d0!important;
  background:#f0f6f3!important;
  color:#184b3a!important;
  font-size:12.5px!important;
  font-weight:750!important;
}
html body.reference-ui-v99:not(.theme-dark) .home-main-search button:hover{background:#e6f1ec!important}
html body.reference-ui-v99:not(.theme-dark) .home-actions a{
  min-height:48px!important;
  padding:0 18px!important;
  border:1px solid #c8d6d0!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#17473a!important;
  box-shadow:0 1px 3px rgba(25,57,46,.035)!important;
  font-size:13.5px!important;
}
html body.reference-ui-v99:not(.theme-dark) .home-actions a:hover{background:#eef5f1!important;border-color:#acc3b9!important}
html body.reference-ui-v99:not(.theme-dark) .home-actions .home-action-primary{
  background:#e7f3ed!important;
  border-color:#a8c8ba!important;
  color:#114a38!important;
}
html body.reference-ui-v99:not(.theme-dark) .home-actions .home-action-primary:hover{background:#dcece5!important}
html body.reference-ui-v99:not(.theme-dark) .home-actions .home-action-partner{
  background:#fff8ef!important;
  border-color:#e1c9a9!important;
  color:#70471f!important;
}
html body.reference-ui-v99:not(.theme-dark) .home-actions .home-action-partner:hover{background:#faeedf!important}

/* ---------- Mobile top bar: a real Menu button, mobile only ---------- */
html body.reference-ui-v99 .ref-mobile-menu{display:none!important}
@media (max-width:900px){
  html body.reference-ui-v99:not(.theme-dark) .site-header{
    background:#f6f9f7!important;
    border-bottom-color:#dce5e1!important;
  }
  html body.reference-ui-v99:not(.theme-dark) .ref-mobile-brand{color:#173d32!important}
  html body.reference-ui-v99:not(.theme-dark) .ref-mobile-brand b{color:#173d32!important}
  html body.reference-ui-v99:not(.theme-dark) :is(.ref-theme-button,.ref-mobile-menu){
    border:1px solid #c5d3cd!important;
    background:#fff!important;
    color:#214a3e!important;
    box-shadow:0 1px 3px rgba(25,57,46,.05)!important;
  }
  html body.reference-ui-v99 .ref-mobile-menu{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:76px!important;
    height:38px!important;
    padding:0 11px!important;
    gap:8px!important;
    border-radius:9px!important;
    font-size:12px!important;
    font-weight:700!important;
  }
  html body.reference-ui-v99 .ref-mobile-menu>span:last-child{display:inline!important}
  html body.reference-ui-v99 .ref-mobile-menu .mobile-nav-icon{width:17px!important;height:14px!important}
  html body.reference-ui-v99 .ref-mobile-brand{max-width:calc(100% - 132px)!important}
  html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero{
    padding:10px 0 20px!important;
    margin-bottom:18px!important;
  }
  html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero h1{
    font-size:28px!important;
    line-height:1.1!important;
  }
  html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero .lead{font-size:14.5px!important;line-height:1.6!important}
  html body.reference-ui-v99.article-page.content-system-v103 .academy-article-hero-foot{align-items:flex-start!important;flex-direction:column!important}
}

/* Collapsed desktop sidebar still keeps every icon centered on one axis. */
@media (min-width:901px){
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-nav-group nav a{
    display:grid!important;
    grid-template-columns:20px!important;
    justify-content:center!important;
    justify-items:center!important;
    padding-inline:0!important;
  }
}

/* v116.1 — keep primary actions light in the light theme as well. */
html body.reference-ui-v99:not(.theme-dark) :is(
  .service-inline-primary,
  .button-primary,
  .source-partner-cta>a,
  .service-open-link
){
  border:1px solid #a9c6ba!important;
  background:#edf6f1!important;
  color:#174a3a!important;
  box-shadow:0 1px 3px rgba(25,57,46,.04)!important;
}
html body.reference-ui-v99:not(.theme-dark) :is(
  .service-inline-primary,
  .button-primary,
  .source-partner-cta>a,
  .service-open-link
):hover{
  border-color:#8fb5a5!important;
  background:#e1efe8!important;
  color:#103f31!important;
}


/* ======================================================================
   v117 — source header cleanup, icon spacing fix, dark theme polish
   ====================================================================== */

/* Remove the right-side picture from traffic-source article headers. */
html body .source-playbook-page .source-title-visual,
html body.reference-ui-v99 main.source-playbook-page .source-title-visual {
  display: none !important;
}
html body .source-playbook-page .source-title-row,
html body.reference-ui-v99 main.source-playbook-page .source-title-row {
  grid-template-columns: 56px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 14px !important;
}
html body .source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon {
  margin-top: 2px !important;
}

/* Fix cramped icons in checklist-style blocks. */
html body .playbook-checklist li {
  padding: 14px 16px 14px 46px !important;
  min-height: 74px !important;
}
html body .playbook-checklist li:before {
  left: 15px !important;
  top: 14px !important;
  width: 18px !important;
  height: 18px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: #e8f4ee !important;
  color: #156d4f !important;
  font-size: 12px !important;
  line-height: 1 !important;
}

html body .rail-quick a {
  position: relative !important;
  display: block !important;
  padding: 11px 12px 11px 44px !important;
  min-height: 68px !important;
}
html body .rail-quick a:before {
  left: 13px !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 999px !important;
  font-size: 10px !important;
}
html body .rail-quick a strong {
  display: block !important;
  margin: 0 0 4px !important;
  font-size: 12.2px !important;
  line-height: 1.35 !important;
}
html body .rail-quick a small {
  display: block !important;
  margin: 0 !important;
  font-size: 10.8px !important;
  line-height: 1.45 !important;
}

/* FAQ rows: clearer spacing and stronger contrast. */
html body .playbook-faq details {
  padding: 0 !important;
  overflow: hidden !important;
}
html body .playbook-faq summary {
  list-style: none !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 13px 16px !important;
}
html body .playbook-faq summary::-webkit-details-marker {
  display: none !important;
}
html body .playbook-faq summary::before {
  content: "▸";
  flex: 0 0 auto;
  margin-top: 1px;
  color: #1f6e58;
  font-size: 12px;
  line-height: 1.2;
}
html body .playbook-faq details[open] summary::before {
  transform: rotate(90deg);
}
html body .playbook-faq details p {
  padding: 0 16px 14px 38px !important;
}

/* Dark theme: remove light islands and improve readability. */
html body.theme-dark :is(
  .rail-quick,
  .rail-quick a,
  .playbook-faq details,
  .source-compare-actions a,
  .article-cta-row a,
  .playbook-head-actions a,
  .playbook-official a,
  .bookmark-button,
  .saved-link,
  .compare-table > div,
  .source-compare-row > div,
  .source-compare-row > div:first-child,
  .rules-model-grid section,
  .rules-summary-grid > div,
  .geo-directory,
  .geo-chip-grid li,
  .geo-guideline-link,
  .rail-tools a,
  .playbook-method li,
  .playbook-template-list span,
  .playbook-decision article,
  .ref-track-card,
  .ref-metrics-card,
  .ref-metrics-row > div,
  .ref-format-card,
  .ref-connected-tools a,
  .playbook-facts > div
) {
  background: #171c22 !important;
  background-image: none !important;
  border-color: #2f3843 !important;
  color: #edf2f5 !important;
  box-shadow: none !important;
}
html body.theme-dark :is(
  .source-compare-row.source-compare-head > div,
  .compare-table > div:nth-child(3n+1),
  .article th
) {
  background: #1d232b !important;
  color: #edf2f5 !important;
  border-color: #36404a !important;
}
html body.theme-dark :is(
  .playbook-faq summary,
  .rail-quick a strong,
  .article-cta-row a,
  .playbook-head-actions a,
  .playbook-official a,
  .bookmark-button,
  .saved-link,
  .source-compare-actions a,
  .ref-metrics-row b,
  .rail-tools a b,
  .geo-directory b,
  .rules-summary-grid b,
  .rules-model-grid h3,
  .article th
) {
  color: #edf2f5 !important;
}
html body.theme-dark :is(
  .playbook-faq details p,
  .rail-quick a small,
  .source-compare-row > div,
  .compare-table > div,
  .rules-summary-grid p,
  .rules-model-grid li,
  .geo-chip-grid li,
  .geo-chip-grid li small,
  .geo-guideline-link,
  .geo-guideline-link span,
  .article td,
  .article p,
  .article li,
  .article dd,
  .source-playbook-article p,
  .source-playbook-article li,
  .source-playbook-article dd,
  .playbook-facts dt
) {
  color: #c7d0d8 !important;
}
html body.theme-dark .playbook-facts dd {
  color: #edf2f5 !important;
}
html body.theme-dark .playbook-checklist li:before,
html body.theme-dark .rail-quick a:before {
  background: #20312b !important;
  color: #96e0c4 !important;
}
html body.theme-dark .playbook-faq summary::before {
  color: #8fd8bf !important;
}
html body.theme-dark .playbook-faq summary {
  background: #171c22 !important;
  color: #edf2f5 !important;
}
html body.theme-dark .playbook-faq details {
  border-color: #2f3843 !important;
  background: #171c22 !important;
}
html body.theme-dark .playbook-risk {
  background: #221f1a !important;
  border-color: #584a35 !important;
}
html body.theme-dark .playbook-risk b {
  color: #efd7ab !important;
}
html body.theme-dark .playbook-risk p {
  color: #e3d6bc !important;
}
html body.theme-dark .source-compare-note,
html body.theme-dark main.compact-main-v103 .wrap.source-compare-note {
  background: #191e25 !important;
  border-color: #2f3843 !important;
  color: #c7d0d8 !important;
}
html body.theme-dark .source-compare-note strong {
  color: #edf2f5 !important;
}


/* ======================================================================
   v117b — dark article surface, button cleanup, stronger contrast, image text centering
   ====================================================================== */

/* In dark theme, section wrappers should blend with the page instead of forming a lighter slab. */
html body.theme-dark :is(.section-groups,.section-bottom-links,.library-shell,.library-main,.catalog-bar){
  background: transparent !important;
  box-shadow: none !important;
}

/* Repaint remaining light buttons in dark mode. */
html body.theme-dark :is(
  .section-bottom-links a,
  .guide-v101-next a,
  .guide-v101-diagnostics a,
  .traffic-next a,
  .playbook-official a,
  .source-compare-actions a,
  .article-cta-row a,
  .section-entry span,
  .section-outcome a,
  .section-feature a,
  .section-card a,
  .playbook-head-actions a
){
  background:#171c22 !important;
  background-image:none !important;
  color:#8fd8bf !important;
  border-color:#2f3843 !important;
  box-shadow:none !important;
}
html body.theme-dark :is(
  .section-bottom-links a:hover,
  .guide-v101-next a:hover,
  .guide-v101-diagnostics a:hover,
  .traffic-next a:hover,
  .playbook-official a:hover,
  .source-compare-actions a:hover,
  .article-cta-row a:hover,
  .playbook-head-actions a:hover
){
  background:#1d232b !important;
  color:#b0ecd6 !important;
  border-color:#40505d !important;
}

/* Increase contrast of muted text that still sinks into the dark background. */
html body.theme-dark :is(
  .source-hero-shell > .lead,
  .article .lead,
  .guide-v101-hero .lead,
  .article-aside.enhanced-rail .rail-toc a,
  .article-aside.enhanced-rail .rail-toc b,
  .article-aside.enhanced-rail .aside-block p,
  .section-entry p,
  .section-outcome p,
  .guide-v101-formats p,
  .guide-v101-grid p,
  .guide-v101-verdict p,
  .guide-v101-flow p,
  .guide-v101-diagnostics a,
  .related-card p,
  .library-row p,
  .service-tool p,
  .tool-card p,
  .about-card p
){
  color:#cbd4db !important;
}
html body.theme-dark .article-aside.enhanced-rail .rail-toc a{opacity:1 !important}
html body.theme-dark .article-aside.enhanced-rail .rail-toc a:hover,
html body.theme-dark .article-aside.enhanced-rail .rail-toc a[aria-current="true"]{
  color:#edf2f5 !important;
}
html body.theme-dark .source-hero-shell > .lead,
html body.theme-dark .article .lead,
html body.theme-dark .guide-v101-hero .lead{
  color:#d2dbe2 !important;
}

/* Keep dark cards readable, including entry cards and CTA strips. */
html body.theme-dark :is(.section-entry,.section-outcome,.section-feature>div,.section-feature>aside){
  background:#171c22 !important;
  border-color:#2f3843 !important;
}
html body.theme-dark :is(.section-entry b,.section-outcome b,.section-feature h2,.section-feature h3){
  color:#edf2f5 !important;
}
html body.theme-dark .section-entry span{display:inline-flex!important;align-items:center!important}

/* Center the typography vertically inside the source-format art blocks. */
html body .guide-v101-format-art{
  justify-content:center !important;
}


/* ======================================================================
   v118 — unified readable typography
   Keep hierarchy in headings, but normalize ordinary reading text.
   ====================================================================== */
:root{
  --academy-text-base:16px;
  --academy-text-secondary:14px;
  --academy-text-meta:12px;
}

/* Main reading text: one comfortable size across articles and guides. */
html body.reference-ui-v99 :is(
  .article p,.article li,.article dd,
  .source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,
  .guide-v101-section>p,.guide-v101-section li,.guide-v101-section dd,
  .logic-section-v103 p,.logic-section-v103 li,.logic-section-v103 dd,
  .academy-content-section p,.academy-content-section li,.academy-content-section dd
){
  font-size:var(--academy-text-base)!important;
  line-height:1.65!important;
}

/* Lead paragraphs stay only slightly larger than body copy. */
html body.reference-ui-v99 :is(
  .source-hero-shell>.lead,
  .academy-article-hero .lead,
  .article>.lead,
  .guide-v101-hero .lead,
  .page-head p,
  .home-lead
){
  font-size:17px!important;
  line-height:1.62!important;
}

/* Cards and compact explanatory blocks use the same readable body size. */
html body.reference-ui-v99 :is(
  .home-entry-grid>a p,.home-source-grid>a p,
  .section-entry p,.section-outcome p,.section-feature p,
  .playbook-card>p,.playbook-card-risk,
  .service-card p,.service-tool p,.service-tool dd,
  .tool-card p,.big-tool-head p,.tool-source-note,.big-tool-foot,
  .about-card p,.about-principle-grid-v114 p,.about-route-v114 p,.about-boundaries-v114 li,
  .library-row p,.related-card p,.traffic-next p,
  .guide-v101-grid p,.guide-v101-formats p,.guide-v101-callout p,
  .guide-v101-timeline p,.guide-v101-media figcaption,.guide-v101-link-options p,
  .guide-v101-link-options li,.guide-v101-steps p,.guide-v101-diagnostics p,
  .guide-v101-scale p,.guide-v101-next span,
  .playbook-faq summary,.playbook-faq details p,
  .playbook-checklist li,.platform-setup>div,.playbook-format-list dd,
  .traffic-diagnostic-list li,.source-tool-card-copy,
  .ref-tip-strip p,.ref-format-card>small,.ref-source-funnel small,
  .rules-summary-grid p,.rules-model-grid li,.geo-chip-grid li
){
  font-size:15px!important;
  line-height:1.6!important;
}

/* Compact titles: fewer arbitrary sizes, still visibly stronger than body copy. */
html body.reference-ui-v99 :is(
  .section-entry b,.home-entry-grid>a b,.home-source-grid>a b,
  .service-tool h3,.tool-card h3,.guide-v101-grid h3,
  .guide-v101-formats h3,.guide-v101-link-options h3,
  .guide-v101-steps b,.guide-v101-diagnostics b,.guide-v101-next b,
  .source-tool-card>b,.ref-format-card>strong,.ref-source-funnel b,
  .rail-quick a strong
){
  font-size:16px!important;
  line-height:1.4!important;
}

/* Facts, metadata and captions: normalized secondary tier, no microscopic text. */
html body.reference-ui-v99 :is(
  .playbook-facts dt,.playbook-facts dd,
  .home-welcome-summary b,.home-welcome-summary span,
  .playbook-risk b,.playbook-risk p,
  .guide-v101-flow b,.guide-v101-flow small,
  .guide-v101-code>b,.guide-v101-code code,.guide-v101-code dt,.guide-v101-code dd,
  .guide-v101-funnel-table b,.guide-v101-funnel-table span,.guide-v101-funnel-table small,
  .ref-metrics-row small,.ref-metrics-row span,
  .article-figure figcaption,.source-journey-card figcaption,
  .rail-tools a small,.rail-related-visual span,.rail-quick a small
){
  font-size:13px!important;
  line-height:1.5!important;
}
html body.reference-ui-v99 .playbook-facts dd{
  font-size:14px!important;
  line-height:1.45!important;
}

/* Right article rail was noticeably smaller than the rest of the interface. */
html body.reference-ui-v99 .article-aside.enhanced-rail :is(.rail-toc a,.aside-block a,.aside-block span){
  font-size:13px!important;
  line-height:1.48!important;
}
html body.reference-ui-v99 .article-aside.enhanced-rail :is(.rail-toc>b,.aside-block>b){
  font-size:13px!important;
  line-height:1.4!important;
}

/* Buttons and text links use one stable interface size. */
html body.reference-ui-v99 :is(
  .home-actions a,.article-cta-row a,.source-compare-actions a,.playbook-head-actions a,
  .playbook-official a,.service-open-link,.button-primary,.service-inline-primary,
  .section-bottom-links a,.article-exit-nav a,.next-reading a,.starter-next,
  .rail-all-tools,.bookmark-button,.saved-link
){
  font-size:14px!important;
  line-height:1.35!important;
}

/* Labels are allowed to be smaller, but no longer tiny 8–10px text. */
html body.reference-ui-v99 :is(
  .article-label,.overline,.sidebar-group-title,.playbook-card-top,
  .source-title-copy .article-label,.service-kicker,.about-nav-card-v114>span,
  .about-section-head-v114>span
){
  font-size:12px!important;
  line-height:1.35!important;
}

/* Forms should match the body copy instead of feeling visually smaller. */
html body.reference-ui-v99 :is(input,select,textarea,button){
  font-size:15px!important;
}

/* Mobile keeps the same body size; only headings scale down. */
@media(max-width:900px){
  html body.reference-ui-v99 :is(
    .article p,.article li,.article dd,
    .source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,
    .guide-v101-section>p,.guide-v101-section li,.guide-v101-section dd,
    .logic-section-v103 p,.logic-section-v103 li,.logic-section-v103 dd
  ){
    font-size:16px!important;
    line-height:1.62!important;
  }
  html body.reference-ui-v99 :is(.source-hero-shell>.lead,.academy-article-hero .lead,.article>.lead,.page-head p){
    font-size:16px!important;
    line-height:1.58!important;
  }
}


/* ======================================================================
   v119 — restore wide green mobile top bar
   ====================================================================== */
@media (max-width:900px){
  :root{--v110-mobile-header:64px!important}
  html body .site-header,
  html body.reference-ui-v99 .site-header,
  html body.theme-dark .site-header,
  html body.reference-ui-v99.theme-dark .site-header{
    background:#17493d!important;
    border-bottom:1px solid rgba(255,255,255,.12)!important;
    box-shadow:0 6px 18px rgba(10,28,22,.16)!important;
  }
  html body .site-header .header-inner,
  html body.reference-ui-v99 .ref-topbar{
    padding:0 14px!important;
    gap:10px!important;
  }
  html body .site-header .brand-logo,
  html body.reference-ui-v99 .ref-mobile-brand img{
    width:33px!important;
    height:31px!important;
    flex-basis:33px!important;
  }
  html body .site-header .brand-text b,
  html body.reference-ui-v99 .ref-mobile-brand b{
    font-size:12.8px!important;
  }
  html body .site-header .theme-toggle,
  html body .site-header .mobile-nav-toggle,
  html body.reference-ui-v99 .ref-theme-button,
  html body.reference-ui-v99 .ref-mobile-menu{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    border-radius:10px!important;
    background:rgba(0,0,0,.14)!important;
    border-color:rgba(255,255,255,.18)!important;
    color:#fff!important;
  }
}
@media (max-width:430px){
  html body .site-header .header-inner,
  html body.reference-ui-v99 .ref-topbar{padding:0 12px!important}
}

/* v120 — mobile brand is a home link */
@media (max-width:900px){
  html body.reference-ui-v99 .ref-mobile-brand{
    text-decoration:none!important;
    cursor:pointer!important;
  }
  html body.reference-ui-v99 .ref-mobile-brand:focus-visible{
    outline:2px solid rgba(255,255,255,.82)!important;
    outline-offset:3px!important;
    border-radius:8px!important;
  }
}


/* ======================================================================
   v121 — larger, darker typography
   ====================================================================== */

/* Base reading text: larger and darker in the light theme. */
html body:not(.theme-dark){
  color:#25342f!important;
}
html body:not(.theme-dark) :is(
  p,li,dd,
  .article p,.article li,.article dd,
  .source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,
  .guide-v101-section>p,.guide-v101-section li,.guide-v101-section dd,
  .logic-section-v103 p,.logic-section-v103 li,.logic-section-v103 dd,
  .section-entry p,.section-outcome p,.section-feature p,
  .library-row p,.service-tool p,.tool-card p,.about-card p,
  .playbook-card>p,.guide-v101-formats p,.guide-v101-grid p
){
  color:#35453f!important;
}
html body:not(.theme-dark) :is(
  .lead,.article>.lead,.source-hero-shell>.lead,.academy-article-hero .lead,.page-head p,
  .breadcrumbs,.article-meta,.playbook-facts dt,.rail-quick a small,
  .article-aside.enhanced-rail .rail-toc a,.article-aside.enhanced-rail .aside-block p
){
  color:#4b5b55!important;
}

/* One comfortable scale for ordinary reading text. */
html body.reference-ui-v99 :is(
  .article p,.article li,.article dd,
  .source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,
  .guide-v101-section>p,.guide-v101-section li,.guide-v101-section dd,
  .logic-section-v103 p,.logic-section-v103 li,.logic-section-v103 dd
){
  font-size:17px!important;
  line-height:1.65!important;
}
html body.reference-ui-v99 :is(
  .source-hero-shell>.lead,.academy-article-hero .lead,.article>.lead,.page-head p
){
  font-size:17px!important;
  line-height:1.62!important;
}

/* Cards and compact explanatory blocks should no longer feel tiny. */
html body.reference-ui-v99 :is(
  .section-entry p,.section-outcome p,.section-feature p,
  .home-entry-grid p,.home-source-grid p,
  .library-row p,.service-tool p,.tool-card p,.about-card p,
  .playbook-card>p,.playbook-fit-grid li,.playbook-checklist li,
  .playbook-format-list dd,.playbook-steps p,.traffic-diagnostic-list li,
  .source-tool-card-copy,.guide-v101-formats p,.guide-v101-grid p,
  .guide-v101-verdict p,.guide-v101-flow p,.related-card p
){
  font-size:15.5px!important;
  line-height:1.58!important;
}

/* Controls and side navigation: slightly larger, but still secondary. */
html body.reference-ui-v99 :is(
  .global-sidebar .sidebar-menu a,
  .sidebar-group-title,
  .article-aside.enhanced-rail .rail-toc a,
  .article-aside.enhanced-rail .aside-block a,
  .article-aside.enhanced-rail .aside-block span,
  .rail-quick a strong,.rail-quick a small,
  button,input,select,textarea,
  .article-cta-row a,.section-bottom-links a,.source-compare-actions a
){
  font-size:14.5px!important;
}

/* Keep labels readable instead of microscopic. */
html body.reference-ui-v99 :is(
  .article-label,.overline,.playbook-facts dt,.article-meta,.breadcrumbs,
  .service-kicker,.playbook-card-top,.rules-summary-grid span
){
  font-size:12px!important;
  line-height:1.4!important;
}

/* Dark theme remains bright enough against the background. */
html body.theme-dark :is(
  p,li,dd,.article p,.article li,.article dd,
  .source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,
  .section-entry p,.section-outcome p,.section-feature p,.library-row p,
  .service-tool p,.tool-card p,.about-card p,.guide-v101-formats p
){
  color:#d0d8df!important;
}
html body.theme-dark :is(
  .lead,.article>.lead,.source-hero-shell>.lead,.academy-article-hero .lead,.page-head p,
  .article-aside.enhanced-rail .rail-toc a,.rail-quick a small,.breadcrumbs,.article-meta
){
  color:#b8c3cc!important;
}

@media(max-width:900px){
  html body.reference-ui-v99 :is(
    .article p,.article li,.article dd,
    .source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,
    .guide-v101-section>p,.guide-v101-section li,.guide-v101-section dd,
    .logic-section-v103 p,.logic-section-v103 li,.logic-section-v103 dd
  ){
    font-size:17px!important;
    line-height:1.65!important;
  }
  html body.reference-ui-v99 :is(.source-hero-shell>.lead,.academy-article-hero .lead,.article>.lead,.page-head p){
    font-size:16.5px!important;
  }
  html body.reference-ui-v99 :is(.global-sidebar .sidebar-menu a,.article-aside.enhanced-rail .rail-toc a){
    font-size:15px!important;
  }
}


/* ======================================================================
   v122 — calm desktop side background without touching the reading column
   ====================================================================== */
@media (min-width:1180px){
  html body{
    position:relative;
    background-color:#f6f4ef;
  }
  html body::before,
  html body::after{
    content:"";
    position:fixed;
    top:0;
    bottom:0;
    pointer-events:none;
    z-index:0;
    opacity:1;
    background-repeat:no-repeat;
  }

  /* Narrow decorative strip between the left sidebar and the reading area. */
  html body::before{
    left:var(--academy-sidebar,246px);
    width:clamp(84px,8vw,148px);
    background:
      radial-gradient(circle at 24% 12%, rgba(40,93,77,.10) 0 16%, transparent 17%),
      radial-gradient(circle at 72% 31%, rgba(141,109,70,.10) 0 12%, transparent 13%),
      linear-gradient(180deg, rgba(31,73,61,.08), rgba(31,73,61,0) 18%),
      repeating-linear-gradient(180deg, transparent 0 18px, rgba(61,97,86,.06) 18px 19px, transparent 19px 42px),
      linear-gradient(180deg, rgba(255,255,255,.50) 0%, rgba(247,244,237,.12) 100%);
    border-right:1px solid rgba(95,112,104,.08);
  }

  /* Wider thematic strip on the right edge. */
  html body::after{
    right:0;
    width:clamp(180px,18vw,300px);
    background:
      radial-gradient(circle at 78% 12%, rgba(33,78,66,.12) 0 17%, transparent 18%),
      radial-gradient(circle at 36% 27%, rgba(149,113,73,.10) 0 11%, transparent 12%),
      radial-gradient(circle at 82% 68%, rgba(89,113,127,.10) 0 13%, transparent 14%),
      linear-gradient(135deg, rgba(255,255,255,.32) 0 28%, transparent 28% 100%),
      repeating-linear-gradient(180deg, transparent 0 26px, rgba(73,98,89,.06) 26px 27px, transparent 27px 54px),
      repeating-linear-gradient(90deg, transparent 0 38px, rgba(119,131,124,.05) 38px 39px, transparent 39px 78px),
      linear-gradient(180deg, rgba(247,244,237,.86) 0%, rgba(241,237,229,.62) 100%);
    border-left:1px solid rgba(95,112,104,.08);
  }

  /* Keep all functional layers above the decorative background. */
  html body .site-header,
  html body .global-sidebar,
  html body > main,
  html body .site-footer{
    position:relative;
    z-index:1;
  }

  /* Dark theme: same idea, but much softer and darker. */
  html body.theme-dark{
    background-color:#0f1419;
  }
  html body.theme-dark::before{
    background:
      radial-gradient(circle at 24% 12%, rgba(74,157,128,.11) 0 16%, transparent 17%),
      radial-gradient(circle at 72% 31%, rgba(154,123,84,.10) 0 12%, transparent 13%),
      linear-gradient(180deg, rgba(22,34,41,.74), rgba(12,18,23,.20) 22%),
      repeating-linear-gradient(180deg, transparent 0 18px, rgba(93,125,113,.08) 18px 19px, transparent 19px 42px),
      linear-gradient(180deg, rgba(18,24,30,.78) 0%, rgba(12,18,23,.58) 100%);
    border-right:1px solid rgba(99,122,114,.10);
  }
  html body.theme-dark::after{
    background:
      radial-gradient(circle at 78% 12%, rgba(72,160,128,.12) 0 17%, transparent 18%),
      radial-gradient(circle at 36% 27%, rgba(160,124,82,.10) 0 11%, transparent 12%),
      radial-gradient(circle at 82% 68%, rgba(100,133,152,.10) 0 13%, transparent 14%),
      linear-gradient(135deg, rgba(255,255,255,.02) 0 28%, transparent 28% 100%),
      repeating-linear-gradient(180deg, transparent 0 26px, rgba(98,126,115,.08) 26px 27px, transparent 27px 54px),
      repeating-linear-gradient(90deg, transparent 0 38px, rgba(88,106,116,.07) 38px 39px, transparent 39px 78px),
      linear-gradient(180deg, rgba(18,24,30,.78) 0%, rgba(14,19,25,.60) 100%);
    border-left:1px solid rgba(99,122,114,.10);
  }
}


/* ======================================================================
   v123 — article declutter and stronger editorial structure
   ====================================================================== */

/* ---------- Regular articles: sections are chapters, not cards ---------- */
body.content-system-v103 .structured-article-v103 .logic-section-v103,
body.content-system-v103 .structured-article-v103 .academy-content-section{
  margin:0!important;
  padding:30px 0 31px!important;
  border:0!important;
  border-top:1px solid #dfe5e1!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.content-system-v103 .structured-article-v103 .service-inline + .logic-section-v103,
body.content-system-v103 .structured-article-v103 .academy-article-hero + .logic-section-v103{
  border-top-color:#cfd9d4!important;
}
body.content-system-v103 .structured-article-v103 .logic-section-v103>h2{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  align-items:start!important;
  gap:12px!important;
  margin:0 0 13px!important;
  font-size:24px!important;
  line-height:1.25!important;
}
body.content-system-v103 .structured-article-v103 .logic-index-v103{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  padding:3px 0 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#6f8e82!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
}
body.content-system-v103 .structured-article-v103 .logic-section-v103 :is(p,li,dd){
  font-size:17px!important;
  line-height:1.72!important;
}
body.content-system-v103 .structured-article-v103 .logic-section-v103 :is(ul,ol){
  margin:13px 0 4px!important;
  padding-left:23px!important;
}
body.content-system-v103 .structured-article-v103 .logic-section-v103 li+li{margin-top:7px!important}

/* Only warnings stay visually boxed. Action/analysis sections use a restrained marker. */
body.content-system-v103 .structured-article-v103 :is(.logic-explain-v103,.logic-analysis-v103,.logic-action-v103){
  background:transparent!important;
}
body.content-system-v103 .structured-article-v103 .logic-action-v103>h2::after{
  content:"Практика";
  align-self:center;
  justify-self:start;
  margin-left:7px;
  padding:3px 7px;
  border-radius:999px;
  background:#edf6f2;
  color:#31705a;
  font-size:10px;
  font-weight:800;
  letter-spacing:.04em;
}
body.content-system-v103 .structured-article-v103 .logic-action-v103>h2{
  grid-template-columns:34px minmax(0,1fr) auto!important;
}
body.content-system-v103 .structured-article-v103 .logic-warning-v103{
  margin:20px 0!important;
  padding:20px 22px!important;
  border:1px solid #e6d8c3!important;
  border-radius:10px!important;
  background:#fbf6ec!important;
}

/* Inline service notes become editorial notes instead of another card. */
body .article .service-inline{
  margin:20px 0 8px!important;
  padding:15px 0 15px 18px!important;
  border:0!important;
  border-left:3px solid #9db8ad!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body .article .service-inline-actions{margin-top:8px!important}
body .article .service-inline-actions a{
  display:inline!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

/* ---------- Source playbooks: one section rhythm, fewer nested boxes ---------- */
body .source-playbook-article .source-hero-shell{
  margin-bottom:4px!important;
  padding-bottom:24px!important;
  border-bottom:1px solid #d8e1dc!important;
}
body .source-playbook-article .guide-v101-section,
body.reference-ui-v99 .source-playbook-article .guide-v101-section{
  margin:0!important;
  padding:34px 0 36px!important;
  border:0!important;
  border-top:1px solid #dfe6e2!important;
  background:transparent!important;
}
body .source-playbook-article .guide-v101-section:first-of-type{border-top:0!important}
body .source-playbook-article .guide-v101-section>h2{
  margin:0 0 14px!important;
  font-size:24px!important;
  line-height:1.28!important;
}
body .source-playbook-article .guide-v101-section>p{
  max-width:860px!important;
  margin:0 0 14px!important;
  font-size:17px!important;
  line-height:1.72!important;
}

/* Facts in the hero are a data strip, not four mini-cards. */
body .source-playbook-article .playbook-facts{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  margin:20px 0 15px!important;
  border-top:1px solid #dbe3df!important;
  border-bottom:1px solid #dbe3df!important;
}
body .source-playbook-article .playbook-facts>div{
  min-height:0!important;
  padding:13px 16px!important;
  border:0!important;
  border-right:1px solid #e2e7e4!important;
  border-radius:0!important;
  background:transparent!important;
}
body .source-playbook-article .playbook-facts>div:last-child{border-right:0!important}
body .source-playbook-article .playbook-facts dt{font-size:11px!important}
body .source-playbook-article .playbook-facts dd{font-size:14px!important;line-height:1.42!important}

/* Checklists: simple structured list with separators. */
body .source-playbook-page .playbook-checklist,
body .source-playbook-article .playbook-checklist{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0 28px!important;
  margin:17px 0 29px!important;
  border-top:1px solid #dfe6e2!important;
}
body .source-playbook-page .playbook-checklist li,
body .source-playbook-article .playbook-checklist li{
  min-height:0!important;
  margin:0!important;
  padding:14px 4px 14px 32px!important;
  border:0!important;
  border-bottom:1px solid #e5eae7!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:15.5px!important;
  line-height:1.58!important;
}
body .source-playbook-page .playbook-checklist li:before,
body .source-playbook-article .playbook-checklist li:before{
  left:4px!important;
  top:16px!important;
  width:18px!important;
  height:18px!important;
  background:#eaf3ef!important;
  border-radius:50%!important;
}

/* Generic grids: grouped data with separators instead of isolated floating cards. */
body .source-playbook-article .guide-v101-grid{
  gap:0!important;
  margin-top:18px!important;
  border-top:1px solid #dfe6e2!important;
  border-bottom:1px solid #dfe6e2!important;
}
body .source-playbook-article .guide-v101-grid>div{
  padding:17px 16px!important;
  border:0!important;
  border-right:1px solid #e3e8e5!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body .source-playbook-article .guide-v101-grid>div:last-child{border-right-color:transparent!important}
body .source-playbook-article .guide-v101-grid h3{font-size:15.5px!important}
body .source-playbook-article .guide-v101-grid p{font-size:14px!important;line-height:1.58!important}

/* Steps are a single numbered sequence, not a wall of cards. */
body .source-playbook-article .guide-v101-steps,
body .source-playbook-page .playbook-steps{
  display:block!important;
  margin:18px 0 28px!important;
  border-top:1px solid #dfe6e2!important;
}
body .source-playbook-article .guide-v101-steps li,
body .source-playbook-page .playbook-steps>li{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  gap:14px!important;
  min-height:0!important;
  padding:16px 0!important;
  border:0!important;
  border-bottom:1px solid #e3e8e5!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body .source-playbook-article .guide-v101-steps li>span,
body .source-playbook-page .playbook-steps>li>span:first-child{
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  background:#e8f3ee!important;
  color:#207254!important;
  font-size:12px!important;
}
body .source-playbook-article .guide-v101-steps b{font-size:15.5px!important}
body .source-playbook-article .guide-v101-steps p{font-size:14.5px!important;line-height:1.55!important}

/* Timelines and funnel cells become one continuous structured table. */
body .source-playbook-article :is(.guide-v101-timeline,.guide-v101-funnel-table){
  border:1px solid #dfe6e2!important;
  border-radius:8px!important;
  background:transparent!important;
  box-shadow:none!important;
}
body .source-playbook-article .guide-v101-timeline>div,
body .source-playbook-article .guide-v101-funnel-table>div{
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body .source-playbook-article .guide-v101-funnel-table{gap:0!important}
body .source-playbook-article .guide-v101-funnel-table>div{border:0!important;border-right:1px solid #e1e7e4!important}
body .source-playbook-article .guide-v101-funnel-table>div:last-child{border-right:0!important}

/* Comparisons remain distinct because their contrast carries meaning. */
body .source-playbook-article .guide-v101-verdict{box-shadow:none!important}

/* Format cards stay visual, but quieter and less bulky. */
body .source-playbook-article .guide-v101-formats{gap:10px!important}
body .source-playbook-article .guide-v101-formats article{
  border:1px solid #dfe5e2!important;
  border-radius:8px!important;
  box-shadow:none!important;
}
body .source-playbook-article .guide-v101-format-art{height:76px!important}
body .source-playbook-article .guide-v101-formats h3{font-size:14.5px!important}
body .source-playbook-article .guide-v101-formats p{font-size:13px!important;line-height:1.52!important}

/* Diagnostic and next links become flat rows. */
body .source-playbook-article :is(.guide-v101-diagnostics,.guide-v101-next>div){gap:0!important;border-top:1px solid #dfe6e2!important}
body .source-playbook-article :is(.guide-v101-diagnostics a,.guide-v101-next a){
  padding:15px 14px!important;
  border:0!important;
  border-bottom:1px solid #e3e8e5!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* ---------- Right rail: one quiet utility panel ---------- */
body .article-aside.enhanced-rail{
  padding:17px 18px!important;
  border:1px solid #dbe3df!important;
  border-radius:10px!important;
  background:#f7f9f7!important;
  box-shadow:none!important;
}
body .article-aside.enhanced-rail .aside-block,
body .article-aside.enhanced-rail :is(.rail-card,.rail-tools){
  margin:0!important;
  padding:0 0 16px!important;
  border:0!important;
  border-bottom:1px solid #dfe5e2!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body .article-aside.enhanced-rail .aside-block:last-child{padding-bottom:0!important;border-bottom:0!important}
body .article-aside.enhanced-rail .aside-block+.aside-block{margin-top:16px!important;padding-top:0!important}
body .article-aside.enhanced-rail .rail-toc ol{margin-bottom:0!important}
body .article-aside.enhanced-rail .rail-toc li{margin:7px 0!important}
body .article-aside.enhanced-rail .rail-toc a{font-size:14px!important;line-height:1.4!important}

/* ---------- Bottom navigation: continuation first, utilities second ---------- */
body .article .related-reading{
  margin:26px 0 0!important;
  padding:27px 0 0!important;
  border:0!important;
  border-top:2px solid #d5dfda!important;
  background:transparent!important;
}
body .article .related-primary{
  padding:15px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
body .article .related-secondary{
  padding:12px 0 0!important;
  border-top:1px solid #e1e6e3!important;
  background:transparent!important;
}
body .article .article-exit-nav{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px 18px!important;
  margin:24px 0 0!important;
  padding:18px 0 0!important;
  border-top:1px solid #e0e6e3!important;
  background:transparent!important;
}
body .article .article-exit-nav a{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:13.5px!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

/* ---------- Dark theme mirrors the same flat hierarchy ---------- */
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-section-v103,
html body.theme-dark.content-system-v103 .structured-article-v103 .academy-content-section,
html body.theme-dark .source-playbook-article .guide-v101-section{
  background:transparent!important;
  border-color:#2a333c!important;
}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-index-v103{color:#8fb6a8!important}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-action-v103>h2::after{
  background:#1b2d27!important;color:#91d6bb!important
}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-warning-v103{
  background:#211f1b!important;border-color:#514735!important
}
html body.theme-dark .article .service-inline{border-left-color:#4b665b!important;background:transparent!important}
html body.theme-dark .source-playbook-article .playbook-facts,
html body.theme-dark .source-playbook-page .playbook-checklist,
html body.theme-dark .source-playbook-article .playbook-checklist,
html body.theme-dark .source-playbook-article .guide-v101-grid,
html body.theme-dark .source-playbook-article .guide-v101-steps,
html body.theme-dark .source-playbook-page .playbook-steps,
html body.theme-dark .source-playbook-article :is(.guide-v101-diagnostics,.guide-v101-next>div){
  border-color:#2d3740!important;
}
html body.theme-dark .source-playbook-article :is(.playbook-facts>div,.playbook-checklist li,.guide-v101-grid>div,.guide-v101-steps li,.playbook-steps>li,.guide-v101-diagnostics a,.guide-v101-next a,.guide-v101-funnel-table>div,.guide-v101-timeline>div){
  background:transparent!important;
  border-color:#2a333c!important;
}
html body.theme-dark .article-aside.enhanced-rail{
  background:#151a20!important;
  border-color:#2c3540!important;
}
html body.theme-dark .article-aside.enhanced-rail .aside-block{background:transparent!important;border-color:#2c3540!important}
html body.theme-dark .article :is(.related-reading,.related-primary,.related-secondary,.article-exit-nav,.article-exit-nav a){
  background:transparent!important;
  border-color:#2b343d!important;
}

@media(max-width:900px){
  body.content-system-v103 .structured-article-v103 .logic-section-v103,
  body.content-system-v103 .structured-article-v103 .academy-content-section,
  body .source-playbook-article .guide-v101-section{
    padding:25px 0 27px!important;
  }
  body.content-system-v103 .structured-article-v103 .logic-section-v103>h2{
    grid-template-columns:30px minmax(0,1fr)!important;
    font-size:22px!important;
  }
  body.content-system-v103 .structured-article-v103 .logic-action-v103>h2{grid-template-columns:30px minmax(0,1fr)!important}
  body.content-system-v103 .structured-article-v103 .logic-action-v103>h2::after{display:none!important}
  body .source-playbook-article .playbook-facts{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body .source-playbook-article .playbook-facts>div:nth-child(2){border-right:0!important}
  body .source-playbook-article .playbook-facts>div:nth-child(-n+2){border-bottom:1px solid #e2e7e4!important}
  body .source-playbook-page .playbook-checklist,
  body .source-playbook-article .playbook-checklist{grid-template-columns:1fr!important;gap:0!important}
  body .source-playbook-article .guide-v101-grid{grid-template-columns:1fr!important}
  body .source-playbook-article .guide-v101-grid>div{border-right:0!important;border-bottom:1px solid #e3e8e5!important}
  body .source-playbook-article .guide-v101-grid>div:last-child{border-bottom:0!important}
}


/* ======================================================================
   v124 — larger reading scale after article declutter
   ====================================================================== */

/* Global copy: one step larger, without flattening heading hierarchy. */
html body{
  font-size:17px!important;
}

/* Main article copy. */
html body :is(
  .article p,.article li,.article dd,
  .source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,
  .guide-v101-section>p,.guide-v101-section li,.guide-v101-section dd,
  .logic-section-v103 p,.logic-section-v103 li,.logic-section-v103 dd
){
  font-size:18px!important;
  line-height:1.66!important;
}

/* Introductory copy should be only slightly larger than body text. */
html body :is(
  .source-hero-shell>.lead,.academy-article-hero .lead,.article>.lead,.page-head p
){
  font-size:18.5px!important;
  line-height:1.62!important;
}

/* Cards, explanations and structured article rows. */
html body :is(
  .section-entry p,.section-outcome p,.section-feature p,
  .home-entry-grid p,.home-source-grid p,.library-row p,
  .service-tool p,.tool-card p,.about-card p,.playbook-card>p,
  .playbook-fit-grid li,.playbook-checklist li,.playbook-format-list dd,
  .playbook-steps p,.traffic-diagnostic-list li,.source-tool-card-copy,
  .guide-v101-formats p,.guide-v101-grid p,.guide-v101-verdict p,
  .guide-v101-flow p,.related-card p
){
  font-size:16.5px!important;
  line-height:1.6!important;
}

/* v123 flattened blocks had their own smaller values — normalize them too. */
html body .source-playbook-article .playbook-facts dt{font-size:12px!important}
html body .source-playbook-article .playbook-facts dd{font-size:16px!important;line-height:1.48!important}
html body .source-playbook-article .guide-v101-grid h3{font-size:17px!important}
html body .source-playbook-article .guide-v101-grid p{font-size:16.5px!important;line-height:1.6!important}
html body .source-playbook-article .guide-v101-steps b{font-size:17px!important}
html body .source-playbook-article .guide-v101-steps p{font-size:16.5px!important;line-height:1.58!important}
html body .source-playbook-article .guide-v101-formats h3{font-size:16px!important}
html body .source-playbook-article .guide-v101-formats p{font-size:15.5px!important;line-height:1.56!important}

/* Tables should no longer be noticeably smaller than surrounding copy. */
html body .article table,
html body .rules-table,
html body .compare-table,
html body .source-compare-table{
  font-size:15.5px!important;
}
html body .article :is(th,td){font-size:15px!important;line-height:1.5!important}

/* Navigation and utility text. */
html body :is(
  .global-sidebar .sidebar-menu a,
  .article-aside.enhanced-rail .rail-toc a,
  .article-aside.enhanced-rail .aside-block a,
  .article-aside.enhanced-rail .aside-block span,
  .rail-quick a strong,.rail-quick a small,
  .article-cta-row a,.section-bottom-links a,.source-compare-actions a,
  button,input,select,textarea
){
  font-size:15.5px!important;
}
html body .article-aside.enhanced-rail .rail-toc a{
  font-size:15.5px!important;
  line-height:1.46!important;
}
html body .article .article-exit-nav a{font-size:15px!important}

/* Small labels stay secondary but readable. */
html body :is(
  .article-label,.overline,.playbook-facts dt,.article-meta,.breadcrumbs,
  .service-kicker,.playbook-card-top,.rules-summary-grid span,.sidebar-group-title
){
  font-size:12.5px!important;
  line-height:1.42!important;
}

@media(max-width:900px){
  html body{font-size:16.5px!important}
  html body :is(
    .article p,.article li,.article dd,
    .source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,
    .guide-v101-section>p,.guide-v101-section li,.guide-v101-section dd,
    .logic-section-v103 p,.logic-section-v103 li,.logic-section-v103 dd
  ){
    font-size:17.5px!important;
    line-height:1.64!important;
  }
  html body :is(.source-hero-shell>.lead,.academy-article-hero .lead,.article>.lead,.page-head p){
    font-size:17.5px!important;
  }
  html body :is(
    .section-entry p,.section-outcome p,.section-feature p,.library-row p,
    .service-tool p,.tool-card p,.about-card p,.playbook-checklist li,
    .playbook-steps p,.traffic-diagnostic-list li,.guide-v101-grid p
  ){
    font-size:16px!important;
  }
}


/* ======================================================================
   v125 — make the article TOC rail more compact again
   ====================================================================== */
html body .article-aside.enhanced-rail .rail-toc li{margin:5px 0!important}
html body .article-aside.enhanced-rail .rail-toc a{
  font-size:12.6px!important;
  line-height:1.38!important;
  gap:6px!important;
  padding:4px 0!important;
}
html body .article-aside.enhanced-rail .rail-toc li a:before{
  font-size:9px!important;
}
html body .article-aside.enhanced-rail .aside-block>b{
  font-size:13px!important;
  margin-bottom:10px!important;
}


/* ======================================================================
   v126 — proportional chips, aligned text, steadier article cards
   ====================================================================== */

/* Article metadata chips: equal height and centered rhythm. */
html body .article-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:10px!important;
  padding:12px 0 16px!important;
}
html body .article-meta > *{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  min-height:38px!important;
  padding:8px 12px!important;
  border:1px solid #d7ddd9!important;
  border-radius:9px!important;
  line-height:1.25!important;
  background:#fbfcfa!important;
  box-sizing:border-box!important;
  text-align:left!important;
}
html body .article-meta > * b,
html body .article-meta > * strong{
  line-height:1.2!important;
}
html body.theme-dark .article-meta > *{
  background:#191e25!important;
  border-color:#2b333d!important;
}

/* Simple article metric / measurement lists: consistent cards and aligned copy. */
html body .playbook-measurement ul,
html body .playbook-fit-plain ul,
html body .field-case-plain ul{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  margin:14px 0 20px!important;
  padding:0!important;
  list-style:none!important;
}
html body .playbook-measurement li,
html body .playbook-fit-plain li,
html body .field-case-plain li{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  min-height:78px!important;
  margin:0!important;
  padding:14px 14px 15px!important;
  border:1px solid #dbe2dd!important;
  border-radius:10px!important;
  background:#fbfcfa!important;
  box-sizing:border-box!important;
  text-align:left!important;
  line-height:1.5!important;
  color:#35413c!important;
  text-wrap:pretty!important;
}
html body.theme-dark .playbook-measurement li,
html body.theme-dark .playbook-fit-plain li,
html body.theme-dark .field-case-plain li{
  background:#191e25!important;
  border-color:#2b333d!important;
  color:#edf1f4!important;
}

/* Cards and grid items: keep content on one visual baseline. */
html body :is(
  .section-entry,.section-outcome,.tool-card,.service-tool,.about-card,
  .guide-v101-grid>div,.guide-v101-formats article,.source-tool-card,
  .traffic-next a,.traffic-hub-basics>div,.playbook-card,.next-reading a
){
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  text-align:left!important;
}
html body :is(
  .section-entry b,.section-entry p,
  .guide-v101-grid h3,.guide-v101-grid p,
  .guide-v101-formats h3,.guide-v101-formats p,
  .source-tool-card>b,.source-tool-card-copy,
  .playbook-card h2,.playbook-card p,
  .next-reading b,.next-reading span
){
  width:100%!important;
  text-align:left!important;
}

/* Avoid narrow last columns / floating single items in 3-col metric blocks. */
@media (max-width:1160px){
  html body .playbook-measurement ul,
  html body .playbook-fit-plain ul,
  html body .field-case-plain ul{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media (max-width:720px){
  html body .playbook-measurement ul,
  html body .playbook-fit-plain ul,
  html body .field-case-plain ul{
    grid-template-columns:1fr!important;
  }
  html body .playbook-measurement li,
  html body .playbook-fit-plain li,
  html body .field-case-plain li{
    min-height:0!important;
  }
  html body .article-meta > *{
    min-height:36px!important;
  }
}


/* ======================================================================
   v127 — prettier numbering chips across structured articles
   ====================================================================== */

/* Numbered section headings in structured guides. */
body.content-system-v103 .structured-article-v103 .logic-section-v103>h2{
  grid-template-columns:46px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
}
body.content-system-v103 .structured-article-v103 .logic-index-v103{
  display:grid!important;
  place-items:center!important;
  width:40px!important;
  min-width:40px!important;
  height:28px!important;
  padding:0 8px!important;
  margin-top:2px!important;
  border:1px solid #d9e7e0!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#f4faf7 0%,#e7f2ec 100%)!important;
  color:#1a7054!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88)!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
  line-height:1!important;
}
body.content-system-v103 .structured-article-v103 .logic-warning-v103 .logic-index-v103{
  border-color:#ead7b7!important;
  background:linear-gradient(180deg,#fbf4e7 0%,#f2e5cf 100%)!important;
  color:#8c6227!important;
}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-index-v103{
  border-color:#365147!important;
  background:linear-gradient(180deg,#1c2b26 0%,#16231f 100%)!important;
  color:#8dd2b8!important;
  box-shadow:none!important;
}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-warning-v103 .logic-index-v103{
  border-color:#5b4a33!important;
  background:linear-gradient(180deg,#2b241b 0%,#241f17 100%)!important;
  color:#d9bd8c!important;
}

/* Step numbers and numbered mini-cards: one calm visual language. */
html body :is(
  .source-playbook-page .playbook-steps>li>span:first-child,
  .source-playbook-article .guide-v101-steps li>span,
  .platform-setup li>span,
  .guide-v101-grid>div>span
){
  display:grid!important;
  place-items:center!important;
  min-width:34px!important;
  height:28px!important;
  padding:0 9px!important;
  margin:0!important;
  border:1px solid #dbe7e1!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#f3faf6 0%,#e8f3ee 100%)!important;
  color:#166d50!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88)!important;
  font-size:10.5px!important;
  font-weight:850!important;
  letter-spacing:.06em!important;
  line-height:1!important;
}
html body .guide-v101-grid>div>span{
  width:max-content!important;
  margin-bottom:10px!important;
}
html body .platform-setup li>span,
html body .source-playbook-page .playbook-steps>li>span:first-child,
html body .source-playbook-article .guide-v101-steps li>span{
  width:34px!important;
  padding:0!important;
}
html body.theme-dark :is(
  .source-playbook-page .playbook-steps>li>span:first-child,
  .source-playbook-article .guide-v101-steps li>span,
  .platform-setup li>span,
  .guide-v101-grid>div>span
){
  border-color:#355045!important;
  background:linear-gradient(180deg,#1b2a25 0%,#16231f 100%)!important;
  color:#8bd1b6!important;
  box-shadow:none!important;
}

@media (max-width:900px){
  body.content-system-v103 .structured-article-v103 .logic-section-v103>h2{
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:12px!important;
  }
  body.content-system-v103 .structured-article-v103 .logic-index-v103{
    width:36px!important;
    min-width:36px!important;
    height:26px!important;
    font-size:10px!important;
  }
}


/* v128 fix: logic section subheadings without index should not collapse */
body.content-system-v103 .structured-article-v103 .logic-section-v103>h2{
  display:flex!important;
  align-items:flex-start!important;
  gap:14px!important;
}
body.content-system-v103 .structured-article-v103 .logic-section-v103>h2 > *{
  min-width:0!important;
}
body.content-system-v103 .structured-article-v103 .logic-section-v103>h2:not(:has(.logic-index-v103)){
  display:block!important;
}


/* ======================================================================
   v129 — larger type sitewide + fix broken comparison table
   ====================================================================== */

/* Sitewide type increase, not only traffic-source articles. */
html body{
  font-size:17px!important;
  line-height:1.74!important;
}
html body :is(
  .article p,.article li,.article dd,.article figcaption,
  .page-head p,.home-intro p,.home-lead,
  .library-row p,.library-empty p,
  .about-main p,.about-card p,.about-quick-grid p,
  .service-card p,.service-tool p,.service-inline p,
  .tool-card p,.big-tool-head p,.tool-source-note,.big-tool-foot,
  .diagnostic-result p,.compare-result p,.source-compare-note p,
  .playbook-card>p,.playbook-risk p,.playbook-steps p,
  .platform-setup p,.traffic-principle p,.traffic-directory article>p,
  .related-primary>p,.field-case>p,.home-search-card>p:not(.home-search-label),
  .playbook-format-grid p,.note-card p,.source-tool-card-copy,
  .article-aside.enhanced-rail .rail-toc a,
  .article-aside.enhanced-rail .aside-block a,
  .article-aside.enhanced-rail .aside-block span,
  .global-sidebar .sidebar-menu a,.sidebar-bottom a,.sidebar-partner-cta small,
  .sidebar-partner-rules,.source-compare-row>div,.compare-table>div,
  .problem-result li,.problem-result ol,.problem-options button
){
  font-size:17px!important;
  line-height:1.68!important;
}
html body .article .lead,
html body .home-intro p,
html body .home-lead,
html body .about-main p{
  font-size:19px!important;
  line-height:1.72!important;
}
html body :is(
  button,input,select,textarea,
  .source-compare-actions a,.article-exit-nav a,.next-reading a,
  .bookmark-button,.saved-link,.sidebar-search input,
  .tool-form-grid label,.compare-side label,.problem-source-row label,
  .source-compare-picker label
){
  font-size:16.5px!important;
}
html body .article-meta > *,
html body .breadcrumbs,
html body .article-label,
html body .aside-block>b,
html body .sidebar-group-title{
  font-size:14px!important;
}

/* Fix the broken comparison result table. Generic mobile overflow rules
   had overridden the grid display and collapsed the content into a column. */
html body .compare-table{
  display:grid!important;
  width:100%!important;
  max-width:100%!important;
  grid-template-columns:minmax(180px,1.2fr) minmax(120px,1fr) minmax(120px,1fr)!important;
  margin-top:12px!important;
  overflow:hidden!important;
  border:1px solid #ddd5c8!important;
  border-radius:8px!important;
  align-items:stretch!important;
}
html body .compare-table > div{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-height:44px!important;
  padding:12px 14px!important;
  border-bottom:1px solid #e4ddd2!important;
  box-sizing:border-box!important;
}
html body .compare-table > div:nth-child(-n+3){
  background:#ece5d9!important;
  color:#173b32!important;
  font-weight:800!important;
}
html body .compare-table > div:nth-child(3n+1):not(:nth-child(-n+3)){
  background:#f0ebe2!important;
  color:#5a625d!important;
  font-weight:500!important;
}
html body .compare-table > div:not(:nth-child(3n+1)){
  justify-content:flex-end!important;
  text-align:right!important;
  color:#273d36!important;
  font-weight:700!important;
  background:#fff!important;
}
html body .compare-table > div:nth-last-child(-n+3){
  border-bottom:0!important;
}
html body.theme-dark .compare-table{
  border-color:#36404a!important;
}
html body.theme-dark .compare-table > div:nth-child(-n+3),
html body.theme-dark .compare-table > div:nth-child(3n+1):not(:nth-child(-n+3)){
  background:#1d232b!important;
  color:#edf2f5!important;
  border-color:#36404a!important;
}
html body.theme-dark .compare-table > div:not(:nth-child(3n+1)){
  background:#171c22!important;
  color:#edf2f5!important;
  border-color:#2f3843!important;
}

@media (max-width:720px){
  html body .compare-table{
    grid-template-columns:minmax(130px,1.1fr) minmax(92px,1fr) minmax(92px,1fr)!important;
  }
  html body .compare-table > div{
    min-height:40px!important;
    padding:10px 11px!important;
    font-size:15px!important;
  }
}


/* ======================================================================
   v130 — repair broken badges and hero label overlap after type increase
   ====================================================================== */

/* Service/meta labels should stay compact. The previous sitewide increase made
   some pills collide with headings. */
html body .article-label,
html body .breadcrumbs,
html body .article-meta > *,
html body .aside-block > b,
html body .sidebar-group-title{
  font-size:12px!important;
}

/* Keep heading labels and section markers on one line. */
html body :is(
  .academy-article-hero-copy .article-label,
  .source-title-copy .article-label,
  .partner-specific-box > span,
  .rules-summary-grid span,
  .geo-directory-head > span
){
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  line-height:1.1!important;
}

/* Restore the intended pill look for article/partner labels and make sure they
   do not collide with the title text. */
html body :is(
  .academy-article-hero-copy .article-label,
  .source-title-copy .article-label,
  .partner-specific-box > span
){
  margin:0 0 10px!important;
  padding:7px 12px!important;
  border:1px solid #d8c7a7!important;
  border-radius:999px!important;
  background:#f5eddf!important;
  color:#8a6a43!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
html body.theme-dark :is(
  .academy-article-hero-copy .article-label,
  .source-title-copy .article-label,
  .partner-specific-box > span
){
  background:#1e242c!important;
  border-color:#38424d!important;
  color:#d8c7a6!important;
}
html body :is(.academy-article-hero-copy,.source-title-copy,.partner-specific-box){
  min-width:0!important;
}
html body :is(.academy-article-hero-copy h1,.source-title-copy h1,.partner-specific-box h2){
  display:block!important;
  clear:both!important;
  margin-top:0!important;
}

/* The "Практика" badge in structured sections must not break letter-by-letter. */
body.content-system-v103 .structured-article-v103 .logic-action-v103>h2::after{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:max-content!important;
  padding:5px 10px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  line-height:1!important;
}

@media (max-width:760px){
  body.content-system-v103 .structured-article-v103 .logic-action-v103>h2{
    grid-template-columns:34px minmax(0,1fr)!important;
  }
  body.content-system-v103 .structured-article-v103 .logic-action-v103>h2::after{
    grid-column:2!important;
    justify-self:start!important;
    margin:6px 0 0!important;
  }
}


/* ======================================================================
   v131 — long figure text should not sit in a narrow side column
   ====================================================================== */

/* Captions with a noticeable amount of text become unreadable when forced
   into a narrow right column. Use a vertical layout for compact article
   figures on desktop too: image first, explanation below. */
html body .article-page .article-figure.compact:not(.source-journey-card){
  display:block!important;
  margin:14px 0 8px!important;
  border:1px solid #dfe7e2!important;
  border-radius:10px!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:none!important;
}
html body .article-page .article-figure.compact:not(.source-journey-card) > img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:430px!important;
  object-fit:contain!important;
  padding:14px!important;
  background:#f7f9f7!important;
  border-radius:0!important;
}
html body .article-page .article-figure.compact:not(.source-journey-card) > figcaption{
  display:block!important;
  padding:14px 16px 16px!important;
  border:0!important;
  border-top:1px solid #e2e9e5!important;
  color:#4d5c56!important;
  font-size:15px!important;
  line-height:1.64!important;
}
html body .article-page .article-figure.compact:not(.source-journey-card) > figcaption strong{
  display:block!important;
  margin:0 0 6px!important;
  color:#1f4035!important;
  font-size:16px!important;
  line-height:1.35!important;
}
html body.theme-dark .article-page .article-figure.compact:not(.source-journey-card){
  background:#151a20!important;
  border-color:#2d3640!important;
}
html body.theme-dark .article-page .article-figure.compact:not(.source-journey-card) > img{
  background:#12171d!important;
}
html body.theme-dark .article-page .article-figure.compact:not(.source-journey-card) > figcaption{
  border-top-color:#2d3640!important;
  color:#d7dde2!important;
}
html body.theme-dark .article-page .article-figure.compact:not(.source-journey-card) > figcaption strong{
  color:#f1f5f7!important;
}

/* ======================================================================
   v132 — final visual and usability pass
   ====================================================================== */
:root{--v132-ink:#203b32;--v132-green:#17493d;--v132-paper:#fffdf8;--v132-line:#dce4df;--v132-shadow:0 12px 34px rgba(29,52,44,.08)}
html{scroll-behavior:smooth}
html body{color:var(--v132-ink)!important;background-color:#f4f2ec!important}
html body :is(h1,h2,h3,p,li,figcaption){text-wrap:pretty}
html body :is(section,[id]){scroll-margin-top:92px}
html body :is(a,button,input,select,textarea):focus-visible{outline:3px solid rgba(25,129,91,.55)!important;outline-offset:3px!important}
html body :is(a,button,.playbook-card,.home-source-grid>a,.home-entry-grid>a){transition:color .16s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease!important}

html body.reference-ui-v99 main:not(.home-page){background:var(--v132-paper)!important}
html body.reference-ui-v99 :is(.article,.source-playbook-article,.section-landing,.library-page){min-width:0!important}
html body.reference-ui-v99 :is(.article h1,.source-playbook-article h1,.page-head h1){color:#173a30!important;letter-spacing:-.025em!important;line-height:1.1!important}
html body.reference-ui-v99 :is(.article h2,.source-playbook-article h2,.home-page h2){color:#1b4035!important;letter-spacing:-.014em!important}
html body.reference-ui-v99 :is(.article p,.article li,.article dd,.article figcaption,.source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,.guide-v101-section>p,.guide-v101-section li,.guide-v101-section dd,.logic-section-v103 p,.logic-section-v103 li,.logic-section-v103 dd){font-size:17px!important;line-height:1.68!important}
html body.reference-ui-v99 :is(.source-hero-shell>.lead,.academy-article-hero .lead,.article>.lead,.page-head p){max-width:78ch!important;color:#4c5e57!important;font-size:18px!important;line-height:1.62!important}
html body.reference-ui-v99 :is(.section-entry p,.section-outcome p,.section-feature p,.home-entry-grid p,.home-source-grid p,.library-row p,.service-tool p,.tool-card p,.about-card p,.playbook-card>p,.playbook-fit-grid li,.playbook-checklist li,.playbook-format-list dd,.playbook-steps p,.traffic-diagnostic-list li,.source-tool-card-copy,.guide-v101-formats p,.guide-v101-grid p,.guide-v101-verdict p,.guide-v101-flow p,.related-card p){font-size:15.8px!important;line-height:1.62!important}

html body.reference-ui-v99 main.home-page .home-welcome{background:radial-gradient(circle at 82% 18%,rgba(208,183,128,.16),transparent 32%),linear-gradient(135deg,#f9f7f1 0%,#fffdf8 54%,#f0f6f2 100%)!important;border-bottom:1px solid #dfe6e1!important}
html body.reference-ui-v99 main.home-page .home-welcome-grid{align-items:start!important;gap:clamp(28px,4vw,58px)!important}
html body.reference-ui-v99 main.home-page .home-welcome h1{max-width:760px!important;color:#143b30!important;font-size:clamp(42px,4.25vw,66px)!important;line-height:1.01!important;letter-spacing:-.045em!important}
html body.reference-ui-v99 main.home-page .home-lead{max-width:760px!important;color:#445951!important;font-size:18px!important;line-height:1.66!important}
html body.reference-ui-v99 .home-welcome-summary{border-color:#d9e2dd!important;background:rgba(255,255,255,.48)!important;box-shadow:none!important}
html body.reference-ui-v99 .home-welcome-summary>div{border-color:#dde5e0!important}
html body.reference-ui-v99 .home-search-card{border:1px solid #d5dfda!important;border-radius:14px!important;background:rgba(255,253,248,.94)!important;box-shadow:var(--v132-shadow)!important}
html body.reference-ui-v99 .home-main-search input{min-width:0!important;min-height:48px!important;border-color:#cad7d1!important;background:#fff!important;color:#223c33!important}
html body.reference-ui-v99 .home-main-search button{min-height:48px!important;border-radius:8px!important}
html body.reference-ui-v99 :is(.home-source-grid>a,.home-entry-grid>a,.library-row,.service-tool,.tool-card){border-color:#dbe3df!important;box-shadow:0 4px 16px rgba(29,52,44,.045)!important}
@media (hover:hover) and (pointer:fine){html body.reference-ui-v99 :is(.home-source-grid>a,.home-entry-grid>a,.playbook-card,.library-row):hover{transform:translateY(-2px)!important;border-color:#b9cec4!important;box-shadow:0 12px 28px rgba(29,52,44,.085)!important}}

html body.reference-ui-v99 .global-sidebar .ref-sidebar-brand img{width:38px!important;height:33px!important;object-fit:contain!important}
html body.reference-ui-v99 .global-sidebar .ref-nav-heading{min-height:32px!important;font-size:10.5px!important;letter-spacing:.11em!important}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a{min-height:42px!important;padding:9px 10px!important;border-radius:8px!important;font-size:14px!important;line-height:1.32!important}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a:hover{background:rgba(255,255,255,.07)!important}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"]{background:rgba(83,211,160,.13)!important;box-shadow:inset 3px 0 0 #58d5a4!important}
html body.reference-ui-v99 .global-sidebar .ref-partner-card{margin-top:14px!important;padding:14px!important;border-color:rgba(90,222,169,.38)!important;border-radius:11px!important;background:linear-gradient(145deg,rgba(33,112,88,.7),rgba(7,30,27,.88))!important;box-shadow:0 10px 22px rgba(0,0,0,.14)!important}
html body.reference-ui-v99 .global-sidebar .ref-partner-card b{font-size:14px!important}
html body.reference-ui-v99 .global-sidebar .ref-partner-card>span{font-size:12px!important;line-height:1.48!important}
html body.reference-ui-v99 .global-sidebar .ref-partner-card em{min-height:36px!important;font-size:12px!important}
html body.reference-ui-v99 .ref-sidebar-rules{display:block!important;padding:10px 8px 12px!important;color:#b9cbc4!important;font-size:11.5px!important;line-height:1.35!important;text-align:center!important;text-decoration:underline!important;text-underline-offset:3px!important}
html body.reference-ui-v99 .ref-sidebar-rules:hover{color:#fff!important}
html body.reference-ui-v99 .ref-sidebar-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-top:4px!important;padding:13px 4px 2px!important;border-top:1px solid rgba(255,255,255,.1)!important;font-size:11px!important}
html body.reference-ui-v99 .ref-sidebar-footer a{color:#e6f0ec!important;text-decoration:none!important}
html body.reference-ui-v99 .ref-sidebar-footer span{color:#91a69f!important}
html body.reference-ui-v99.ref-sidebar-collapsed :is(.ref-sidebar-rules,.ref-sidebar-footer){display:none!important}

html body.reference-ui-v99 .article-aside.enhanced-rail .rail-toc li{margin:4px 0!important}
html body.reference-ui-v99 .article-aside.enhanced-rail .rail-toc a{padding:4px 0!important;color:#54675f!important;font-size:13px!important;line-height:1.42!important}
html body.reference-ui-v99 .article-aside.enhanced-rail .aside-block>b{font-size:13px!important}
html body.reference-ui-v99 .article-aside.enhanced-rail .rail-tools a small{display:none!important}
html body :is(.rail-tool-mark,.service-mark)[data-fallback]{position:relative!important;display:grid!important;place-items:center!important;overflow:hidden!important;color:#17493d!important;font-size:9px!important;font-weight:900!important}
html body :is(.rail-tool-mark,.service-mark)[data-fallback]::after{content:attr(data-fallback);grid-area:1/1!important}
html body :is(.rail-tool-mark,.service-mark)[data-fallback] img{position:relative!important;z-index:1!important;grid-area:1/1!important;width:100%!important;height:100%!important;object-fit:contain!important;background:inherit!important}
html body :is(.rail-tool-mark,.service-mark).is-fallback img{display:none!important}

html body.reference-ui-v99 :is(button,input,select,textarea){font-size:16px!important}
html body.reference-ui-v99 :is(button,.bookmark-button,.saved-link,.article-cta-row a,.source-compare-actions a){min-height:42px}
html body .autocomplete-box{max-height:min(460px,62vh)!important;overflow-y:auto!important;overscroll-behavior:contain!important;border-color:#cdd8d2!important;box-shadow:0 18px 46px rgba(21,49,39,.16)!important;z-index:1200!important}
html body .autocomplete-box a>b{color:#1c4336!important;font-size:14.5px!important}

html body.theme-dark{background:#101318!important;color:#dce3e7!important}
html body.theme-dark.reference-ui-v99 main:not(.home-page){background:#11161b!important}
html body.theme-dark.reference-ui-v99 main.home-page .home-welcome{background:radial-gradient(circle at 82% 16%,rgba(79,116,94,.18),transparent 32%),linear-gradient(135deg,#12191a,#141a20)!important;border-color:#29333a!important}
html body.theme-dark.reference-ui-v99 :is(.article h1,.source-playbook-article h1,.page-head h1,.article h2,.source-playbook-article h2,.home-page h2){color:#f0f4f2!important}
html body.theme-dark.reference-ui-v99 :is(.home-lead,.article .lead,.source-playbook-article .lead,.page-head p){color:#bac6c1!important}
html body.theme-dark.reference-ui-v99 :is(.home-search-card,.home-welcome-summary,.home-welcome-summary>div){background:#171d22!important;border-color:#303a42!important}
html body.theme-dark.reference-ui-v99 .home-main-search input{background:#10151a!important;border-color:#39434b!important;color:#eff3f5!important}
html body.theme-dark .autocomplete-box{background:#171d22!important;border-color:#3a444c!important}
html body.theme-dark .autocomplete-box a>b{color:#eef3f1!important}

@media (max-width:900px){
  :root{--v110-mobile-header:64px!important}
  html body{font-size:16px!important;background:#fffdf8!important}
  html body.reference-ui-v99 .site-header,html body.reference-ui-v99 .ref-topbar{height:64px!important;min-height:64px!important}
  html body.reference-ui-v99 .ref-topbar{padding:0 14px!important}
  html body.reference-ui-v99 .ref-mobile-brand{min-width:0!important;max-width:calc(100% - 104px)!important;color:#fff!important}
  html body.reference-ui-v99 .ref-mobile-brand img{width:34px!important;height:31px!important;flex:0 0 34px!important}
  html body.reference-ui-v99 .ref-mobile-brand b{overflow:hidden!important;color:#fff!important;font-size:13px!important;line-height:1.2!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  html body.reference-ui-v99 .ref-topbar-actions{gap:7px!important}
  html body.reference-ui-v99 :is(.ref-theme-button,.ref-mobile-menu){min-width:42px!important;width:42px!important;height:42px!important}
  html body.reference-ui-v99 .ref-mobile-menu>span:last-child{display:none!important}
  html body.reference-ui-v99 .global-sidebar{top:64px!important;bottom:0!important;width:min(340px,calc(100vw - 20px))!important;max-width:none!important;padding:16px 14px 24px!important;overflow-y:auto!important;overscroll-behavior:contain!important}
  html body.reference-ui-v99 .global-sidebar .ref-sidebar-brand,html body.reference-ui-v99 .global-sidebar .ref-sidebar-collapse-top{display:none!important}
  html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a{min-height:44px!important;padding:10px!important;font-size:14px!important}
  html body .mobile-nav-overlay{inset:64px 0 0!important}
  html body.reference-ui-v99 main.home-page .home-welcome{padding:32px 0 36px!important}
  html body.reference-ui-v99 main.home-page .home-welcome-grid{gap:24px!important}
  html body.reference-ui-v99 main.home-page .home-welcome h1{max-width:18ch!important;font-size:clamp(36px,10.3vw,46px)!important;line-height:1.04!important;letter-spacing:-.038em!important}
  html body.reference-ui-v99 main.home-page .home-lead,html body.reference-ui-v99 :is(.source-hero-shell>.lead,.academy-article-hero .lead,.article>.lead,.page-head p){font-size:16.5px!important;line-height:1.6!important}
  html body.reference-ui-v99 :is(.article p,.article li,.article dd,.article figcaption,.source-playbook-article p,.source-playbook-article li,.source-playbook-article dd,.guide-v101-section>p,.guide-v101-section li,.guide-v101-section dd,.logic-section-v103 p,.logic-section-v103 li,.logic-section-v103 dd){font-size:17px!important;line-height:1.66!important}
  html body.reference-ui-v99 :is(.home-entry-grid p,.home-source-grid p,.library-row p,.service-tool p,.tool-card p,.playbook-card>p,.playbook-checklist li,.guide-v101-grid p){font-size:15.7px!important;line-height:1.6!important}
  html body.reference-ui-v99 .home-search-card{padding:20px!important;border-radius:12px!important;box-shadow:0 8px 24px rgba(29,52,44,.08)!important}
  html body.reference-ui-v99 .home-main-search>div{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important}
  html body.reference-ui-v99 .home-main-search input{width:100%!important;font-size:16px!important}
  html body.reference-ui-v99 .home-main-search button{padding-inline:16px!important}
  html body .autocomplete-box{max-height:min(390px,52vh)!important}
  html body .source-section-tabs{scroll-padding-left:14px!important}
  html body .source-section-tabs a{min-height:40px!important;font-size:12px!important}
  html body :is(.article table,.compare-table,.source-compare-table,.rules-table){max-width:100%!important}
  html body .article-figure img{max-width:100%!important;height:auto!important}
  html body.theme-dark{background:#101318!important}
}
@media (max-width:430px){
  html body.reference-ui-v99 .ref-topbar{padding:0 10px!important}
  html body.reference-ui-v99 .ref-mobile-brand{max-width:calc(100% - 94px)!important}
  html body.reference-ui-v99 .ref-mobile-brand b{font-size:12px!important}
  html body.reference-ui-v99 :is(.ref-theme-button,.ref-mobile-menu){min-width:40px!important;width:40px!important;height:40px!important}
  html body.reference-ui-v99 main.home-page .wrap,html body.reference-ui-v99 main:not(.home-page)>.wrap,html body.reference-ui-v99 .article-layout{padding-inline:14px!important}
  html body.reference-ui-v99 .home-actions{display:grid!important;grid-template-columns:1fr!important}
  html body.reference-ui-v99 .home-actions a{justify-content:center!important;width:100%!important;min-height:44px!important}
  html body.reference-ui-v99 .home-main-search>div{grid-template-columns:1fr!important;gap:8px!important}
  html body.reference-ui-v99 .home-main-search button{width:100%!important}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}html body *,html body *::before,html body *::after{animation:none!important;transition:none!important}}
@media print{html body{background:#fff!important;color:#111!important}html body :is(.site-header,.global-sidebar,.mobile-nav-overlay,.article-aside,.site-footer,.article-actions,.article-exit-nav){display:none!important}html body :is(main,.compact-main-v103,.article-layout,.article){width:100%!important;max-width:none!important;margin:0!important;padding:0!important}html body a{color:#111!important;text-decoration:underline!important}}

/* ======================================================================
   v133 — home result panel spacing and contrast
   ====================================================================== */
html body.reference-ui-v99 main.home-page .home-results{
  box-sizing:border-box!important;
  padding:38px clamp(18px,3vw,34px) 48px!important;
  background:#fbfcfa!important;
}
html body.reference-ui-v99 main.home-page .home-results>.wrap{
  width:100%!important;
  max-width:1440px!important;
  margin:0 auto!important;
  padding:0!important;
  box-sizing:border-box!important;
}
html body.reference-ui-v99 main.home-page .home-results .home-results-inner{
  width:100%!important;
  margin:0 auto!important;
  padding:clamp(30px,3.4vw,46px)!important;
  gap:clamp(24px,3.5vw,48px)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:15px!important;
  background:#214f42!important;
  color:#fff!important;
  box-shadow:0 14px 34px rgba(23,61,50,.14)!important;
}
html body.reference-ui-v99 main.home-page .home-results .home-results-inner>div{
  min-width:0!important;
  padding:0!important;
}
html body.reference-ui-v99 main.home-page .home-results .home-results-inner>div>p{
  margin:0 0 11px!important;
  color:#f0cb98!important;
  font-size:11.5px!important;
  line-height:1.4!important;
}
html body.reference-ui-v99 main.home-page .home-results .home-results-inner h2{
  margin:0 0 12px!important;
  color:#fff!important;
  font-size:clamp(29px,3vw,40px)!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
}
html body.reference-ui-v99 main.home-page .home-results .home-results-inner>div>span{
  display:block!important;
  max-width:66ch!important;
  color:#eef7f3!important;
  font-size:15.5px!important;
  line-height:1.62!important;
}
html body.reference-ui-v99 main.home-page .home-results nav{
  min-width:0!important;
  gap:9px!important;
}
html body.reference-ui-v99 main.home-page .home-results nav a{
  min-height:44px!important;
  padding:11px 14px!important;
  border-color:rgba(255,255,255,.25)!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  font-size:13px!important;
  line-height:1.35!important;
}
html body.reference-ui-v99 main.home-page .home-results nav a:hover{
  border-color:rgba(255,255,255,.42)!important;
  background:rgba(255,255,255,.15)!important;
}
html body.theme-dark.reference-ui-v99 main.home-page .home-results{
  background:#11161b!important;
}
html body.theme-dark.reference-ui-v99 main.home-page .home-results .home-results-inner{
  border-color:#31594d!important;
  background:#173b32!important;
  box-shadow:none!important;
}
html body.theme-dark.reference-ui-v99 main.home-page .home-results .home-results-inner>div>p{color:#efc68f!important}
html body.theme-dark.reference-ui-v99 main.home-page .home-results .home-results-inner h2,
html body.theme-dark.reference-ui-v99 main.home-page .home-results .home-results-inner>div>span{color:#f4f8f6!important}

@media (max-width:900px){
  html body.reference-ui-v99 main.home-page .home-results{
    padding:28px 16px 40px!important;
  }
  html body.reference-ui-v99 main.home-page .home-results .home-results-inner{
    grid-template-columns:minmax(0,1fr)!important;
    padding:28px 22px!important;
    gap:24px!important;
    border-radius:13px!important;
  }
  html body.reference-ui-v99 main.home-page .home-results .home-results-inner h2{
    font-size:clamp(28px,7.5vw,36px)!important;
  }
  html body.reference-ui-v99 main.home-page .home-results .home-results-inner>div>span{
    font-size:15.5px!important;
  }
}
@media (max-width:430px){
  html body.reference-ui-v99 main.home-page .home-results{padding:24px 14px 34px!important}
  html body.reference-ui-v99 main.home-page .home-results .home-results-inner{
    padding:24px 18px!important;
    gap:21px!important;
    border-radius:12px!important;
  }
}


/* v134 fix: traffic hub source cards facts should not shift */
html body main.traffic-hub-page .playbook-card .playbook-facts,
html body.reference-ui-v99 main.traffic-hub-page .playbook-card .playbook-facts{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  margin:14px 0 12px!important;
}
html body main.traffic-hub-page .playbook-card .playbook-facts>div,
html body.reference-ui-v99 main.traffic-hub-page .playbook-card .playbook-facts>div{
  display:block!important;
  width:100%!important;
  min-height:0!important;
  padding:11px 14px!important;
  border:1px solid #dce4df!important;
  border-radius:10px!important;
  background:#fbfcfb!important;
  box-sizing:border-box!important;
}
html body main.traffic-hub-page .playbook-card .playbook-facts dt,
html body.reference-ui-v99 main.traffic-hub-page .playbook-card .playbook-facts dt{
  display:block!important;
  margin:0 0 4px!important;
  font-size:11px!important;
  line-height:1.25!important;
  color:#78857f!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
}
html body main.traffic-hub-page .playbook-card .playbook-facts dd,
html body.reference-ui-v99 main.traffic-hub-page .playbook-card .playbook-facts dd{
  display:block!important;
  margin:0!important;
  font-size:15px!important;
  line-height:1.45!important;
  color:#223b34!important;
  font-weight:760!important;
  text-align:left!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}
html body.theme-dark main.traffic-hub-page .playbook-card .playbook-facts>div,
html body.reference-ui-v99.theme-dark main.traffic-hub-page .playbook-card .playbook-facts>div{
  background:#171c22!important;
  border-color:#2d3640!important;
}
html body.theme-dark main.traffic-hub-page .playbook-card .playbook-facts dd,
html body.reference-ui-v99.theme-dark main.traffic-hub-page .playbook-card .playbook-facts dd{
  color:#edf2f5!important;
}


/* ======================================================================
   v135 — remove multicolored page backgrounds, keep one calm neutral tone
   ====================================================================== */

/* Large page sections and wrappers */
html body,
html body .home-page,
html body .page-head,
html body .home-intro,
html body .rule-section.alt,
html body .home-playbooks,
html body .home-sources,
html body .home-workflow,
html body .home-reference,
html body .source-playbook-page,
html body .notes-page,
html body .traffic-playbook-entry,
html body .home-entry,
html body .home-audience,
html body .home-results,
html body .home-reference,
html body .home-faq,
html body .home-cta,
html body .service-entry,
html body .guide-entry,
html body .article-page,
html body .traffic-hub-page{
  background:#f6f4ef!important;
}

/* Remove pastel alternation from page cards that link to sections/pages */
html body :is(
  .playbook-card,
  .home-source-grid>a,
  .traffic-playbook-entry .traffic-source-grid>a,
  .home-entry-grid>a,
  .traffic-choice-entry,
  .wizard-gate,
  .audience-mode-card,
  .path-card,
  .knowledge-map>div,
  .library-row,
  .calc,
  .foundation-list a
){
  background:#fffdf9!important;
}

/* Neutralize nth-child color variants so page cards are not multicolored */
html body :is(.playbook-card,.home-source-grid>a,.traffic-playbook-entry .traffic-source-grid>a):nth-child(n){
  background:#fffdf9!important;
  border-top-color:#a48257!important;
}
html body .knowledge-map>div:nth-child(n){
  background:#fffdf9!important;
}
html body .knowledge-map>div:nth-child(n)::before,
html body .foundation-list a:nth-child(n)::before,
html body .library-row:nth-child(n)::before,
html body .calc:nth-child(n)::before,
html body .calc:nth-child(n)::after{
  background:#d9d3c9!important;
}

/* Keep light hover/interaction but remove colored tints */
html body :is(.library-row:hover,.foundation-list a:hover,.tool-preview a:hover,.index-panel a:hover){
  background:#f8f6f1!important;
}


/* ======================================================================
   v136 — compact TOC and shorter left navigation
   ====================================================================== */

/* Desktop article TOC: short block with its own scroll instead of a tall rail. */
@media (min-width:1081px){
  html body.reference-ui-v99 .article-aside.enhanced-rail .rail-toc,
  html body .article-aside.enhanced-rail .rail-toc{
    max-height:300px!important;
    overflow:hidden!important;
    padding:12px 13px!important;
  }
  html body.reference-ui-v99 .article-aside.enhanced-rail .rail-toc ol,
  html body .article-aside.enhanced-rail .rail-toc ol{
    max-height:235px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-right:7px!important;
    scrollbar-width:thin!important;
    scrollbar-color:#c5cfca transparent!important;
  }
  html body.reference-ui-v99 .article-aside.enhanced-rail .rail-toc ol::-webkit-scrollbar,
  html body .article-aside.enhanced-rail .rail-toc ol::-webkit-scrollbar{width:5px!important}
  html body.reference-ui-v99 .article-aside.enhanced-rail .rail-toc ol::-webkit-scrollbar-thumb,
  html body .article-aside.enhanced-rail .rail-toc ol::-webkit-scrollbar-thumb{
    background:#c5cfca!important;
    border-radius:999px!important;
  }
  html body.reference-ui-v99 .article-aside.enhanced-rail .rail-toc li,
  html body .article-aside.enhanced-rail .rail-toc li{margin:2px 0!important}
  html body.reference-ui-v99 .article-aside.enhanced-rail .rail-toc a,
  html body .article-aside.enhanced-rail .rail-toc a{
    padding:3px 0!important;
    font-size:12.4px!important;
    line-height:1.3!important;
  }
  html body.reference-ui-v99 .article-aside.enhanced-rail .rail-toc>b,
  html body .article-aside.enhanced-rail .rail-toc>b{
    margin-bottom:7px!important;
    font-size:12.5px!important;
  }
}

html body.theme-dark .article-aside.enhanced-rail .rail-toc ol{
  scrollbar-color:#46515b transparent!important;
}
html body.theme-dark .article-aside.enhanced-rail .rail-toc ol::-webkit-scrollbar-thumb{
  background:#46515b!important;
}


/* ======================================================================
   v138 — restore the left navigation exactly to the v131 proportions
   ====================================================================== */
html body.reference-ui-v99 .global-sidebar .ref-sidebar-brand img{
  width:38px!important;
  height:38px!important;
  object-fit:contain!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-heading{
  width:100%!important;
  height:29px!important;
  min-height:29px!important;
  padding:0 4px!important;
  color:#a4b7b1!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.06em!important;
  line-height:1!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a{
  width:100%!important;
  min-height:34px!important;
  padding:7px 9px!important;
  gap:10px!important;
  border-radius:7px!important;
  color:#e8f1ee!important;
  font-size:12.5px!important;
  font-weight:570!important;
  line-height:1.2!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a:hover{
  color:#fff!important;
  background:rgba(255,255,255,.065)!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a:not([aria-current="page"]),
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a.is-active:not([aria-current="page"]){
  color:#e8f1ee!important;
  background:transparent!important;
  box-shadow:none!important;
  font-weight:570!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"]{
  color:#8cf0c8!important;
  background:linear-gradient(90deg,rgba(23,159,110,.25),rgba(23,159,110,.075))!important;
  box-shadow:inset 2px 0 #27c98e!important;
  font-weight:700!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-icon{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  flex:0 0 20px!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-icon-img{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
}
html body.reference-ui-v99 .global-sidebar .ref-partner-card{
  display:grid!important;
  gap:8px!important;
  margin-top:14px!important;
  padding:14px 13px!important;
  border:1px solid rgba(38,190,132,.35)!important;
  border-radius:10px!important;
  background:linear-gradient(150deg,rgba(13,61,51,.65),rgba(7,25,29,.82))!important;
  box-shadow:none!important;
  color:#fff!important;
  text-decoration:none!important;
}
html body.reference-ui-v99 .global-sidebar .ref-partner-card b{
  color:#f3faf7!important;
  font-size:12.5px!important;
  line-height:1.3!important;
}
html body.reference-ui-v99 .global-sidebar .ref-partner-card>span{
  color:#b4c7c1!important;
  font-size:10.5px!important;
  line-height:1.45!important;
}
html body.reference-ui-v99 .global-sidebar .ref-partner-card em{
  min-height:0!important;
  height:33px!important;
  margin-top:3px!important;
  padding:0 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  border-radius:6px!important;
  background:linear-gradient(90deg,#159a68,#08784f)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:700!important;
  font-style:normal!important;
}
html body.reference-ui-v99 :is(.ref-sidebar-rules,.ref-sidebar-footer){display:none!important}

@media (max-width:900px){
  html body.reference-ui-v99 .global-sidebar{
    width:min(310px,86vw)!important;
    max-width:min(310px,86vw)!important;
    padding:12px 12px max(22px,env(safe-area-inset-bottom))!important;
  }
  html body.reference-ui-v99 .ref-sidebar-groups{gap:5px!important}
  html body.reference-ui-v99 .global-sidebar .ref-nav-heading{
    height:31px!important;
    min-height:31px!important;
    padding:0 7px!important;
    color:#8fa9a0!important;
    font-size:9.5px!important;
    letter-spacing:.075em!important;
  }
  html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a{
    min-height:40px!important;
    padding:8px 9px!important;
    gap:10px!important;
    border-radius:8px!important;
    font-size:12.5px!important;
    line-height:1.25!important;
    white-space:normal!important;
  }
  html body.reference-ui-v99 .global-sidebar .ref-partner-card{
    margin-top:12px!important;
    padding:13px!important;
  }
}


/* ======================================================================
   v139 — restore green gradient top bar + improve mobile menu logo contrast
   ====================================================================== */

/* Desktop header: greener, slightly taller, with a subtle gradient. */
@media (min-width: 901px){
  html body .site-header{
    height:78px!important;
    background:linear-gradient(180deg,#215447 0%, #193f35 55%, #14362e 100%)!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
    box-shadow:0 8px 24px rgba(19,41,35,.12)!important;
  }
  html body .site-header .header-inner{
    min-height:78px!important;
  }
  html body.reference-ui-v99 .site-header{
    height:56px!important;
    background:linear-gradient(180deg,#215447 0%, #193f35 58%, #14362e 100%)!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
    box-shadow:0 8px 22px rgba(19,41,35,.12)!important;
  }
  html body.reference-ui-v99 .ref-topbar{
    height:56px!important;
    min-height:56px!important;
    background:transparent!important;
    color:#e8f2ef!important;
  }
}

/* Mobile: keep the green bar, but make the logo readable and distinct. */
@media (max-width: 900px){
  html body .site-header{
    background:linear-gradient(180deg,#215447 0%, #193f35 58%, #14362e 100%)!important;
  }
  html body.reference-ui-v99 .site-header,
  html body.reference-ui-v99 .ref-topbar{
    background:linear-gradient(180deg,#215447 0%, #193f35 58%, #14362e 100%)!important;
  }

  /* Logo in the top bar */
  html body.reference-ui-v99 .ref-mobile-brand img,
  html body .site-header .brand-logo{
    display:block!important;
    padding:4px!important;
    border-radius:10px!important;
    background:rgba(255,255,255,.14)!important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)!important;
  }

  /* Logo inside the opened mobile menu */
  html body.reference-ui-v99 .global-sidebar .ref-sidebar-brand img,
  html body .global-sidebar .sidebar-brand-logo{
    display:block!important;
    padding:5px!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.14)!important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)!important;
  }
}

/* Light theme topbar text/buttons tuned for the restored green strip. */
html body.reference-ui-v99:not(.theme-dark) .ref-mobile-brand,
html body.reference-ui-v99:not(.theme-dark) .ref-mobile-brand b{
  color:#ffffff!important;
}
html body.reference-ui-v99:not(.theme-dark) :is(.ref-theme-button,.ref-mobile-menu){
  background:rgba(0,0,0,.16)!important;
  border-color:rgba(255,255,255,.16)!important;
  color:#ffffff!important;
}


/* ======================================================================
   v140 — restore compact tooltip hitboxes
   ====================================================================== */
/* A later global button rule gave every button a 42px minimum height.
   Term-help controls live inline in prose, so their clickable area must stay
   exactly around the word and the small question marker. */
html body .term-help,
html body.reference-ui-v99 .term-help{
  display:inline-flex!important;
  align-items:baseline!important;
  justify-content:flex-start!important;
  align-self:baseline!important;
  justify-self:start!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:max-content!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:0 1px!important;
  margin:0 3px 0 1px!important;
  line-height:inherit!important;
  vertical-align:baseline!important;
  white-space:nowrap!important;
  box-sizing:content-box!important;
}
html body .term-help::after,
html body.reference-ui-v99 .term-help::after{
  flex:0 0 12px!important;
  width:12px!important;
  height:12px!important;
  min-width:12px!important;
  min-height:12px!important;
  margin-left:3px!important;
}


/* v141 — TrafficLab brand polish */
html body .brand-text b{font-size:18px!important;letter-spacing:-.025em!important}
html body .footer-brand{letter-spacing:-.02em!important}
html body.reference-ui-v99 .ref-mobile-brand b{letter-spacing:-.02em!important}


/* v143 — autocomplete for the top search in the header */
html body.reference-ui-v99 .ref-top-search{position:relative!important;overflow:visible!important}
html body.reference-ui-v99 .ref-top-search .autocomplete-box{
  top:calc(100% + 8px)!important;
  left:0!important;
  right:0!important;
  width:360px!important;
  max-width:min(460px,44vw)!important;
  border-radius:10px!important;
}
html body.reference-ui-v99 .ref-top-search .autocomplete-box a{grid-template-columns:80px minmax(0,1fr)!important}
html body.reference-ui-v99 .ref-top-search .autocomplete-box a>span{font-size:9.5px!important}
html body.reference-ui-v99 .ref-top-search .autocomplete-box a>small{display:block!important}
html body.reference-ui-v99:not(.theme-dark) .ref-top-search .autocomplete-box{background:#fffdf9!important;border-color:#d6cec2!important}
html body.reference-ui-v99.theme-dark .ref-top-search .autocomplete-box{background:#171d22!important;border-color:#3a444c!important}
@media (max-width:1200px){
  html body.reference-ui-v99 .ref-top-search .autocomplete-box{width:320px!important;max-width:min(380px,40vw)!important}
}


/* v144 — fix alignment in source fact cards */
.source-playbook-article>.playbook-facts{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  border:1px solid #ddd5c7;
  border-radius:0;
  overflow:hidden;
}
.source-playbook-article>.playbook-facts>div{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  min-height:106px;
  padding:14px 12px!important;
  background:#f8f4ec!important;
  border:0!important;
  border-right:1px solid #ddd5c7!important;
}
.source-playbook-article>.playbook-facts>div:last-child{border-right:0!important}
.source-playbook-article>.playbook-facts dt{
  margin:0 0 8px!important;
  color:#6e6d66!important;
  font-size:11px!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:.04em!important;
}
.source-playbook-article>.playbook-facts dd{
  margin:0!important;
  max-width:16ch;
  color:#243f37!important;
  font-size:18px!important;
  line-height:1.22!important;
  font-weight:800!important;
  text-wrap:balance;
}
@media (max-width:980px){
  .source-playbook-article>.playbook-facts{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:1px!important;
    background:#ddd5c7!important;
    border-radius:10px!important;
    overflow:hidden!important;
  }
  .source-playbook-article>.playbook-facts>div{
    min-height:96px;
    border-right:0!important;
  }
}
@media (max-width:640px){
  .source-playbook-article>.playbook-facts{
    grid-template-columns:1fr!important;
  }
  .source-playbook-article>.playbook-facts dd{
    max-width:none;
    font-size:17px!important;
  }
}


/* v147 — fix source hero icons/cards in article headings */
html body .source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  max-width:52px!important;
  min-height:52px!important;
  max-height:52px!important;
  aspect-ratio:1 / 1!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  text-align:center!important;
  white-space:nowrap!important;
  line-height:1!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
  border-radius:12px!important;
}
html body .source-playbook-page .source-title-row,
html body.reference-ui-v99 main.source-playbook-page .source-title-row{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  align-items:center!important;
  gap:14px!important;
}
@media (max-width:900px){
  html body .source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    border-radius:11px!important;
    font-size:12px!important;
  }
  html body .source-playbook-page .source-title-row,
  html body.reference-ui-v99 main.source-playbook-page .source-title-row{
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:12px!important;
  }
}


/* v148 — unify source hero fact cards across all source articles */
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts),
html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts){
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  gap:0!important;
  margin:14px 0 18px!important;
  border:1px solid #dcd4c8!important;
  border-radius:12px!important;
  overflow:hidden!important;
  background:#dcd4c8!important;
}
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div,
html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  gap:8px!important;
  min-width:0!important;
  min-height:112px!important;
  padding:16px 14px!important;
  margin:0!important;
  background:#f8f4ec!important;
  border:0!important;
  border-right:1px solid #dcd4c8!important;
  box-sizing:border-box!important;
}
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div:last-child,
html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div:last-child{
  border-right:0!important;
}
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts) dt,
html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts) dt{
  display:block!important;
  width:100%!important;
  margin:0!important;
  color:#67716b!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
  text-transform:none!important;
}
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts) dd,
html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts) dd{
  display:block!important;
  width:100%!important;
  max-width:17ch!important;
  margin:0!important;
  color:#203a33!important;
  font-size:16px!important;
  line-height:1.28!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
  text-wrap:balance!important;
}
@media (max-width:980px){
  html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts),
  html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div,
  html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div{
    min-height:104px!important;
  }
  html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div:nth-child(2n),
  html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div:nth-child(2n){
    border-right:0!important;
  }
}
@media (max-width:640px){
  html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts),
  html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts){
    grid-template-columns:1fr!important;
  }
  html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div,
  html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div{
    min-height:0!important;
    padding:14px 12px!important;
    border-right:0!important;
    border-bottom:1px solid #dcd4c8!important;
  }
  html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div:last-child,
  html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div:last-child{
    border-bottom:0!important;
  }
  html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts) dd,
  html body.reference-ui-v99 .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts) dd{
    max-width:none!important;
    font-size:15px!important;
  }
}
html body.theme-dark .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts),
html body.reference-ui-v99.theme-dark .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts){
  background:#2b333d!important;
  border-color:#2b333d!important;
}
html body.theme-dark .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div,
html body.reference-ui-v99.theme-dark .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div{
  background:#191e25!important;
  border-right-color:#2b333d!important;
}
html body.theme-dark .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts) dt,
html body.reference-ui-v99.theme-dark .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts) dt{
  color:#9eaaa6!important;
}
html body.theme-dark .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts) dd,
html body.reference-ui-v99.theme-dark .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts) dd{
  color:#eef2f4!important;
}


/* v149 — restore fact icons and clean source logos in traffic cards */
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div{
  position:relative!important;
}
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div::before{
  content:"";
  display:block;
  width:30px;
  height:30px;
  margin:0 auto 2px;
  border-radius:999px;
  background-color:#eef5f1;
  background-repeat:no-repeat;
  background-position:center;
  background-size:16px 16px;
  border:1px solid #d9e7e0;
}
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div[data-fact-icon="test"]::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231f8b68' d='M8 3h8l1 2h3v16H4V5h3l1-2Zm8 4H8v2h8V7Zm0 4H8v2h8v-2Zm-4 4H8v2h4v-2Z'/%3E%3C/svg%3E");
}
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div[data-fact-icon="traffic"]::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231f8b68' d='M4 18h16v2H2V4h2v14Zm3-3 3-4 3 2 5-6 2 1-6 8-3-2-2 3-2-2Z'/%3E%3C/svg%3E");
}
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div[data-fact-icon="markup"]::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231f8b68' d='m11 3 9 9-8 8-9-9V3h8Zm-4 4a1.5 1.5 0 1 0 0.001 3.001A1.5 1.5 0 0 0 7 7Z'/%3E%3C/svg%3E");
}
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div[data-fact-icon="time"]::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231f8b68' d='M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20Zm1 5h-2v6l5 3 1-1.7-4-2.3V7Z'/%3E%3C/svg%3E");
}
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div[data-fact-icon="metrics"]::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231f8b68' d='M5 9h3v10H5V9Zm5-4h3v14h-3V5Zm5 7h3v7h-3v-7Z'/%3E%3C/svg%3E");
}
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div[data-fact-icon="default"]::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231f8b68' d='M6 4h9l5 5v11H6V4Zm8 1.5V10h4.5'/%3E%3C/svg%3E");
}
html body.theme-dark .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div::before{
  background-color:#202831!important;
  border-color:#31404b!important;
}

html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art{
  overflow:hidden!important;
  box-sizing:border-box!important;
  padding:8px!important;
  border:1px solid #dde5df!important;
  border-radius:12px!important;
  background-color:#ffffff!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-size:28px 28px!important;
  background-origin:content-box!important;
  background-clip:content-box!important;
  box-shadow:none!important;
}
html body.theme-dark .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99.theme-dark .playbook-card-top .playbook-hero-art{
  background-color:#151b21!important;
  border-color:#2f3942!important;
}



/* v151 — align intro headers to the same narrow column as content */
html body.content-system-v103 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap.narrow,
html body.content-system-v103 main.compact-main-v103 > section.page-head.journal-head.compact-block-v103 > .wrap.narrow,
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow{
  width:100%!important;
  max-width:900px!important;
  margin:0 auto!important;
  padding-left:36px!important;
  padding-right:36px!important;
}
html body.content-system-v103 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap.narrow > :is(.overline,h1,p,.glossary-search),
html body.content-system-v103 main.compact-main-v103 > section.page-head.journal-head.compact-block-v103 > .wrap.narrow > :is(.overline,h1,p),
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow > *{
  max-width:none!important;
}
@media (max-width:900px){
  html body.content-system-v103 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103 > section.page-head.journal-head.compact-block-v103 > .wrap.narrow,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow{
    padding-left:22px!important;
    padding-right:22px!important;
  }
}
@media (max-width:650px){
  html body.content-system-v103 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103 > section.page-head.journal-head.compact-block-v103 > .wrap.narrow,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow{
    padding-left:18px!important;
    padding-right:18px!important;
  }
}


/* v152 — restore graphic source icons in article headers */
html body .source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  color:transparent!important;
  font-size:0!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-size:30px 30px!important;
}
html body .source-playbook-page .source-hero-youtube{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='6' y='14' width='52' height='36' rx='12' fill='%23ff2d2d'/%3E%3Cpath d='M28 24l14 8-14 8z' fill='white'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-vk-video{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='7' y='7' width='50' height='50' rx='15' fill='%232787f5'/%3E%3Cpath d='M17 22h8c.5 7 3.3 10 6 12V22h7v7c2.8-.3 5.7-3.6 7.4-7H52c-1.4 5-5.5 9.4-8 11 2.6 1.4 7.3 5.3 9 10h-8c-2-3.4-4.5-6-7-6v6h-3c-11.2 0-17.6-7.8-18-21Z' fill='white'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-telegram{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='32' r='27' fill='%232aabee'/%3E%3Cpath d='M17 31l30-12-6 27c-.4 1.7-1.5 2.1-3 1.3l-9-6.7-4.4 4.2c-.5.5-.9.9-1.8.9l.7-9.2L40 22.7c.7-.7-.2-1-1.1-.4L19 34.8l-8.6-2.7c-1.9-.6-1.9-1.9.4-2.8Z' fill='white'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-reddit{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='34' r='22' fill='%23ff4500'/%3E%3Ccircle cx='24' cy='33' r='4' fill='white'/%3E%3Ccircle cx='40' cy='33' r='4' fill='white'/%3E%3Cpath d='M22 43c6 4 14 4 20 0' stroke='white' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3Cpath d='M34 14l3-8 8 2' stroke='%23ff4500' stroke-width='3' fill='none'/%3E%3Ccircle cx='47' cy='9' r='4' fill='%23ff4500'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-x-twitter{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='8' y='8' width='48' height='48' rx='12' fill='%23111'/%3E%3Cpath d='M18 18h8l20 28h-8L18 18Zm3 28 14-15m4-4 6-9' stroke='white' stroke-width='4'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-dzen{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='8' y='8' width='48' height='48' rx='16' fill='%23111111'/%3E%3Cpath d='M32 14c-4 8-10 14-18 18 8 4 14 10 18 18 4-8 10-14 18-18-8-4-14-10-18-18Z' fill='white'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-paid{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='8' y='8' width='48' height='48' rx='14' fill='%23ff8a00'/%3E%3Cpath d='M20 40h6V28h-6v12Zm9 0h6V22h-6v18Zm9 0h6V16h-6v24Z' fill='white'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-content-site{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='8' y='10' width='48' height='44' rx='10' fill='%231f8b68'/%3E%3Cpath d='M17 22h30M17 30h22M17 38h18' stroke='white' stroke-width='4' stroke-linecap='round'/%3E%3Ccircle cx='48' cy='18' r='5' fill='%23f4c542'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-search{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='28' cy='28' r='14' fill='none' stroke='%232d6cdf' stroke-width='6'/%3E%3Cpath d='M39 39l11 11' stroke='%232d6cdf' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-mailing{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='10' y='16' width='44' height='32' rx='8' fill='%239b59b6'/%3E%3Cpath d='M14 22l18 14 18-14' fill='none' stroke='white' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-communities{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='24' cy='28' r='9' fill='%231f8b68'/%3E%3Ccircle cx='41' cy='24' r='7' fill='%2354b78d'/%3E%3Cpath d='M12 48c2-8 8-12 15-12s13 4 15 12' fill='none' stroke='%231f8b68' stroke-width='5' stroke-linecap='round'/%3E%3Cpath d='M36 46c1.4-5.7 5.1-8.8 10.7-9.4' fill='none' stroke='%2354b78d' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-social{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='10' y='12' width='44' height='30' rx='10' fill='%234a90e2'/%3E%3Cpath d='M22 48h20' stroke='%234a90e2' stroke-width='6' stroke-linecap='round'/%3E%3Cpath d='M20 23h24M20 31h16' stroke='white' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-streams{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='9' y='12' width='46' height='34' rx='10' fill='%238e44ad'/%3E%3Cpath d='M28 23l12 6-12 6z' fill='white'/%3E%3Cpath d='M24 51h16' stroke='%238e44ad' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-short-video{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='18' y='8' width='28' height='48' rx='10' fill='%23ff4d6d'/%3E%3Cpath d='M28 24l12 8-12 8z' fill='white'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-alt-video{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect x='8' y='14' width='48' height='30' rx='8' fill='%2326a69a'/%3E%3Cpath d='M26 23l14 6-14 6z' fill='white'/%3E%3Cpath d='M20 52h24' stroke='%2326a69a' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E")!important;background-color:#ffffff!important;border:1px solid #e6ece8!important}
html body .source-playbook-page .source-hero-search,
html body .source-playbook-page .source-hero-content-site,
html body .source-playbook-page .source-hero-youtube,
html body .source-playbook-page .source-hero-vk-video,
html body .source-playbook-page .source-hero-telegram,
html body .source-playbook-page .source-hero-reddit,
html body .source-playbook-page .source-hero-x-twitter,
html body .source-playbook-page .source-hero-dzen,
html body .source-playbook-page .source-hero-paid,
html body .source-playbook-page .source-hero-mailing,
html body .source-playbook-page .source-hero-communities,
html body .source-playbook-page .source-hero-social,
html body .source-playbook-page .source-hero-streams,
html body .source-playbook-page .source-hero-short-video,
html body .source-playbook-page .source-hero-alt-video{box-shadow:none!important}
html body.theme-dark .source-playbook-page .source-hero-icon,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon{border-color:#31404b!important;background-color:#171d22!important}


/* v153 — unify intro/header alignment across section landing pages */
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow,
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow,
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .global-mode-guidance.wrap,
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .beginner-term-note.wrap,
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow{
  width:min(calc(100% - 42px),var(--v104-regular-content))!important;
  max-width:var(--v104-regular-content)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap > :is(.overline,h1,p,.glossary-search),
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow > :is(.overline,h1,p,.glossary-search),
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap > :is(.overline,h1,p),
html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow > :is(.overline,h1,p),
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow > *{
  margin-left:0!important;
}
@media (max-width: 650px){
  html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .global-mode-guidance.wrap,
  html body.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .beginner-term-note.wrap,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow{
    width:min(calc(100% - 30px),var(--v104-regular-content))!important;
  }
}


/* v155 — restore inner padding for sectional reading/history blocks */
body.content-system-v103 .journal-reading,
body.content-system-v103 .related-reading,
body.content-system-v103 .section-outcome{
  padding-left:12px!important;
  padding-right:12px!important;
  box-sizing:border-box!important;
}
@media (max-width:650px){
  body.content-system-v103 .journal-reading,
  body.content-system-v103 .related-reading,
  body.content-system-v103 .section-outcome{
    padding-left:6px!important;
    padding-right:6px!important;
  }
}


/* v156 — figure explanation text should match regular article copy */
html body .article-page .article-figure.compact:not(.source-journey-card) > figcaption{
  font-size:17px!important;
  line-height:1.68!important;
}
@media (max-width:650px){
  html body .article-page .article-figure.compact:not(.source-journey-card) > figcaption{
    font-size:17px!important;
    line-height:1.66!important;
  }
}


/* v157 — restore readable campaign-type cards in AdsBridge guide */
html body .adsbridge-guide .compare-table{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  margin:16px 0 18px!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  width:100%!important;
  max-width:100%!important;
}
html body .adsbridge-guide .compare-table>div{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  min-height:0!important;
  padding:16px 18px!important;
  border:1px solid #ddd5c8!important;
  border-radius:10px!important;
  background:#fbf9f4!important;
  text-align:left!important;
  box-sizing:border-box!important;
}
html body .adsbridge-guide .compare-table>div:nth-child(n){
  border-bottom:1px solid #ddd5c8!important;
  background:#fbf9f4!important;
  color:#273d36!important;
}
html body .adsbridge-guide .compare-table b{
  display:block!important;
  margin:0 0 8px!important;
  color:#214237!important;
  font-size:17px!important;
  line-height:1.28!important;
  font-weight:750!important;
  text-align:left!important;
}
html body .adsbridge-guide .compare-table span{
  display:block!important;
  color:#495a54!important;
  font-size:16px!important;
  line-height:1.58!important;
  font-weight:400!important;
  text-align:left!important;
}
html body.theme-dark .adsbridge-guide .compare-table>div:nth-child(n){
  background:#171d23!important;
  border-color:#313b45!important;
}
html body.theme-dark .adsbridge-guide .compare-table b{
  color:#eef3f5!important;
}
html body.theme-dark .adsbridge-guide .compare-table span{
  color:#c2cbd1!important;
}
@media (max-width:900px){
  html body .adsbridge-guide .compare-table{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  html body .adsbridge-guide .compare-table>div{
    padding:14px 15px!important;
  }
  html body .adsbridge-guide .compare-table b{
    font-size:16px!important;
  }
  html body .adsbridge-guide .compare-table span{
    font-size:15.5px!important;
  }
}


/* v158 — fix hero badge/title overlap on articles without a visual block */
html body .academy-article-hero-main > .academy-article-hero-copy:only-child,
html body .source-title-row > .source-title-copy:only-child{
  grid-column:1 / -1!important;
  width:100%!important;
  max-width:none!important;
}
html body .academy-article-hero-copy,
html body .source-title-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
}
html body .academy-article-hero-copy .article-label,
html body .source-title-copy .article-label{
  position:relative!important;
  z-index:1!important;
  flex:0 0 auto!important;
}
html body .academy-article-hero-copy h1,
html body .source-title-copy h1{
  width:100%!important;
  margin-left:0!important;
}


/* v159 — lighten footer subtitle text near the TrafficLab logo */
html body .site-footer .footer-identity p{
  color:#d7e4df!important;
}
html body .site-footer .footer-identity p,
html body .site-footer .footer-bottom span,
html body .site-footer .footer-bottom small{
  opacity:1!important;
}


/* v160 — improve dark-mode contrast for the home hero */
html body.theme-dark .home-kicker{
  color:#9ed8c5!important;
}
html body.theme-dark .home-welcome h1,
html body.theme-dark.reference-ui-v99 main.home-page .home-welcome h1,
html body.theme-dark main.home-page .home-welcome h1{
  color:#eef4f1!important;
  text-shadow:0 1px 0 rgba(0,0,0,.16);
}
html body.theme-dark .home-lead,
html body.theme-dark.reference-ui-v99 main.home-page .home-lead,
html body.theme-dark main.home-page .home-lead{
  color:#c6d0cb!important;
}
html body.theme-dark .home-welcome-summary>div b{
  color:#f2f6f4!important;
}
html body.theme-dark .home-welcome-summary>div span{
  color:#c3cdc8!important;
}


/* v161 — restore comfortable edge spacing and widen narrow articles */
.article-page .article-layout{
  max-width:1440px!important;
  padding-left:34px!important;
  padding-right:34px!important;
}
.source-playbook-page .article-layout{
  grid-template-columns:minmax(0,840px) var(--academy-rail)!important;
  max-width:1360px!important;
  padding-left:34px!important;
  padding-right:34px!important;
}
.article-page .article,
.source-playbook-page .source-playbook-article{
  padding-left:10px!important;
  padding-right:10px!important;
}
.article-page .article>*,
.source-playbook-page .source-playbook-article>*{
  max-width:100%;
}
.article-page .article section,
.source-playbook-page .source-playbook-article section{
  padding-left:4px!important;
  padding-right:4px!important;
}
.article-page .article-figure,
.source-playbook-page .article-figure,
.source-playbook-page .source-journey-card.article-figure,
.source-playbook-page .source-visual-pair .article-figure,
.source-playbook-page .source-visual-wide.article-figure{
  margin-left:4px!important;
  margin-right:4px!important;
}
@media(max-width:1160px) and (min-width:901px){
  .article-page .article-layout,
  .source-playbook-page .article-layout{
    padding-left:26px!important;
    padding-right:26px!important;
  }
  .source-playbook-page .article-layout{
    grid-template-columns:minmax(0,1fr) var(--academy-rail)!important;
    max-width:1320px!important;
  }
}
@media(max-width:900px){
  .article-page .article-layout,
  .source-playbook-page .article-layout{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  .article-page .article,
  .source-playbook-page .source-playbook-article{
    padding-left:0!important;
    padding-right:0!important;
  }
  .article-page .article section,
  .source-playbook-page .source-playbook-article section{
    padding-left:0!important;
    padding-right:0!important;
  }
}


/* v162 — home search card styled like the library */
html body.reference-ui-v99 .home-search-card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  align-self:start!important;
  max-width:388px!important;
  padding:22px 20px 18px!important;
  border:1px solid #d8e1dc!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(248,251,249,.98) 100%)!important;
  box-shadow:0 18px 42px rgba(24,49,40,.08)!important;
  overflow:hidden!important;
}
html body.reference-ui-v99 .home-search-card::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:4px;
  background:linear-gradient(90deg,#1f7a5d 0%,#58a987 55%,#d6e6df 100%);
}
html body.reference-ui-v99 .home-search-label{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  margin:0 0 10px!important;
  padding:6px 10px!important;
  border:1px solid #d7e1db!important;
  border-radius:999px!important;
  background:#f3f7f4!important;
  color:#5c776d!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
}
html body.reference-ui-v99 .home-search-card h2{
  margin:0 0 10px!important;
  color:#17392f!important;
  font-size:20px!important;
  line-height:1.14!important;
  letter-spacing:-.025em!important;
}
html body.reference-ui-v99 .home-search-card>p:not(.home-search-label){
  margin:0 0 14px!important;
  color:#51635d!important;
  font-size:15px!important;
  line-height:1.58!important;
}
html body.reference-ui-v99 .home-main-search{
  margin-top:0!important;
}
html body.reference-ui-v99 .home-main-search>div{
  border:1px solid #cfdad4!important;
  border-radius:12px!important;
  background:#ffffff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;
}
html body.reference-ui-v99 .home-main-search input{
  min-height:50px!important;
  padding:0 16px!important;
  border:0!important;
  background:transparent!important;
  color:#1d3c32!important;
  font-size:15px!important;
}
html body.reference-ui-v99 .home-main-search input::placeholder{
  color:#7a8b85!important;
}
html body.reference-ui-v99 .home-main-search button{
  min-width:84px!important;
  min-height:50px!important;
  padding:0 18px!important;
  border:0!important;
  border-left:1px solid #d5dfd9!important;
  border-radius:0!important;
  background:linear-gradient(180deg,#ecf6f1 0%,#dceee6 100%)!important;
  color:#184235!important;
  font-size:14px!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
}
html body.reference-ui-v99 .home-main-search button:hover{
  background:linear-gradient(180deg,#e4f2ec 0%,#d1e8de 100%)!important;
}
html body.reference-ui-v99 .home-search-links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-top:14px!important;
  padding-top:14px!important;
  border-top:1px solid #e3ebe7!important;
}
html body.reference-ui-v99 .home-search-links a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  padding:0 10px!important;
  border:1px solid #d7e1db!important;
  border-radius:999px!important;
  background:#f7faf8!important;
  color:#365348!important;
  font-size:12.5px!important;
  line-height:1!important;
  text-decoration:none!important;
  text-underline-offset:3px!important;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease!important;
}
html body.reference-ui-v99 .home-search-links a:hover{
  background:#edf5f1!important;
  border-color:#bfd1c9!important;
  color:#163c31!important;
  transform:translateY(-1px)!important;
}
html body.theme-dark.reference-ui-v99 .home-search-card{
  border-color:#344048!important;
  background:linear-gradient(180deg,#171d22 0%,#151b20 100%)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.22)!important;
}
html body.theme-dark.reference-ui-v99 .home-search-card::before{
  background:linear-gradient(90deg,#2f8a6b 0%,#5cb48c 55%,#2d3940 100%)!important;
}
html body.theme-dark.reference-ui-v99 .home-search-label{
  border-color:#324039!important;
  background:#1c2528!important;
  color:#97bbb0!important;
}
html body.theme-dark.reference-ui-v99 .home-search-card h2{
  color:#eef3f1!important;
}
html body.theme-dark.reference-ui-v99 .home-search-card>p:not(.home-search-label){
  color:#b7c4bf!important;
}
html body.theme-dark.reference-ui-v99 .home-main-search>div{
  border-color:#364149!important;
  background:#11171c!important;
}
html body.theme-dark.reference-ui-v99 .home-main-search input{
  color:#edf3f1!important;
}
html body.theme-dark.reference-ui-v99 .home-main-search input::placeholder{
  color:#7f948c!important;
}
html body.theme-dark.reference-ui-v99 .home-main-search button{
  border-left-color:#344048!important;
  background:linear-gradient(180deg,#203229 0%,#1b2c24 100%)!important;
  color:#dff0e9!important;
}
html body.theme-dark.reference-ui-v99 .home-main-search button:hover{
  background:linear-gradient(180deg,#244033 0%,#20372c 100%)!important;
}
html body.theme-dark.reference-ui-v99 .home-search-links{
  border-top-color:#2b353d!important;
}
html body.theme-dark.reference-ui-v99 .home-search-links a{
  border-color:#334048!important;
  background:#1b2228!important;
  color:#c5d5cf!important;
}
html body.theme-dark.reference-ui-v99 .home-search-links a:hover{
  background:#202a30!important;
  border-color:#476055!important;
  color:#eef4f2!important;
}
@media (max-width:900px){
  html body.reference-ui-v99 .home-search-card{
    max-width:100%!important;
    padding:20px 18px 17px!important;
  }
  html body.reference-ui-v99 .home-main-search button{
    border-left:0!important;
    border-top:1px solid #d5dfd9!important;
    border-radius:10px!important;
  }
  html body.theme-dark.reference-ui-v99 .home-main-search button{
    border-top-color:#344048!important;
  }
}


/* v163 — calmer, more coherent dark mode for the upper home area */
html body.theme-dark.reference-ui-v99{
  --v163-shell:#0b1016;
  --v163-shell-2:#0e141b;
  --v163-panel:#131a22;
  --v163-panel-2:#161e27;
  --v163-line:#28333d;
  --v163-line-soft:#313d47;
  --v163-text:#eef3f5;
  --v163-muted:#c6d0d6;
  --v163-soft:#9aa8b1;
  --v163-warm:#d1b388;
  --v163-warm-soft:#a38763;
}
html body.theme-dark.reference-ui-v99 .global-sidebar{
  background:linear-gradient(180deg,var(--v163-shell) 0%,#0c1218 100%)!important;
  border-right:1px solid rgba(255,255,255,.06)!important;
}
html body.theme-dark.reference-ui-v99 .site-header{
  background:rgba(11,16,22,.96)!important;
  border-bottom:1px solid rgba(255,255,255,.06)!important;
  box-shadow:none!important;
}
html body.theme-dark.reference-ui-v99 .ref-topbar{
  background:transparent!important;
  color:#d8e0e4!important;
}
html body.theme-dark.reference-ui-v99 .ref-topbar-crumbs a{color:#afbbc2!important}
html body.theme-dark.reference-ui-v99 .ref-topbar-crumbs b{color:#f3f6f7!important}
html body.theme-dark.reference-ui-v99 .ref-topbar-crumbs>span{color:#60707a!important}
html body.theme-dark.reference-ui-v99 :is(.ref-top-search,.ref-theme-button,.ref-top-favorite){
  border-color:#2e3944!important;
  background:#121922!important;
  color:#e4eaed!important;
}
html body.theme-dark.reference-ui-v99 .ref-top-search input::placeholder{color:#83939c!important}
html body.theme-dark.reference-ui-v99 .ref-top-progress span,
html body.theme-dark.reference-ui-v99 .ref-top-progress b{color:#b8c4ca!important}
html body.theme-dark.reference-ui-v99 .ref-top-progress i{background:#25303a!important}
html body.theme-dark.reference-ui-v99 .ref-top-progress em{background:#9aaab3!important}

html body.theme-dark.reference-ui-v99 .global-sidebar .ref-sidebar-brand,
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-sidebar-brand b,
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-sidebar-brand strong{color:#f4f7f8!important}
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-heading{color:#8998a1!important}
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-group nav a{
  color:#dbe5e9!important;
  border:1px solid transparent!important;
}
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-group nav a:hover{
  background:rgba(255,255,255,.04)!important;
  border-color:rgba(255,255,255,.05)!important;
  color:#ffffff!important;
}
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-group nav a.is-active,
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"]{
  background:rgba(255,255,255,.05)!important;
  border-color:rgba(214,225,231,.12)!important;
  color:#f5f8f9!important;
  box-shadow:inset 3px 0 0 #b2c0c7!important;
}
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-icon,
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-group nav a.is-active .ref-nav-icon,
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"] .ref-nav-icon{
  color:#c2cdd2!important;
}
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"] .ref-nav-icon-img{opacity:1!important;filter:none!important}

html body.theme-dark.reference-ui-v99 .global-sidebar .ref-partner-card{
  border-color:#3c4852!important;
  background:linear-gradient(180deg,#141b22 0%,#10161d 100%)!important;
}
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-partner-card>span{color:#b7c2c8!important}
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-partner-card em{
  background:linear-gradient(180deg,#3d4a57 0%,#2f3b47 100%)!important;
  color:#f3f6f8!important;
}

html body.theme-dark.reference-ui-v99 main.home-page .home-welcome{
  background:linear-gradient(180deg,#0f141a 0%,#0f141a 100%)!important;
  border-color:#222c35!important;
}
html body.theme-dark.reference-ui-v99 main.home-page .home-entry-section,
html body.theme-dark.reference-ui-v99 main.home-page .home-results{
  background:#0d1218!important;
  border-color:#202932!important;
}
html body.theme-dark.reference-ui-v99 main.home-page .home-kicker{color:#c3ccd0!important}
html body.theme-dark.reference-ui-v99 main.home-page .home-welcome h1{
  color:#f3f6f8!important;
  text-shadow:none!important;
}
html body.theme-dark.reference-ui-v99 main.home-page .home-lead{
  color:#cdd6db!important;
}
html body.theme-dark.reference-ui-v99 .home-welcome-summary>div,
html body.theme-dark.reference-ui-v99 .home-search-card{
  background:var(--v163-panel)!important;
  border-color:var(--v163-line)!important;
}
html body.theme-dark.reference-ui-v99 .home-welcome-summary>div b,
html body.theme-dark.reference-ui-v99 .home-search-card h2{color:#f1f5f7!important}
html body.theme-dark.reference-ui-v99 .home-welcome-summary>div span,
html body.theme-dark.reference-ui-v99 .home-search-card>p:not(.home-search-label){color:#c1ccd2!important}
html body.theme-dark.reference-ui-v99 .home-search-label{
  border-color:#37424c!important;
  background:#161e27!important;
  color:#aebac1!important;
}
html body.theme-dark.reference-ui-v99 .home-main-search>div{
  border-color:#36424c!important;
  background:#0f151c!important;
}
html body.theme-dark.reference-ui-v99 .home-main-search input{
  background:transparent!important;
  color:#eef3f5!important;
}
html body.theme-dark.reference-ui-v99 .home-main-search button{
  border-left-color:#34404a!important;
  background:linear-gradient(180deg,#2a3640 0%,#24303a 100%)!important;
  color:#eef2f4!important;
}
html body.theme-dark.reference-ui-v99 .home-main-search button:hover{
  background:linear-gradient(180deg,#31404a 0%,#2a3741 100%)!important;
}
html body.theme-dark.reference-ui-v99 .home-search-links{border-top-color:#29343d!important}
html body.theme-dark.reference-ui-v99 .home-search-links a{
  border-color:#36414b!important;
  background:#171f27!important;
  color:#d2dce0!important;
}
html body.theme-dark.reference-ui-v99 .home-search-links a:hover{
  background:#1d2630!important;
  border-color:#44515c!important;
  color:#f1f5f7!important;
}

html body.theme-dark.reference-ui-v99 .home-actions a{
  background:#131b23!important;
  border-color:#34404a!important;
  color:#edf2f4!important;
  box-shadow:none!important;
}
html body.theme-dark.reference-ui-v99 .home-actions a:hover{
  background:#18212b!important;
  border-color:#46535e!important;
}
html body.theme-dark.reference-ui-v99 .home-actions .home-action-primary{
  background:linear-gradient(180deg,#232f38 0%,#1d2831 100%)!important;
  border-color:#42505c!important;
  color:#f4f7f8!important;
}
html body.theme-dark.reference-ui-v99 .home-actions .home-action-primary:hover{
  background:linear-gradient(180deg,#2a3842 0%,#22303a 100%)!important;
}
html body.theme-dark.reference-ui-v99 .home-actions .home-action-partner{
  background:#231c16!important;
  border-color:#625140!important;
  color:#dfc29b!important;
}
html body.theme-dark.reference-ui-v99 .home-actions .home-action-partner:hover{
  background:#2a221b!important;
  border-color:#735f4b!important;
  color:#ebd1ae!important;
}
html body.theme-dark.reference-ui-v99 .home-actions a:not(.home-action-primary):not(.home-action-partner){
  color:#d8e0e4!important;
}

html body.theme-dark.reference-ui-v99 main.home-page .home-entry-grid>a,
html body.theme-dark.reference-ui-v99 main.home-page .home-source-grid>a,
html body.theme-dark.reference-ui-v99 main.home-page .home-results-inner,
html body.theme-dark.reference-ui-v99 main.home-page .playbook-card{
  background:var(--v163-panel)!important;
  border-color:var(--v163-line)!important;
}
html body.theme-dark.reference-ui-v99 main.home-page .home-results-inner>div>p{
  color:#d4b58b!important;
}

@media (max-width:900px){
  html body.reference-ui-v99.theme-dark .site-header,
  html body.reference-ui-v99.theme-dark .ref-topbar{
    background:linear-gradient(180deg,#131b23 0%,#10171f 100%)!important;
    border-bottom-color:rgba(255,255,255,.06)!important;
  }
}


/* v164 — restore academy cap logo and keep brand name on one line */
html body .sidebar-brand,
html body.reference-ui-v99 .ref-sidebar-brand,
html body.reference-ui-v99 .ref-mobile-brand,
html body .site-header .brand{
  align-items:center!important;
}
html body .sidebar-brand-logo,
html body.reference-ui-v99 .ref-sidebar-brand img,
html body.reference-ui-v99 .ref-mobile-brand img,
html body .site-header .brand-logo{
  object-fit:contain!important;
  filter:none!important;
}
html body .sidebar-brand>span,
html body.reference-ui-v99 .ref-sidebar-brand span{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  gap:3px!important;
}
html body .sidebar-brand b,
html body.reference-ui-v99 .ref-sidebar-brand b,
html body.reference-ui-v99 .ref-mobile-brand b,
html body .site-header .brand-text b{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
html body .sidebar-brand strong,
html body.reference-ui-v99 .ref-sidebar-brand strong{display:none!important}
html body .sidebar-brand small,
html body.reference-ui-v99 .ref-sidebar-brand small{
  display:block!important;
  margin-top:0!important;
}
html body.reference-ui-v99 .ref-sidebar-brand img,
html body .global-sidebar .sidebar-brand-logo{
  width:42px!important;
  height:42px!important;
  flex:0 0 42px!important;
}
html body.reference-ui-v99 .ref-mobile-brand img,
html body .site-header .brand-logo{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
}
html body.reference-ui-v99 .ref-sidebar-brand b,
html body .global-sidebar .sidebar-brand b{
  font-size:17px!important;
  font-weight:780!important;
  letter-spacing:-.02em!important;
}
html body.reference-ui-v99 .ref-sidebar-brand small,
html body .global-sidebar .sidebar-brand small{
  font-size:8.8px!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  color:#aab8b6!important;
}
html body.reference-ui-v99 .ref-mobile-brand{
  max-width:calc(100% - 88px)!important;
  gap:8px!important;
}
html body.reference-ui-v99 .ref-mobile-brand b{
  max-width:none!important;
  font-size:14px!important;
  font-weight:780!important;
  letter-spacing:-.02em!important;
}
@media (max-width:420px){
  html body.reference-ui-v99 .ref-mobile-brand{max-width:calc(100% - 80px)!important}
  html body.reference-ui-v99 .ref-mobile-brand b{font-size:13px!important}
}


/* v165 — dark theme buttons: all action buttons use dark surfaces and light text */
html body.reference-ui-v99.theme-dark :is(
  .service-open-link,
  .service-tool-actions>a:not(.service-open-link),
  .service-inline-primary,
  .service-inline-secondary,
  .service-inline-more,
  .guide-v101-inline-link a,
  .button-primary,
  .source-partner-cta>a,
  .home-actions a,
  .home-main-search button,
  .article-cta-row a,
  .source-compare-actions a,
  .home-results nav a
){
  background:#171d23!important;
  border:1px solid #35404a!important;
  color:#eef4f2!important;
  box-shadow:none!important;
}
html body.reference-ui-v99.theme-dark :is(
  .service-open-link,
  .service-tool-actions>a:not(.service-open-link),
  .service-inline-primary,
  .service-inline-secondary,
  .service-inline-more,
  .guide-v101-inline-link a,
  .button-primary,
  .source-partner-cta>a,
  .home-actions a,
  .home-main-search button,
  .article-cta-row a,
  .source-compare-actions a,
  .home-results nav a
):hover{
  background:#1d242b!important;
  border-color:#43515d!important;
  color:#ffffff!important;
}
html body.reference-ui-v99.theme-dark .home-actions .home-action-primary{
  background:#1b2329!important;
  border-color:#45535f!important;
  color:#f2f7f6!important;
}
html body.reference-ui-v99.theme-dark .home-actions .home-action-primary:hover{
  background:#212931!important;
  border-color:#51606d!important;
}
html body.reference-ui-v99.theme-dark .home-actions .home-action-partner{
  background:#221d18!important;
  border-color:#5b4b36!important;
  color:#f1dcc0!important;
}
html body.reference-ui-v99.theme-dark .home-actions .home-action-partner:hover{
  background:#2a221c!important;
  border-color:#6c5941!important;
  color:#fff0d9!important;
}
html body.reference-ui-v99.theme-dark .home-main-search button{
  border-left-color:#35404a!important;
  font-weight:760!important;
}


/* v166 — restore breathing room from edges across articles and rail */
.article-page .article-layout{
  max-width:1480px!important;
  padding-left:42px!important;
  padding-right:42px!important;
}
.source-playbook-page .article-layout{
  grid-template-columns:minmax(0,900px) var(--academy-rail)!important;
  max-width:1420px!important;
  padding-left:42px!important;
  padding-right:42px!important;
}
.article-page .article,
.source-playbook-page .source-playbook-article{
  padding-left:14px!important;
  padding-right:14px!important;
}
.article-page .article section,
.source-playbook-page .source-playbook-article section,
.source-playbook-page .source-hero-shell,
.source-playbook-page .academy-article-hero{
  padding-left:8px!important;
  padding-right:8px!important;
}
.article-page .article-figure,
.source-playbook-page .article-figure,
.source-playbook-page .source-journey-card.article-figure,
.source-playbook-page .source-visual-pair .article-figure,
.source-playbook-page .source-visual-wide.article-figure,
.source-playbook-page .guide-v101-media,
.source-playbook-page .service-inline,
.source-playbook-page .playbook-tips,
.source-playbook-page .guide-v101-section,
.source-playbook-page .guide-v101-flow,
.source-playbook-page .guide-v101-verdict,
.source-playbook-page .guide-v101-code,
.source-playbook-page .guide-v101-media,
.source-playbook-page .ref-source-funnel{
  margin-left:8px!important;
  margin-right:8px!important;
}
.source-playbook-page :is(.playbook-checklist li,.playbook-steps>li,.platform-setup>div,.playbook-format-list>div,.traffic-diagnostic-list li,.source-tool-card,.guide-v101-grid>div,.guide-v101-steps li,.guide-v101-diagnostics a,.guide-v101-next a,.guide-v101-funnel-table>div){
  padding-left:18px!important;
  padding-right:18px!important;
}
.article-aside.enhanced-rail .aside-block,
.article-aside.enhanced-rail .rail-cover-card,
.article-aside.enhanced-rail .rail-partner-card,
.article-aside.enhanced-rail .rail-path-card,
.article-aside.enhanced-rail .rail-card{
  padding-left:16px!important;
  padding-right:16px!important;
}
.article-page .article-figure figcaption,
.source-playbook-page .article-figure figcaption{
  padding-left:18px!important;
  padding-right:18px!important;
}
@media(max-width:1260px) and (min-width:901px){
  .article-page .article-layout,
  .source-playbook-page .article-layout{
    padding-left:28px!important;
    padding-right:28px!important;
  }
  .source-playbook-page .article-layout{
    grid-template-columns:minmax(0,1fr) var(--academy-rail)!important;
    max-width:1360px!important;
  }
  .article-page .article,
  .source-playbook-page .source-playbook-article{
    padding-left:10px!important;
    padding-right:10px!important;
  }
}
@media(max-width:900px){
  .article-page .article-layout,
  .source-playbook-page .article-layout{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  .article-page .article,
  .source-playbook-page .source-playbook-article{
    padding-left:4px!important;
    padding-right:4px!important;
  }
  .article-page .article section,
  .source-playbook-page .source-playbook-article section,
  .source-playbook-page .source-hero-shell,
  .source-playbook-page .academy-article-hero{
    padding-left:0!important;
    padding-right:0!important;
  }
  .article-page .article-figure,
  .source-playbook-page .article-figure,
  .source-playbook-page .guide-v101-media,
  .source-playbook-page .service-inline,
  .source-playbook-page .playbook-tips,
  .source-playbook-page .guide-v101-section,
  .source-playbook-page .guide-v101-flow,
  .source-playbook-page .guide-v101-verdict,
  .source-playbook-page .guide-v101-code,
  .source-playbook-page .ref-source-funnel{
    margin-left:0!important;
    margin-right:0!important;
  }
}


/* v167 — darker, calmer dark theme for stronger text contrast */
html body.theme-dark{
  --v109-bg:#0a0d11!important;
  --v109-bg-soft:#0e1318!important;
  --v109-surface:#121820!important;
  --v109-surface-warm:#121820!important;
  --v109-ink:#f3f6f8!important;
  --v109-copy:#c8d0d7!important;
  --v109-muted:#9aa6b1!important;
  --v109-line:#27313b!important;
  --v109-line-strong:#34404b!important;
  --v109-green:#8fd7c1!important;
  --v109-green-dark:#77c5ad!important;
  --v109-green-soft:#16201d!important;
  --v109-warm:#d5b084!important;
  --v109-warm-soft:#241e18!important;
}
html body.theme-dark,
html body.reference-ui-v99.theme-dark,
html body.theme-dark main,
html body.reference-ui-v99.theme-dark main,
html body.theme-dark :is(.page-head,.section-landing-head,.home-welcome,.home-entry-section,.home-sources-v51,.home-results,.compact-main-v103,.article-page,.source-playbook-page){
  background:#0a0d11!important;
  background-image:none!important;
  color:#f3f6f8!important;
}
html body.theme-dark .home-welcome,
html body.theme-dark .home-intro{
  background:linear-gradient(135deg,#0c1015 0%,#0a0d11 72%,#10151b 100%)!important;
  border-color:#25303a!important;
}
html body.theme-dark :is(
  .home-search-card,.home-welcome-summary>div,.home-entry-grid>a,.home-source-grid>a,
  .playbook-card,.section-entry,.section-outcome,.section-feature>div,.section-feature>aside,
  .knowledge-map>div,.library-row,.library-card,.tool-card,.about-card,.service-card,.service-tool,
  .source-tool-card,.traffic-hub-basics>div,.traffic-next a,.handbook-intro,.playbook-facts>div,
  .playbook-checklist li,.platform-setup>div,.playbook-format-list>div,.playbook-steps>li,
  .traffic-diagnostic-list li,.source-journey-card,.article-aside.enhanced-rail .aside-block,
  .article-aside.enhanced-rail .rail-card,.rail-partner-card,.rail-path-card,.rail-cover-card,
  .service-notice,.service-task-nav a,.service-start-grid>div,.partner-next-step,
  .guide-v101-flow,.guide-v101-verdict,.guide-v101-grid>div,.guide-v101-formats>article,
  .guide-v101-timeline,.guide-v101-media,.guide-v101-link-options>div,.guide-v101-code,
  .guide-v101-steps li,.guide-v101-funnel-table>div,.guide-v101-diagnostics a,.guide-v101-next a,
  .article-figure,.calc-card,.diagnostic-card,.field-case,.notes-card,.tool-panel,
  .academy-content-section,.logic-section-v103,.related-reading,.related-primary,.related-secondary,
  .article-exit-nav a,.next-reading a,.starter-next,.service-inline
){
  background:#121820!important;
  border-color:#28323d!important;
  color:#f3f6f8!important;
  box-shadow:none!important;
}
html body.theme-dark :is(p,li,dd,figcaption,.article p,.article li,.source-playbook-page p,.source-playbook-page li,.home-welcome p,.home-intro p,.home-search-card p){
  color:#cbd3da!important;
}
html body.theme-dark :is(h1,h2,h3,h4,strong,b,.hero-badge,.section-eyebrow,.article-kicker){
  color:#f4f7f9!important;
}
html body.theme-dark :is(.muted,.meta,.article-meta,.card-meta,small,.home-search-card small,.home-search-card .inline-links a){
  color:#a8b3bd!important;
}
html body.theme-dark :is(input,select,textarea,button:not(.ref-nav-heading),.home-main-search input,.sidebar-search input){
  background-color:#0f151c!important;
  border-color:#313c47!important;
  color:#f3f6f8!important;
}
html body.theme-dark :is(input::placeholder,textarea::placeholder){color:#8794a0!important;opacity:1!important}
html body.theme-dark :is(table,thead,tbody,tr){background:#10161d!important;color:#f3f6f8!important}
html body.theme-dark th{background:#171e26!important;color:#f3f6f8!important;border-color:#313c47!important}
html body.theme-dark td{background:#111821!important;color:#c8d0d7!important;border-color:#28323d!important}
html body.theme-dark .home-results-inner{
  background:#111821!important;
  border-color:#28323d!important;
}
html body.theme-dark .home-results-inner>div>p{color:#d8b182!important}
html body.theme-dark .site-header,
html body.reference-ui-v99.theme-dark .site-header{background:#0b1015!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
html body.theme-dark .global-sidebar,
html body.reference-ui-v99.theme-dark .global-sidebar{background:#0c1116!important;border-color:#232c35!important}
html body.theme-dark .ref-topbar,
html body.theme-dark .site-header .header-inner{background:transparent!important}
html body.theme-dark .ref-top-search,
html body.theme-dark .topbar-search,
html body.theme-dark .home-search-card .search-row{
  background:#0f151c!important;
  border-color:#2c3742!important;
}
html body.theme-dark .site-footer,
html body.reference-ui-v99.theme-dark .site-footer{background:#090c10!important;border-color:#1f2730!important}


/* v168 — align section landing blocks to one inner column */
body.content-system-v103 .section-groups,
body.content-system-v103 .section-bottom-links,
body.content-system-v103 .global-mode-guidance,
body.content-system-v103 .beginner-term-note{
  padding-left:12px!important;
  padding-right:12px!important;
  box-sizing:border-box!important;
}
body.content-system-v103 .section-group{
  padding-left:0!important;
  padding-right:0!important;
}
@media (max-width:650px){
  body.content-system-v103 .section-groups,
  body.content-system-v103 .section-bottom-links,
  body.content-system-v103 .global-mode-guidance,
  body.content-system-v103 .beginner-term-note{
    padding-left:6px!important;
    padding-right:6px!important;
  }
}


/* v170 — stronger beginner-oriented 1win emphasis */
html body:not(.theme-dark) .sidebar-partner-cta,
html body:not(.theme-dark) .ref-partner-card{
  border-color:#d7c19f!important;
  background:linear-gradient(180deg,#fffaf2 0%,#f8f1e5 100%)!important;
}
html body:not(.theme-dark) .sidebar-partner-cta small,
html body:not(.theme-dark) .ref-partner-card span{
  color:#745f49!important;
}
html body.theme-dark .sidebar-partner-cta,
html body.reference-ui-v99.theme-dark .ref-partner-card{
  background:#1d1915!important;
  border-color:#5c4b39!important;
}
html body.theme-dark .sidebar-partner-cta small,
html body.reference-ui-v99.theme-dark .ref-partner-card span{
  color:#d6c2a6!important;
}

/* v171 — fix collapsed sidebar brand and partner card/rules */
@media (min-width:901px){
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar{
    padding-left:12px!important;
    padding-right:12px!important;
    overflow-x:hidden!important;
  }
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-sidebar-brand{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    width:100%!important;
    padding:0!important;
    margin:0 0 12px!important;
    border-bottom:0!important;
  }
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-sidebar-brand img{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    flex:0 0 38px!important;
    margin:0 auto!important;
    display:block!important;
  }
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-sidebar-brand span,
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-sidebar-brand b,
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-sidebar-brand small,
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-sidebar-brand strong{
    display:none!important;
  }
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-partner-card,
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-sidebar-rules,
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .sidebar-partner-cta,
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .sidebar-partner-rules,
  html body.ref-sidebar-collapsed .global-sidebar .ref-partner-card,
  html body.ref-sidebar-collapsed .global-sidebar .ref-sidebar-rules,
  html body.ref-sidebar-collapsed .global-sidebar .sidebar-partner-cta,
  html body.ref-sidebar-collapsed .global-sidebar .sidebar-partner-rules{
    display:none!important;
  }
  html body.reference-ui-v99.ref-sidebar-collapsed .global-sidebar .ref-nav-group nav a,
  html body.ref-sidebar-collapsed .global-sidebar .ref-nav-group nav a{
    min-height:38px!important;
    width:100%!important;
  }
}

/* v173 — dark numbering + restrained action accent */
html body.theme-dark :is(
  .logic-index-v103,
  .source-playbook-page .playbook-steps>li>span:first-child,
  .source-playbook-article .guide-v101-steps li>span,
  .platform-setup li>span,
  .guide-v101-grid>div>span
){
  background:#1b252e!important;
  border:1px solid #405563!important;
  color:#b8cedb!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-warning-v103 .logic-index-v103{
  background:#28231d!important;
  border-color:#5b4d3a!important;
  color:#ddc39e!important;
}

/* Action elements get a quiet blue-slate tint instead of green. */
html body.reference-ui-v99.theme-dark :is(
  .service-open-link,
  .service-tool-actions>a:not(.service-open-link),
  .service-inline-primary,
  .service-inline-secondary,
  .service-inline-more,
  .guide-v101-inline-link a,
  .button-primary,
  .source-partner-cta>a,
  .home-actions a:not(.home-action-partner),
  .home-main-search button,
  .article-cta-row a,
  .source-compare-actions a,
  .home-results nav a,
  .partner-next-step>a,
  .traffic-partner-step>a
){
  background:#202a33!important;
  border-color:#465967!important;
  color:#e6eef2!important;
  box-shadow:0 1px 0 rgba(255,255,255,.025)!important;
}
html body.reference-ui-v99.theme-dark :is(
  .service-open-link,
  .service-tool-actions>a:not(.service-open-link),
  .service-inline-primary,
  .service-inline-secondary,
  .service-inline-more,
  .guide-v101-inline-link a,
  .button-primary,
  .source-partner-cta>a,
  .home-actions a:not(.home-action-partner),
  .home-main-search button,
  .article-cta-row a,
  .source-compare-actions a,
  .home-results nav a,
  .partner-next-step>a,
  .traffic-partner-step>a
):hover{
  background:#27343e!important;
  border-color:#5a6f7e!important;
  color:#ffffff!important;
}
html body.reference-ui-v99.theme-dark .home-actions .home-action-primary,
html body.reference-ui-v99.theme-dark .article-cta-row .home-action-primary{
  background:#26333d!important;
  border-color:#5a6e7d!important;
  color:#f0f5f7!important;
}
html body.reference-ui-v99.theme-dark .home-actions .home-action-primary:hover,
html body.reference-ui-v99.theme-dark .article-cta-row .home-action-primary:hover{
  background:#2e3d48!important;
  border-color:#697f8f!important;
}
/* Partner CTA keeps a warm restrained identity so it is distinct, not loud. */
html body.reference-ui-v99.theme-dark .home-actions .home-action-partner{
  background:#29231d!important;
  border-color:#665642!important;
  color:#ead7ba!important;
}
html body.reference-ui-v99.theme-dark .home-actions .home-action-partner:hover{
  background:#302820!important;
  border-color:#76644d!important;
  color:#f4e3c9!important;
}

/* v174 — homogeneous dark article canvas */
html body.theme-dark,
html body.reference-ui-v99.theme-dark,
html body.theme-dark main,
html body.reference-ui-v99.theme-dark main,
html body.theme-dark :is(
  .compact-main-v103,
  .article-page,
  .source-playbook-page,
  .article-layout,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .academy-article-hero,
  .academy-article-hero-main,
  .academy-article-hero-copy,
  .academy-article-hero-foot,
  .source-hero-shell,
  .source-title-row,
  .page-head,
  .section-landing-head
){
  background:#0a0d11!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Normal article sections belong to the same canvas instead of looking like cards. */
html body.theme-dark :is(
  .academy-content-section,
  .logic-section-v103,
  .guide-v101-section,
  .source-playbook-article>section,
  .article>section,
  .section-groups,
  .section-group,
  .section-bottom-links,
  .related-reading,
  .related-reading-stable,
  .geo-directory,
  .geo-directory-brand
){
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Keep only subtle separators between long article sections. */
html body.theme-dark .source-playbook-article>section,
html body.theme-dark .article>section,
html body.theme-dark .academy-content-section,
html body.theme-dark .logic-section-v103{
  border-color:#222a32!important;
}

/* Content cards and functional blocks stay slightly raised for hierarchy. */
html body.theme-dark :is(
  .article-figure,
  .playbook-checklist li,
  .playbook-steps>li,
  .platform-setup>div,
  .platform-setup>li,
  .playbook-format-list>div,
  .source-tool-card,
  .guide-v101-grid>div,
  .guide-v101-formats>article,
  .guide-v101-steps li,
  .guide-v101-funnel-table>div,
  .guide-v101-diagnostics a,
  .guide-v101-next a,
  .rules-summary-grid>div,
  .rules-model-grid>section,
  .geo-chip-grid>li,
  .related-primary,
  .related-secondary,
  .article-exit-nav a,
  .next-reading a,
  table,
  .service-inline,
  .inline-note,
  .rules-action-box
){
  background:#11171e!important;
  border-color:#29333d!important;
  box-shadow:none!important;
}


/* v175 — add more breathing room around beginner note */
body.content-system-v103 .beginner-term-note{
  margin-top:30px!important;
  margin-bottom:10px!important;
}

/* v176 — finish dark source-guide canvas alignment */
html body.theme-dark .source-playbook-page .article-layout,
html body.reference-ui-v99.theme-dark .source-playbook-page .article-layout,
html body.theme-dark .source-playbook-page .source-playbook-article,
html body.reference-ui-v99.theme-dark .source-playbook-page .source-playbook-article,
html body.theme-dark .source-playbook-page .source-hero-shell,
html body.reference-ui-v99.theme-dark .source-playbook-page .source-hero-shell,
html body.theme-dark .source-playbook-page .academy-article-hero,
html body.reference-ui-v99.theme-dark .source-playbook-page .academy-article-hero,
html body.theme-dark .source-playbook-page .guide-v101-section,
html body.reference-ui-v99.theme-dark .source-playbook-page .guide-v101-section{
  background:#0a0d11!important;
  background-image:none!important;
  box-shadow:none!important;
}

html body.theme-dark .source-playbook-page .source-playbook-article,
html body.reference-ui-v99.theme-dark .source-playbook-page .source-playbook-article{
  padding-left:12px!important;
  padding-right:12px!important;
}

html body.theme-dark .source-playbook-page :is(.source-hero-shell,.academy-article-hero,.source-playbook-article>section,.guide-v101-section),
html body.reference-ui-v99.theme-dark .source-playbook-page :is(.source-hero-shell,.academy-article-hero,.source-playbook-article>section,.guide-v101-section){
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
}

html body.theme-dark .source-playbook-page :is(.article-figure,.source-journey-card.article-figure,.source-visual-pair .article-figure,.source-visual-wide.article-figure,.guide-v101-media,.service-inline,.playbook-tips,.guide-v101-flow,.guide-v101-verdict,.guide-v101-code,.ref-source-funnel),
html body.reference-ui-v99.theme-dark .source-playbook-page :is(.article-figure,.source-journey-card.article-figure,.source-visual-pair .article-figure,.source-visual-wide.article-figure,.guide-v101-media,.service-inline,.playbook-tips,.guide-v101-flow,.guide-v101-verdict,.guide-v101-code,.ref-source-funnel){
  margin-left:0!important;
  margin-right:0!important;
}

@media (max-width:900px){
  html body.theme-dark .source-playbook-page .source-playbook-article,
  html body.reference-ui-v99.theme-dark .source-playbook-page .source-playbook-article{
    padding-left:4px!important;
    padding-right:4px!important;
  }
}

/* v177 — remove leftover side gutters on source pages in dark mode */
@media (min-width:1051px){
  html body .source-playbook-page .article-layout,
  html body.reference-ui-v99 .source-playbook-page .article-layout{
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:24px 14px 72px!important;
    grid-template-columns:minmax(0,1fr) 280px!important;
    gap:32px!important;
    justify-content:stretch!important;
    align-items:start!important;
  }

  html body .source-playbook-page .source-playbook-article,
  html body.reference-ui-v99 .source-playbook-page .source-playbook-article{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }

  html body .source-playbook-page .article-aside.enhanced-rail,
  html body.reference-ui-v99 .source-playbook-page .article-aside.enhanced-rail{
    width:280px!important;
    min-width:280px!important;
    justify-self:end!important;
  }
}

html body.theme-dark .source-playbook-page,
html body.reference-ui-v99.theme-dark .source-playbook-page,
html body.theme-dark .source-playbook-page .article-layout,
html body.reference-ui-v99.theme-dark .source-playbook-page .article-layout,
html body.theme-dark .source-playbook-page .source-playbook-article,
html body.reference-ui-v99.theme-dark .source-playbook-page .source-playbook-article{
  background:#101318!important;
  background-image:none!important;
}

/* v178 — unify dark canvas and section rhythm for regular article pages too */
html body.theme-dark.article-page,
html body.reference-ui-v99.theme-dark.article-page,
html body.theme-dark.article-page .compact-main-v103,
html body.reference-ui-v99.theme-dark.article-page .compact-main-v103,
html body.theme-dark.article-page .article-layout,
html body.reference-ui-v99.theme-dark.article-page .article-layout,
html body.theme-dark.article-page .structured-article-v103,
html body.reference-ui-v99.theme-dark.article-page .structured-article-v103,
html body.theme-dark.article-page .academy-article-hero,
html body.reference-ui-v99.theme-dark.article-page .academy-article-hero,
html body.theme-dark.article-page .article-aside,
html body.reference-ui-v99.theme-dark.article-page .article-aside{
  background:#0a0d11!important;
  background-image:none!important;
  box-shadow:none!important;
}

@media (min-width:1051px){
  html body.theme-dark.article-page .article-layout,
  html body.reference-ui-v99.theme-dark.article-page .article-layout{
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:24px 14px 72px!important;
    grid-template-columns:minmax(0,1fr) 280px!important;
    gap:32px!important;
    align-items:start!important;
  }

  html body.theme-dark.article-page .structured-article-v103,
  html body.reference-ui-v99.theme-dark.article-page .structured-article-v103{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }

  html body.theme-dark.article-page .article-aside.enhanced-rail,
  html body.reference-ui-v99.theme-dark.article-page .article-aside.enhanced-rail{
    width:280px!important;
    min-width:280px!important;
    justify-self:end!important;
  }
}

html body.theme-dark.article-page :is(.academy-article-hero,.academy-content-section,.logic-section-v103,.article-depth,.related-reading,.article-exit-nav,.next-reading,.article-author),
html body.reference-ui-v99.theme-dark.article-page :is(.academy-article-hero,.academy-content-section,.logic-section-v103,.article-depth,.related-reading,.article-exit-nav,.next-reading,.article-author){
  margin-left:0!important;
  margin-right:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

html body.theme-dark.article-page :is(.academy-content-section,.logic-section-v103,.article-depth,.related-reading),
html body.reference-ui-v99.theme-dark.article-page :is(.academy-content-section,.logic-section-v103,.article-depth,.related-reading){
  padding-left:0!important;
  padding-right:0!important;
  border-color:#222a32!important;
}

html body.theme-dark.article-page .academy-content-section + .academy-content-section,
html body.theme-dark.article-page .academy-content-section + .article-depth,
html body.theme-dark.article-page .article-depth + .related-reading,
html body.reference-ui-v99.theme-dark.article-page .academy-content-section + .academy-content-section,
html body.reference-ui-v99.theme-dark.article-page .academy-content-section + .article-depth,
html body.reference-ui-v99.theme-dark.article-page .article-depth + .related-reading{
  margin-top:0!important;
}

html body.theme-dark.article-page .related-reading,
html body.reference-ui-v99.theme-dark.article-page .related-reading{
  border-top:1px solid #222a32!important;
  padding-top:20px!important;
}

html body.theme-dark.article-page .article-exit-nav,
html body.reference-ui-v99.theme-dark.article-page .article-exit-nav{
  border-top:1px solid #222a32!important;
  padding-top:18px!important;
}

html body.theme-dark.article-page .article-exit-nav a,
html body.reference-ui-v99.theme-dark.article-page .article-exit-nav a,
html body.theme-dark.article-page .related-primary,
html body.reference-ui-v99.theme-dark.article-page .related-primary,
html body.theme-dark.article-page .related-secondary,
html body.reference-ui-v99.theme-dark.article-page .related-secondary{
  background:#11171e!important;
  border-color:#29333d!important;
}

/* v179 — remove all leftover dark slabs and keep one uniform canvas */
html body.theme-dark,
html body.reference-ui-v99.theme-dark,
html body.theme-dark main,
html body.reference-ui-v99.theme-dark main,
html body.theme-dark :is(
  .compact-main-v103,
  .section-landing,
  .source-playbook-page,
  .article-page,
  .article-layout,
  .structured-article-v103,
  .source-playbook-article,
  .article,
  .page-head,
  .section-landing-head,
  .source-hero-shell,
  .academy-article-hero,
  .academy-article-hero-main,
  .academy-article-hero-copy,
  .academy-article-hero-foot
),
html body.reference-ui-v99.theme-dark :is(
  .compact-main-v103,
  .section-landing,
  .source-playbook-page,
  .article-page,
  .article-layout,
  .structured-article-v103,
  .source-playbook-article,
  .article,
  .page-head,
  .section-landing-head,
  .source-hero-shell,
  .academy-article-hero,
  .academy-article-hero-main,
  .academy-article-hero-copy,
  .academy-article-hero-foot
 ){
  background:#0a0d11!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Large wrappers should blend into the same dark page instead of looking like separate slabs. */
html body.theme-dark :is(
  .section-groups,
  .section-group,
  .section-group-head,
  .section-entry-grid,
  .section-bottom-links,
  .global-mode-guidance,
  .beginner-term-note,
  .academy-content-section,
  .logic-section-v103,
  .article-depth,
  .related-reading,
  .article-exit-nav,
  .next-reading,
  .article-author,
  .source-playbook-article>section,
  .guide-v101-section
),
html body.reference-ui-v99.theme-dark :is(
  .section-groups,
  .section-group,
  .section-group-head,
  .section-entry-grid,
  .section-bottom-links,
  .global-mode-guidance,
  .beginner-term-note,
  .academy-content-section,
  .logic-section-v103,
  .article-depth,
  .related-reading,
  .article-exit-nav,
  .next-reading,
  .article-author,
  .source-playbook-article>section,
  .guide-v101-section
 ){
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Keep separators, but remove the lighter fill behind long content zones. */
html body.theme-dark :is(
  .section-group,
  .academy-content-section,
  .logic-section-v103,
  .article-depth,
  .related-reading,
  .article-author,
  .source-playbook-article>section,
  .guide-v101-section
),
html body.reference-ui-v99.theme-dark :is(
  .section-group,
  .academy-content-section,
  .logic-section-v103,
  .article-depth,
  .related-reading,
  .article-author,
  .source-playbook-article>section,
  .guide-v101-section
 ){
  border-color:#222a32!important;
}

/* Source pages: explicitly kill the slightly lighter background introduced by previous layout patches. */
html body.theme-dark .source-playbook-page,
html body.theme-dark .source-playbook-page .article-layout,
html body.theme-dark .source-playbook-page .source-playbook-article,
html body.reference-ui-v99.theme-dark .source-playbook-page,
html body.reference-ui-v99.theme-dark .source-playbook-page .article-layout,
html body.reference-ui-v99.theme-dark .source-playbook-page .source-playbook-article{
  background:#0a0d11!important;
  background-image:none!important;
}

/* Section landing pages: the area between cards should be the same canvas color too. */
html body.theme-dark.content-system-v103 :is(
  main.compact-main-v103,
  main.compact-main-v103 > .wrap,
  main.compact-main-v103 .wrap,
  .section-landing > .wrap
),
html body.reference-ui-v99.theme-dark.content-system-v103 :is(
  main.compact-main-v103,
  main.compact-main-v103 > .wrap,
  main.compact-main-v103 .wrap,
  .section-landing > .wrap
 ){
  background-color:transparent!important;
  background-image:none!important;
}

/* v180 — remove remaining green accents in dark theme and switch to neutral/brass palette */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --dark-accent:#d6b27a;
  --dark-accent-strong:#c79a5a;
  --dark-accent-soft:#f0dfbe;
  --dark-copy:#c8d0d8;
  --dark-muted:#9aa3ad;
  --dark-surface:#131920;
  --dark-surface-2:#171d24;
  --dark-border:#29323c;
  --dark-border-strong:#4a3f31;
  --dark-callout:#211a14;
  --dark-code:#d9be8d;
}

html body.theme-dark a,
html body.reference-ui-v99.theme-dark a{
  color:var(--dark-accent-soft)!important;
}
html body.theme-dark a:hover,
html body.reference-ui-v99.theme-dark a:hover{
  color:#f5e8cf!important;
}

html body.theme-dark :is(p,li,dd,dt,small,figcaption,.lead,.article-meta,.breadcrumbs,.service-kicker,.source-tool-card-copy,.rail-tools a small,.rail-related-visual span,.article-author p,.handbook-intro p,.playbook-card>p,.article p,.article li,.source-playbook-article p,.source-playbook-article li,.sidebar-partner-cta small,.ref-partner-card span,.rules-summary-grid span,.geo-directory-head>span,.partner-specific-box>span,.article-sources li,.next-reading span,.library-meta,.breadcrumbs a),
html body.reference-ui-v99.theme-dark :is(p,li,dd,dt,small,figcaption,.lead,.article-meta,.breadcrumbs,.service-kicker,.source-tool-card-copy,.rail-tools a small,.rail-related-visual span,.article-author p,.handbook-intro p,.playbook-card>p,.article p,.article li,.source-playbook-article p,.source-playbook-article li,.sidebar-partner-cta small,.ref-partner-card span,.rules-summary-grid span,.geo-directory-head>span,.partner-specific-box>span,.article-sources li,.next-reading span,.library-meta,.breadcrumbs a){
  color:var(--dark-copy)!important;
}

html body.theme-dark :is(.logic-action-v103,.partner-specific-box,.rules-action-box,.geo-directory,.geo-directory-brand,.geo-guideline-link,.guide-v101-callout:not(.warning),.service-inline,.playbook-tips,.guide-v101-flow,.guide-v101-verdict,.guide-v101-code,.ref-source-funnel,.rules-summary-grid>div,.rules-model-grid section,.geo-chip-grid li,.article-sources,.term-tooltip,.article-figure,.service-task-nav a,.source-next-links a,.service-tool,.service-card,.service-tool-actions>a,.playbook-card,.next-reading a,.related-primary,.related-secondary,.article-exit-nav a,.sidebar-partner-cta,.ref-partner-card,.sidebar-partner-rules,.home-search-card,.catalog-search,.home-results-inner,.rail-partner-card,.rail-path-card,.rail-cover-card,.source-journey-card,.source-tool-card,.playbook-facts>div,.playbook-checklist li,.platform-setup>div,.playbook-format-list>div,.guide-v101-formats article,.guide-v101-timeline,.guide-v101-media,.guide-v101-link-options>div,.guide-v101-steps li,.guide-v101-funnel-table>div,.guide-v101-diagnostics a,.guide-v101-next a),
html body.reference-ui-v99.theme-dark :is(.logic-action-v103,.partner-specific-box,.rules-action-box,.geo-directory,.geo-directory-brand,.geo-guideline-link,.guide-v101-callout:not(.warning),.service-inline,.playbook-tips,.guide-v101-flow,.guide-v101-verdict,.guide-v101-code,.ref-source-funnel,.rules-summary-grid>div,.rules-model-grid section,.geo-chip-grid li,.article-sources,.term-tooltip,.article-figure,.service-task-nav a,.source-next-links a,.service-tool,.service-card,.service-tool-actions>a,.playbook-card,.next-reading a,.related-primary,.related-secondary,.article-exit-nav a,.sidebar-partner-cta,.ref-partner-card,.sidebar-partner-rules,.home-search-card,.catalog-search,.home-results-inner,.rail-partner-card,.rail-path-card,.rail-cover-card,.source-journey-card,.source-tool-card,.playbook-facts>div,.playbook-checklist li,.platform-setup>div,.playbook-format-list>div,.guide-v101-formats article,.guide-v101-timeline,.guide-v101-media,.guide-v101-link-options>div,.guide-v101-steps li,.guide-v101-funnel-table>div,.guide-v101-diagnostics a,.guide-v101-next a){
  background:var(--dark-surface)!important;
  background-image:none!important;
  border-color:var(--dark-border)!important;
  color:#eef2f5!important;
}

html body.theme-dark :is(.logic-explain-v103,.logic-analysis-v103,.academy-content-section,.logic-section-v103,.article-depth,.related-reading,.article-author,.source-playbook-article>section,.guide-v101-section,.section-entry,.section-outcome,.section-feature,.section-card,.section-groups,.section-bottom-links),
html body.reference-ui-v99.theme-dark :is(.logic-explain-v103,.logic-analysis-v103,.academy-content-section,.logic-section-v103,.article-depth,.related-reading,.article-author,.source-playbook-article>section,.guide-v101-section,.section-entry,.section-outcome,.section-feature,.section-card,.section-groups,.section-bottom-links){
  background:transparent!important;
  background-image:none!important;
  border-color:#222a32!important;
}

html body.theme-dark :is(.logic-warning-v103,.inline-note,.playbook-risk,.guide-v101-callout.warning,.warning-note),
html body.reference-ui-v99.theme-dark :is(.logic-warning-v103,.inline-note,.playbook-risk,.guide-v101-callout.warning,.warning-note){
  background:var(--dark-callout)!important;
  border-color:var(--dark-border-strong)!important;
  color:#e7d6b5!important;
}

html body.theme-dark :is(.logic-index-v103,.section-index,.guide-step-index,.journey-step-index,.flow-step-index,.rail-progress span,.playbook-checklist li:before,.service-task-nav .step-index),
html body.reference-ui-v99.theme-dark :is(.logic-index-v103,.section-index,.guide-step-index,.journey-step-index,.flow-step-index,.rail-progress span,.playbook-checklist li:before,.service-task-nav .step-index){
  background:#2a231c!important;
  border-color:#6a5338!important;
  color:var(--dark-accent-soft)!important;
}

html body.theme-dark :is(.term-help,.plain-link,.text-cta,.partner-specific-box>a,.geo-guideline-link,.source-toolkit-helper a,.source-toolkit-all a,.service-tool>a,.article-cta-row>a,.playbook-card>a,.home-results-inner>div>p,.sidebar-partner-cta span,.sidebar-partner-rules,.rules-summary-grid b,.rule-model-badge,.geo-chip-grid li small,.calc output,.calc-head>span),
html body.reference-ui-v99.theme-dark :is(.term-help,.plain-link,.text-cta,.partner-specific-box>a,.geo-guideline-link,.source-toolkit-helper a,.source-toolkit-all a,.service-tool>a,.article-cta-row>a,.playbook-card>a,.home-results-inner>div>p,.sidebar-partner-cta span,.sidebar-partner-rules,.rules-summary-grid b,.rule-model-badge,.geo-chip-grid li small,.calc output,.calc-head>span){
  color:var(--dark-accent-soft)!important;
}
html body.theme-dark .term-help,
html body.reference-ui-v99.theme-dark .term-help{
  border-bottom-color:#9b7a4a!important;
}
html body.theme-dark .term-help:after,
html body.reference-ui-v99.theme-dark .term-help:after{
  border-color:#8f7248!important;
  color:#d6b27a!important;
}
html body.theme-dark .term-help:hover,
html body.theme-dark .term-help:focus-visible,
html body.theme-dark .term-help[aria-expanded="true"],
html body.reference-ui-v99.theme-dark .term-help:hover,
html body.reference-ui-v99.theme-dark .term-help:focus-visible,
html body.reference-ui-v99.theme-dark .term-help[aria-expanded="true"]{
  color:#f3e1bf!important;
  background:rgba(182,145,90,.10)!important;
}

html body.theme-dark :is(pre,code),
html body.reference-ui-v99.theme-dark :is(pre,code){
  background:#141b22!important;
  color:var(--dark-code)!important;
}

html body.theme-dark :is(.source-section-tabs a.is-current,.source-section-tabs a:first-child,.rail-all-tools,.service-mark,.rail-tool-mark,.source-playbook-page .playbook-aside li a:hover),
html body.reference-ui-v99.theme-dark :is(.source-section-tabs a.is-current,.source-section-tabs a:first-child,.rail-all-tools,.service-mark,.rail-tool-mark,.source-playbook-page .playbook-aside li a:hover){
  color:var(--dark-accent-soft)!important;
  border-color:#6d563a!important;
}
html body.theme-dark .source-section-tabs a.is-current,
html body.theme-dark .source-section-tabs a:first-child,
html body.reference-ui-v99.theme-dark .source-section-tabs a.is-current,
html body.reference-ui-v99.theme-dark .source-section-tabs a:first-child{
  border-bottom-color:#a98453!important;
}

html body.theme-dark .sidebar-partner-cta,
html body.reference-ui-v99.theme-dark .sidebar-partner-cta{
  background:#1d1712!important;
  border-color:#574331!important;
}
html body.theme-dark .sidebar-partner-cta b,
html body.reference-ui-v99.theme-dark .sidebar-partner-cta b{
  color:#f2f4f6!important;
}
html body.theme-dark .sidebar-partner-rules,
html body.reference-ui-v99.theme-dark .sidebar-partner-rules{
  background:#151a20!important;
  border-color:#303943!important;
}

html body.theme-dark .home-action-primary,
html body.theme-dark .article-cta-row .home-action-primary,
html body.reference-ui-v99.theme-dark .home-action-primary,
html body.reference-ui-v99.theme-dark .article-cta-row .home-action-primary{
  background:#3f3428!important;
  border-color:#6d563a!important;
  color:#f4ead8!important;
}
html body.theme-dark .home-action-primary:hover,
html body.theme-dark .article-cta-row .home-action-primary:hover,
html body.reference-ui-v99.theme-dark .home-action-primary:hover,
html body.reference-ui-v99.theme-dark .article-cta-row .home-action-primary:hover{
  background:#4a3d2f!important;
}
html body.theme-dark :is(.home-action-secondary,.home-action-partner,.article-cta-row>a,.service-task-nav a,.source-next-links a,.article-exit-nav a,.next-reading a),
html body.reference-ui-v99.theme-dark :is(.home-action-secondary,.home-action-partner,.article-cta-row>a,.service-task-nav a,.source-next-links a,.article-exit-nav a,.next-reading a){
  background:#151b22!important;
  border-color:#394451!important;
  color:#eef2f4!important;
}

html body.theme-dark :is(.brand-mark,.nav-all,.nav-basics,.nav-economics,.nav-analytics,.nav-traffic,.nav-practice,.nav-glossary,.nav-tools),
html body.reference-ui-v99.theme-dark :is(.brand-mark,.nav-all,.nav-basics,.nav-economics,.nav-analytics,.nav-traffic,.nav-practice,.nav-glossary,.nav-tools){
  background:#1d2430!important;
  border-color:#33404d!important;
  color:#f2f4f6!important;
}

/* v181 — calmer dark theme: graphite canvas, softer contrast, restrained accents */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --tl-dark-bg:#0d1117;
  --tl-dark-bg-2:#10151b;
  --tl-dark-panel:#131920;
  --tl-dark-panel-2:#161d25;
  --tl-dark-line:#28313a;
  --tl-dark-line-soft:#222a32;
  --tl-dark-text:#e7ecef;
  --tl-dark-copy:#b9c3ca;
  --tl-dark-muted:#8e9aa4;
  --tl-dark-accent:#9eb3c1;
  --tl-dark-accent-2:#b8c8d2;
  --tl-dark-warm:#c4a47b;
  --tl-dark-warm-bg:#1d1915;
  --tl-dark-warm-line:#514333;
}

/* One calm canvas. */
html body.theme-dark,
html body.reference-ui-v99.theme-dark,
html body.theme-dark main,
html body.reference-ui-v99.theme-dark main,
html body.theme-dark :is(.compact-main-v103,.section-landing,.article-page,.source-playbook-page,.article-layout,.article,.structured-article-v103,.source-playbook-article,.page-head,.section-landing-head,.source-hero-shell,.academy-article-hero,.academy-article-hero-main,.academy-article-hero-copy,.academy-article-hero-foot),
html body.reference-ui-v99.theme-dark :is(.compact-main-v103,.section-landing,.article-page,.source-playbook-page,.article-layout,.article,.structured-article-v103,.source-playbook-article,.page-head,.section-landing-head,.source-hero-shell,.academy-article-hero,.academy-article-hero-main,.academy-article-hero-copy,.academy-article-hero-foot){
  background:var(--tl-dark-bg)!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Header/sidebar should feel like the same product, not separate colored strips. */
html body.theme-dark .site-header,
html body.reference-ui-v99.theme-dark .site-header{
  background:#0f141a!important;
  border-bottom:1px solid var(--tl-dark-line)!important;
  box-shadow:none!important;
}
html body.theme-dark .global-sidebar,
html body.reference-ui-v99.theme-dark .global-sidebar{
  background:#0f141a!important;
  border-right:1px solid var(--tl-dark-line)!important;
  box-shadow:none!important;
}
html body.theme-dark .site-footer,
html body.reference-ui-v99.theme-dark .site-footer{
  background:#0b0f14!important;
  border-color:#252d35!important;
}

/* Typography: bright enough to read, not stark white. */
html body.theme-dark :is(h1,h2,h3,h4,strong,b,.article-label,.hero-badge,.section-eyebrow,.article-kicker,.source-title-copy h1,.service-tool h3,.playbook-card h2),
html body.reference-ui-v99.theme-dark :is(h1,h2,h3,h4,strong,b,.article-label,.hero-badge,.section-eyebrow,.article-kicker,.source-title-copy h1,.service-tool h3,.playbook-card h2){
  color:var(--tl-dark-text)!important;
}
html body.theme-dark :is(p,li,dd,dt,figcaption,.lead,.article p,.article li,.source-playbook-article p,.source-playbook-article li,.section-entry p,.section-outcome p,.service-tool p,.tool-card p,.about-card p),
html body.reference-ui-v99.theme-dark :is(p,li,dd,dt,figcaption,.lead,.article p,.article li,.source-playbook-article p,.source-playbook-article li,.section-entry p,.section-outcome p,.service-tool p,.tool-card p,.about-card p){
  color:var(--tl-dark-copy)!important;
}
html body.theme-dark :is(small,.muted,.meta,.article-meta,.card-meta,.breadcrumbs,.service-kicker,.rail-tools a small,.rail-related-visual span),
html body.reference-ui-v99.theme-dark :is(small,.muted,.meta,.article-meta,.card-meta,.breadcrumbs,.service-kicker,.rail-tools a small,.rail-related-visual span){
  color:var(--tl-dark-muted)!important;
}

/* Links: cool neutral rather than green or bright gold. */
html body.theme-dark a,
html body.reference-ui-v99.theme-dark a{
  color:var(--tl-dark-accent-2)!important;
}
html body.theme-dark a:hover,
html body.reference-ui-v99.theme-dark a:hover{
  color:#dbe4e9!important;
}
html body.theme-dark :is(.plain-link,.text-cta,.partner-specific-box>a,.geo-guideline-link,.source-toolkit-helper a,.source-toolkit-all a,.service-tool>a,.playbook-card>a,.section-entry span),
html body.reference-ui-v99.theme-dark :is(.plain-link,.text-cta,.partner-specific-box>a,.geo-guideline-link,.source-toolkit-helper a,.source-toolkit-all a,.service-tool>a,.playbook-card>a,.section-entry span){
  color:#aebfca!important;
}

/* Cards: only one small step lighter than the page. */
html body.theme-dark :is(
  .home-search-card,.home-welcome-summary>div,.home-entry-grid>a,.home-source-grid>a,.home-results-inner,
  .section-entry,.section-outcome,.section-feature>div,.section-feature>aside,.knowledge-map>div,
  .library-row,.library-card,.tool-card,.about-card,.service-card,.service-tool,.playbook-card,
  .source-tool-card,.source-journey-card,.playbook-facts>div,.playbook-checklist li,.playbook-steps>li,
  .platform-setup>div,.platform-setup>li,.playbook-format-list>div,.traffic-diagnostic-list li,
  .guide-v101-grid>div,.guide-v101-formats>article,.guide-v101-timeline,.guide-v101-media,
  .guide-v101-link-options>div,.guide-v101-code,.guide-v101-steps li,.guide-v101-funnel-table>div,
  .guide-v101-diagnostics a,.guide-v101-next a,.article-figure,.calc-card,.diagnostic-card,.field-case,
  .notes-card,.tool-panel,.related-primary,.related-secondary,.next-reading a,.service-inline,
  .rules-summary-grid>div,.rules-model-grid>section,.geo-chip-grid>li
),
html body.reference-ui-v99.theme-dark :is(
  .home-search-card,.home-welcome-summary>div,.home-entry-grid>a,.home-source-grid>a,.home-results-inner,
  .section-entry,.section-outcome,.section-feature>div,.section-feature>aside,.knowledge-map>div,
  .library-row,.library-card,.tool-card,.about-card,.service-card,.service-tool,.playbook-card,
  .source-tool-card,.source-journey-card,.playbook-facts>div,.playbook-checklist li,.playbook-steps>li,
  .platform-setup>div,.platform-setup>li,.playbook-format-list>div,.traffic-diagnostic-list li,
  .guide-v101-grid>div,.guide-v101-formats>article,.guide-v101-timeline,.guide-v101-media,
  .guide-v101-link-options>div,.guide-v101-code,.guide-v101-steps li,.guide-v101-funnel-table>div,
  .guide-v101-diagnostics a,.guide-v101-next a,.article-figure,.calc-card,.diagnostic-card,.field-case,
  .notes-card,.tool-panel,.related-primary,.related-secondary,.next-reading a,.service-inline,
  .rules-summary-grid>div,.rules-model-grid>section,.geo-chip-grid>li
){
  background:var(--tl-dark-panel)!important;
  background-image:none!important;
  border-color:var(--tl-dark-line)!important;
  box-shadow:none!important;
}

/* Large article sections stay flat. */
html body.theme-dark :is(.academy-content-section,.logic-section-v103,.article-depth,.source-playbook-article>section,.guide-v101-section,.section-groups,.section-group,.section-bottom-links,.related-reading,.article-author,.article-exit-nav),
html body.reference-ui-v99.theme-dark :is(.academy-content-section,.logic-section-v103,.article-depth,.source-playbook-article>section,.guide-v101-section,.section-groups,.section-group,.section-bottom-links,.related-reading,.article-author,.article-exit-nav){
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border-color:var(--tl-dark-line-soft)!important;
}

/* Informational callouts should not become large colored banners. */
html body.theme-dark :is(.inline-note,.playbook-risk,.guide-v101-callout,.warning-note,.rules-action-box,.partner-specific-box,.service-notice,.partner-next-step),
html body.reference-ui-v99.theme-dark :is(.inline-note,.playbook-risk,.guide-v101-callout,.warning-note,.rules-action-box,.partner-specific-box,.service-notice,.partner-next-step){
  background:#16191d!important;
  background-image:none!important;
  border-color:#443a2f!important;
  color:#c9c1b5!important;
  box-shadow:none!important;
}
html body.theme-dark :is(.inline-note,.playbook-risk,.guide-v101-callout,.warning-note,.rules-action-box,.partner-specific-box,.service-notice,.partner-next-step) :is(p,li,dd),
html body.reference-ui-v99.theme-dark :is(.inline-note,.playbook-risk,.guide-v101-callout,.warning-note,.rules-action-box,.partner-specific-box,.service-notice,.partner-next-step) :is(p,li,dd){
  color:#c5bdb1!important;
}

/* Numbering: quiet steel-blue, no neon green. */
html body.theme-dark :is(.logic-index-v103,.source-playbook-page .playbook-steps>li>span:first-child,.source-playbook-article .guide-v101-steps li>span,.platform-setup li>span,.guide-v101-grid>div>span),
html body.reference-ui-v99.theme-dark :is(.logic-index-v103,.source-playbook-page .playbook-steps>li>span:first-child,.source-playbook-article .guide-v101-steps li>span,.platform-setup li>span,.guide-v101-grid>div>span){
  background:#18222b!important;
  border-color:#3a4b59!important;
  color:#b7cad6!important;
  box-shadow:none!important;
}
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-warning-v103 .logic-index-v103,
html body.reference-ui-v99.theme-dark.content-system-v103 .structured-article-v103 .logic-warning-v103 .logic-index-v103{
  background:#221e19!important;
  border-color:#544632!important;
  color:#cfb183!important;
}

/* Term hints: neutral warm-gray instead of green. */
html body.theme-dark .term-help,
html body.reference-ui-v99.theme-dark .term-help{
  color:#d5dde1!important;
  border-bottom-color:#70624e!important;
  background:transparent!important;
}
html body.theme-dark .term-help:after,
html body.reference-ui-v99.theme-dark .term-help:after{
  border-color:#70624e!important;
  color:#bba17a!important;
}
html body.theme-dark .term-help:hover,
html body.theme-dark .term-help:focus-visible,
html body.theme-dark .term-help[aria-expanded="true"],
html body.reference-ui-v99.theme-dark .term-help:hover,
html body.reference-ui-v99.theme-dark .term-help:focus-visible,
html body.reference-ui-v99.theme-dark .term-help[aria-expanded="true"]{
  color:#eceff1!important;
  background:rgba(180,157,120,.07)!important;
}

/* Buttons: visible, but no bright fill. */
html body.theme-dark :is(
  .service-open-link,.service-tool-actions>a,.service-inline-primary,.service-inline-secondary,.service-inline-more,
  .guide-v101-inline-link a,.button-primary,.source-partner-cta>a,.home-actions a:not(.home-action-partner),
  .home-main-search button,.article-cta-row a,.source-compare-actions a,.home-results nav a,.traffic-next a,
  .section-bottom-links a,.guide-v101-next a,.guide-v101-diagnostics a,.service-task-nav a,.source-next-links a
),
html body.reference-ui-v99.theme-dark :is(
  .service-open-link,.service-tool-actions>a,.service-inline-primary,.service-inline-secondary,.service-inline-more,
  .guide-v101-inline-link a,.button-primary,.source-partner-cta>a,.home-actions a:not(.home-action-partner),
  .home-main-search button,.article-cta-row a,.source-compare-actions a,.home-results nav a,.traffic-next a,
  .section-bottom-links a,.guide-v101-next a,.guide-v101-diagnostics a,.service-task-nav a,.source-next-links a
){
  background:#1a232c!important;
  border-color:#3b4a57!important;
  color:#dce6eb!important;
  box-shadow:none!important;
}
html body.theme-dark :is(
  .service-open-link,.service-tool-actions>a,.service-inline-primary,.service-inline-secondary,.service-inline-more,
  .guide-v101-inline-link a,.button-primary,.source-partner-cta>a,.home-actions a:not(.home-action-partner),
  .home-main-search button,.article-cta-row a,.source-compare-actions a,.home-results nav a,.traffic-next a,
  .section-bottom-links a,.guide-v101-next a,.guide-v101-diagnostics a,.service-task-nav a,.source-next-links a
):hover,
html body.reference-ui-v99.theme-dark :is(
  .service-open-link,.service-tool-actions>a,.service-inline-primary,.service-inline-secondary,.service-inline-more,
  .guide-v101-inline-link a,.button-primary,.source-partner-cta>a,.home-actions a:not(.home-action-partner),
  .home-main-search button,.article-cta-row a,.source-compare-actions a,.home-results nav a,.traffic-next a,
  .section-bottom-links a,.guide-v101-next a,.guide-v101-diagnostics a,.service-task-nav a,.source-next-links a
):hover{
  background:#202c36!important;
  border-color:#4a5c69!important;
  color:#f0f4f6!important;
}

/* 1win may remain identifiable, but quietly. */
html body.theme-dark :is(.sidebar-partner-cta,.ref-partner-card,.home-action-partner),
html body.reference-ui-v99.theme-dark :is(.sidebar-partner-cta,.ref-partner-card,.home-action-partner){
  background:#1b1815!important;
  border-color:#4b4033!important;
  color:#d8c5aa!important;
  box-shadow:none!important;
}
html body.theme-dark :is(.sidebar-partner-cta,.ref-partner-card,.home-action-partner) :is(span,small),
html body.reference-ui-v99.theme-dark :is(.sidebar-partner-cta,.ref-partner-card,.home-action-partner) :is(span,small){
  color:#b9a98f!important;
}

/* Navigation and tabs: no green active state. */
html body.theme-dark .source-section-tabs a,
html body.reference-ui-v99.theme-dark .source-section-tabs a{
  color:#8f9ca6!important;
  background:transparent!important;
}
html body.theme-dark .source-section-tabs a:is(.is-current,:first-child),
html body.reference-ui-v99.theme-dark .source-section-tabs a:is(.is-current,:first-child){
  color:#c1ced6!important;
  border-bottom-color:#657986!important;
  background:transparent!important;
}
html body.theme-dark .source-playbook-page .playbook-aside li a:hover,
html body.reference-ui-v99.theme-dark .source-playbook-page .playbook-aside li a:hover{
  color:#d5dfe4!important;
}
html body.theme-dark .rail-progress span,
html body.reference-ui-v99.theme-dark .rail-progress span{
  background:#768996!important;
}

/* Right rail: reduce contrast with article. */
html body.theme-dark .article-aside.enhanced-rail,
html body.reference-ui-v99.theme-dark .article-aside.enhanced-rail{
  background:transparent!important;
  border-color:var(--tl-dark-line)!important;
}
html body.theme-dark .article-aside.enhanced-rail :is(.aside-block,.rail-card,.rail-partner-card,.rail-path-card,.rail-cover-card),
html body.reference-ui-v99.theme-dark .article-aside.enhanced-rail :is(.aside-block,.rail-card,.rail-partner-card,.rail-path-card,.rail-cover-card){
  background:#121820!important;
  border-color:#2a333d!important;
  box-shadow:none!important;
}

/* Inputs and search fields. */
html body.theme-dark :is(input,select,textarea,.sidebar-search input,.home-main-search input,.ref-top-search),
html body.reference-ui-v99.theme-dark :is(input,select,textarea,.sidebar-search input,.home-main-search input,.ref-top-search){
  background:#121820!important;
  border-color:#313b45!important;
  color:#dfe5e8!important;
  box-shadow:none!important;
}
html body.theme-dark :is(input,textarea)::placeholder,
html body.reference-ui-v99.theme-dark :is(input,textarea)::placeholder{
  color:#77838c!important;
  opacity:1!important;
}

/* Tables/code use the same understated hierarchy. */
html body.theme-dark table,
html body.reference-ui-v99.theme-dark table{background:#11171e!important;border-color:#29323c!important}
html body.theme-dark th,
html body.reference-ui-v99.theme-dark th{background:#161d25!important;color:#dce3e7!important;border-color:#2d3741!important}
html body.theme-dark td,
html body.reference-ui-v99.theme-dark td{background:#121820!important;color:#b9c3ca!important;border-color:#29323c!important}
html body.theme-dark :is(pre,code),
html body.reference-ui-v99.theme-dark :is(pre,code){background:#121820!important;color:#c9b18d!important}

/* Decorative icons/marks should support the page rather than dominate it. */
html body.theme-dark :is(.service-mark,.rail-tool-mark,.source-hero-icon,.ref-nav-icon,.sidebar-menu a:before),
html body.reference-ui-v99.theme-dark :is(.service-mark,.rail-tool-mark,.source-hero-icon,.ref-nav-icon,.sidebar-menu a:before){
  background:#171e26!important;
  border-color:#303b45!important;
  color:#a6b6c0!important;
}


/* ======================================================================
   v182 — dark theme uniform cleanup
   Calm, solid dark surfaces, even side gutters, no green accents.
   ====================================================================== */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --tl-dark-bg:#0b1015;
  --tl-dark-panel:#111821;
  --tl-dark-panel-2:#151d27;
  --tl-dark-border:#273240;
  --tl-dark-border-strong:#334153;
  --tl-dark-text:#eef2f6;
  --tl-dark-muted:#c6ced7;
  --tl-dark-soft:#9ca6b1;
  --tl-dark-accent:#d5c19a;
  --tl-dark-accent-strong:#e3d0ab;
  background:var(--tl-dark-bg)!important;
  color:var(--tl-dark-text)!important;
}

/* Remove the decorative background grid, blobs and side glow in dark theme. */
html body.theme-dark :is(main,.site-footer,.page-head,.section-landing-head,.home-welcome,.home-entry-section,.home-sources-v51,.home-results,.compact-main-v103,.article-page,.source-playbook-page,.traffic-hub-page,.services-page,.academy-article-hero,.source-hero-shell){
  background:var(--tl-dark-bg)!important;
  background-image:none!important;
  box-shadow:none!important;
}
html body.theme-dark :is(main,.compact-main-v103,.article-page,.source-playbook-page,.traffic-hub-page,.services-page,.page-head,.section-landing-head,.home-welcome,.home-entry-section,.home-sources-v51,.home-results)::before,
html body.theme-dark :is(main,.compact-main-v103,.article-page,.source-playbook-page,.traffic-hub-page,.services-page,.page-head,.section-landing-head,.home-welcome,.home-entry-section,.home-sources-v51,.home-results)::after,
html body.reference-ui-v99.theme-dark :is(main,.article-page,.source-playbook-page)::before,
html body.reference-ui-v99.theme-dark :is(main,.article-page,.source-playbook-page)::after{
  content:none!important;
  display:none!important;
  background:none!important;
}

/* Keep all article canvases uniform and solid. */
html body.theme-dark :is(.article-page .article,.source-playbook-page .source-playbook-article,.structured-article-v103,.academy-article-hero-shell),
html body.reference-ui-v99.theme-dark :is(.article-page .article,.source-playbook-page .source-playbook-article){
  background:var(--tl-dark-panel)!important;
  background-image:none!important;
  border:1px solid var(--tl-dark-border)!important;
  border-radius:14px!important;
  color:var(--tl-dark-text)!important;
  box-shadow:none!important;
  padding:28px!important;
}
html body.theme-dark :is(.source-playbook-article>section,.article-page .article>section:not(.related-reading),.academy-content-section,.logic-section-v103),
html body.reference-ui-v99.theme-dark :is(.source-playbook-article>section,.article-page .article>section:not(.related-reading),.academy-content-section,.logic-section-v103){
  background:transparent!important;
  background-image:none!important;
  margin:0!important;
  padding:24px 0!important;
  border-top:1px solid var(--tl-dark-border)!important;
  border-bottom:0!important;
  border-left:0!important;
  border-right:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
html body.theme-dark :is(.source-playbook-article>section:first-of-type,.article-page .article>section:first-of-type),
html body.reference-ui-v99.theme-dark :is(.source-playbook-article>section:first-of-type,.article-page .article>section:first-of-type){
  border-top:0!important;
  padding-top:18px!important;
}

/* Equal side gutters on all dark pages. */
html body.theme-dark.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap,
html body.theme-dark.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap,
html body.theme-dark.content-system-v103 main.section-landing > .wrap,
html body.theme-dark.content-system-v103 main.section-landing .wrap{
  width:min(calc(100% - 56px),var(--v104-regular-content))!important;
  max-width:var(--v104-regular-content)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
html body.theme-dark :is(.article-page .article-layout,.source-playbook-page .article-layout),
html body.reference-ui-v99.theme-dark .article-layout{
  width:min(calc(100% - 56px),1260px)!important;
  max-width:1260px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:28px!important;
  padding-right:28px!important;
  box-sizing:border-box!important;
}

/* Neutralize all tinted blocks and cards in dark mode. */
html body.theme-dark :is(
  .home-search-card,.home-welcome-summary>div,.home-entry-grid>a,.home-source-grid>a,.home-results-inner,
  .playbook-card,.section-entry,.section-outcome,.section-feature>div,.section-feature>aside,.section-groups,.section-group,
  .knowledge-map>div,.library-row,.library-card,.tool-card,.about-card,.service-card,.service-tool,.section-card,
  .source-tool-card,.traffic-hub-basics>div,.traffic-next a,.handbook-intro,.playbook-facts>div,
  .playbook-checklist li,.platform-setup>div,.playbook-format-list>div,.playbook-steps>li,.traffic-diagnostic-list li,
  .source-journey-card,.article-aside.enhanced-rail,.article-aside.enhanced-rail .aside-block,
  .article-aside.enhanced-rail .rail-card,.rail-partner-card,.rail-path-card,.rail-cover-card,
  .service-notice,.service-task-nav a,.service-start-grid>div,.partner-next-step,
  .guide-v101-flow,.guide-v101-verdict,.guide-v101-grid>div,.guide-v101-formats>article,
  .guide-v101-timeline,.guide-v101-media,.guide-v101-link-options>div,.guide-v101-code,
  .guide-v101-steps li,.guide-v101-funnel-table>div,.guide-v101-diagnostics a,.guide-v101-next a,
  .article-figure,.calc-card,.diagnostic-card,.field-case,.notes-card,.tool-panel,
  .related-reading,.related-primary,.related-secondary,.article-exit-nav a,.next-reading a,.starter-next,
  .service-inline,.inline-note,.playbook-risk,.guide-v101-callout,.warning-note,.service-warning,
  .logic-action-v103,.logic-analysis-v103,.logic-warning-v103,.logic-explain-v103,
  .partner-specific-box.logic-section-v103,.source-compare-note,.ref-tip-strip,
  .compare-table > div,.source-compare-row > div,.rules-model-grid section,.rules-summary-grid > div,
  .geo-directory,.geo-chip-grid li,.geo-guideline-link,.rail-tools a,.playbook-method li,
  .playbook-template-list span,.playbook-decision article,.ref-track-card,.ref-metrics-card,.ref-metrics-row>div,
  .ref-format-card,.ref-connected-tools a,.source-compare-actions a,.article-cta-row a,.playbook-head-actions a,
  .playbook-official a,.bookmark-button,.saved-link,.rail-quick,.rail-quick a,.playbook-faq details,
  .home-actions a,.section-bottom-links a,.home-main-search button,.sidebar-partner-cta,.sidebar-partner-rules
),
html body.reference-ui-v99.theme-dark :is(
  .home-search-card,.home-welcome-summary>div,.home-entry-grid>a,.home-source-grid>a,.home-results-inner,
  .playbook-card,.section-entry,.section-outcome,.section-feature>div,.section-feature>aside,.section-groups,.section-group,
  .knowledge-map>div,.library-row,.library-card,.tool-card,.about-card,.service-card,.service-tool,.section-card,
  .source-tool-card,.traffic-hub-basics>div,.traffic-next a,.handbook-intro,.playbook-facts>div,
  .playbook-checklist li,.platform-setup>div,.playbook-format-list>div,.playbook-steps>li,.traffic-diagnostic-list li,
  .source-journey-card,.article-aside.enhanced-rail,.article-aside.enhanced-rail .aside-block,
  .article-aside.enhanced-rail .rail-card,.rail-partner-card,.rail-path-card,.rail-cover-card,
  .service-notice,.service-task-nav a,.service-start-grid>div,.partner-next-step,
  .guide-v101-flow,.guide-v101-verdict,.guide-v101-grid>div,.guide-v101-formats>article,
  .guide-v101-timeline,.guide-v101-media,.guide-v101-link-options>div,.guide-v101-code,
  .guide-v101-steps li,.guide-v101-funnel-table>div,.guide-v101-diagnostics a,.guide-v101-next a,
  .article-figure,.calc-card,.diagnostic-card,.field-case,.notes-card,.tool-panel,
  .related-reading,.related-primary,.related-secondary,.article-exit-nav a,.next-reading a,.starter-next,
  .service-inline,.inline-note,.playbook-risk,.guide-v101-callout,.warning-note,.service-warning,
  .logic-action-v103,.logic-analysis-v103,.logic-warning-v103,.logic-explain-v103,
  .partner-specific-box.logic-section-v103,.source-compare-note,.ref-tip-strip,
  .compare-table > div,.source-compare-row > div,.rules-model-grid section,.rules-summary-grid > div,
  .geo-directory,.geo-chip-grid li,.geo-guideline-link,.rail-tools a,.playbook-method li,
  .playbook-template-list span,.playbook-decision article,.ref-track-card,.ref-metrics-card,.ref-metrics-row>div,
  .ref-format-card,.ref-connected-tools a,.source-compare-actions a,.article-cta-row a,.playbook-head-actions a,
  .playbook-official a,.bookmark-button,.saved-link,.rail-quick,.rail-quick a,.playbook-faq details,
  .home-actions a,.section-bottom-links a,.home-main-search button,.sidebar-partner-cta,.sidebar-partner-rules
){
  background:var(--tl-dark-panel)!important;
  background-image:none!important;
  border-color:var(--tl-dark-border)!important;
  color:var(--tl-dark-text)!important;
  box-shadow:none!important;
}
html body.theme-dark :is(.logic-action-v103,.logic-analysis-v103,.logic-warning-v103,.logic-explain-v103,.inline-note,.playbook-risk,.warning-note,.service-warning,.guide-v101-callout,.ref-tip-strip,.source-compare-note){
  border-left:3px solid var(--tl-dark-border-strong)!important;
}

/* Tables and content shells should stay solid and readable. */
html body.theme-dark :is(table,thead,tbody,tr),
html body.reference-ui-v99.theme-dark :is(table,thead,tbody,tr){
  background:var(--tl-dark-panel)!important;
  color:var(--tl-dark-text)!important;
}
html body.theme-dark th,
html body.reference-ui-v99.theme-dark th{
  background:var(--tl-dark-panel-2)!important;
  color:var(--tl-dark-text)!important;
  border-color:var(--tl-dark-border-strong)!important;
}
html body.theme-dark td,
html body.reference-ui-v99.theme-dark td{
  background:var(--tl-dark-panel)!important;
  color:var(--tl-dark-muted)!important;
  border-color:var(--tl-dark-border)!important;
}

/* Remove green text and replace with restrained warm accent. */
html body.theme-dark :is(a,.plain-link,.text-cta,.rail-all-tools,.sidebar-partner-cta span,.section-bottom-links a,.home-actions a,.guide-v101-next a,.guide-v101-diagnostics a,.article-exit-nav a,.next-reading a,.bookmark-button,.saved-link),
html body.reference-ui-v99.theme-dark :is(a,.plain-link,.text-cta,.rail-all-tools,.sidebar-partner-cta span,.section-bottom-links a,.home-actions a,.guide-v101-next a,.guide-v101-diagnostics a,.article-exit-nav a,.next-reading a,.bookmark-button,.saved-link){
  color:var(--tl-dark-accent)!important;
}
html body.theme-dark :is(a:hover,.plain-link:hover,.text-cta:hover,.rail-all-tools:hover,.section-bottom-links a:hover,.home-actions a:hover,.guide-v101-next a:hover,.guide-v101-diagnostics a:hover,.article-exit-nav a:hover,.next-reading a:hover,.bookmark-button:hover,.saved-link:hover),
html body.reference-ui-v99.theme-dark :is(a:hover,.plain-link:hover,.text-cta:hover,.rail-all-tools:hover,.section-bottom-links a:hover,.home-actions a:hover,.guide-v101-next a:hover,.guide-v101-diagnostics a:hover,.article-exit-nav a:hover,.next-reading a:hover,.bookmark-button:hover,.saved-link:hover){
  color:var(--tl-dark-accent-strong)!important;
}
html body.theme-dark :is(p,li,dd,dt,small,figcaption,.lead,.article-meta,.breadcrumbs,.service-kicker,.source-tool-card-copy,.article-author p,.handbook-intro p,.playbook-card>p,.article p,.article li,.source-playbook-article p,.source-playbook-article li,.section-entry p,.section-outcome p,.guide-v101-formats p,.guide-v101-grid p,.guide-v101-verdict p,.guide-v101-flow p,.related-card p,.library-row p,.service-tool p,.tool-card p,.about-card p,.playbook-faq details p,.rail-quick a small,.source-compare-row > div,.compare-table > div,.rules-summary-grid p,.rules-model-grid li,.geo-chip-grid li,.geo-chip-grid li small,.geo-guideline-link span,.article td,.article dd,.source-playbook-article dd,.playbook-facts dt),
html body.reference-ui-v99.theme-dark :is(p,li,dd,dt,small,figcaption,.lead,.article-meta,.breadcrumbs,.service-kicker,.source-tool-card-copy,.article-author p,.handbook-intro p,.playbook-card>p,.article p,.article li,.source-playbook-article p,.source-playbook-article li,.section-entry p,.section-outcome p,.guide-v101-formats p,.guide-v101-grid p,.guide-v101-verdict p,.guide-v101-flow p,.related-card p,.library-row p,.service-tool p,.tool-card p,.about-card p,.playbook-faq details p,.rail-quick a small,.source-compare-row > div,.compare-table > div,.rules-summary-grid p,.rules-model-grid li,.geo-chip-grid li,.geo-chip-grid li small,.geo-guideline-link span,.article td,.article dd,.source-playbook-article dd,.playbook-facts dt){
  color:var(--tl-dark-muted)!important;
}
html body.theme-dark :is(h1,h2,h3,h4,strong,b,.article-label,.footer-brand,.source-title-copy h1,.service-tool h3,.playbook-card h2,.section-group-head h2,.source-playbook-article h1,.source-playbook-article h2,.article-page .article h1,.article-page .article h2,.article th,.rail-tools a b,.rules-summary-grid b,.rules-model-grid h3,.geo-directory b,.playbook-faq summary,.home-results-inner h2),
html body.reference-ui-v99.theme-dark :is(h1,h2,h3,h4,strong,b,.article-label,.footer-brand,.source-title-copy h1,.service-tool h3,.playbook-card h2,.section-group-head h2,.source-playbook-article h1,.source-playbook-article h2,.article-page .article h1,.article-page .article h2,.article th,.rail-tools a b,.rules-summary-grid b,.rules-model-grid h3,.geo-directory b,.playbook-faq summary,.home-results-inner h2){
  color:var(--tl-dark-text)!important;
}

/* Tone down number badges and circular counters. */
html body.theme-dark :is(.check-list li:before,.playbook-checklist li:before,.rail-quick a:before,.playbook-faq summary::before,.sidebar-menu a:before,.reading-state-badge,.section-outcome li:before,.diagnostic-flag b),
html body.reference-ui-v99.theme-dark :is(.check-list li:before,.playbook-checklist li:before,.rail-quick a:before,.playbook-faq summary::before,.sidebar-menu a:before,.reading-state-badge,.section-outcome li:before,.diagnostic-flag b){
  color:#e8edf2!important;
}
html body.theme-dark :is(.playbook-checklist li:before,.rail-quick a:before),
html body.reference-ui-v99.theme-dark :is(.playbook-checklist li:before,.rail-quick a:before){
  background:var(--tl-dark-panel-2)!important;
}

/* Inputs and buttons stay dark, readable and not flashy. */
html body.theme-dark :is(input,select,textarea,button:not(.ref-nav-heading),.home-main-search input,.sidebar-search input),
html body.reference-ui-v99.theme-dark :is(input,select,textarea,button:not(.ref-nav-heading),.home-main-search input,.sidebar-search input){
  background:var(--tl-dark-panel)!important;
  border-color:var(--tl-dark-border)!important;
  color:var(--tl-dark-text)!important;
}
html body.theme-dark :is(input,select,textarea,.sidebar-search input,.home-main-search input)::placeholder,
html body.reference-ui-v99.theme-dark :is(input,select,textarea,.sidebar-search input,.home-main-search input)::placeholder{
  color:var(--tl-dark-soft)!important;
}
html body.theme-dark :is(.theme-toggle,.sidebar-menu a:hover,.sidebar-menu a[aria-current="page"],.sidebar-menu a.is-active,.sidebar-menu a.active,.header-about-link:hover,.ref-theme-button:hover,.ref-top-favorite:hover),
html body.reference-ui-v99.theme-dark :is(.theme-toggle,.sidebar-menu a:hover,.sidebar-menu a[aria-current="page"],.sidebar-menu a.is-active,.sidebar-menu a.active,.header-about-link:hover,.ref-theme-button:hover,.ref-top-favorite:hover){
  background:var(--tl-dark-panel-2)!important;
  border-color:var(--tl-dark-border-strong)!important;
  color:var(--tl-dark-text)!important;
}

/* Keep text away from card edges. */
html body.theme-dark :is(.section-entry,.section-outcome,.section-feature>div,.section-feature>aside,.playbook-card,.home-entry-grid>a,.home-source-grid>a,.knowledge-map>div,.service-card,.service-tool,.library-row,.tool-card,.about-card,.section-card,.source-tool-card,.source-journey-card,.guide-v101-formats>article,.guide-v101-grid>div,.guide-v101-media,.guide-v101-link-options>div,.guide-v101-flow,.guide-v101-verdict,.guide-v101-code,.playbook-faq details,.related-reading,.related-primary,.related-secondary,.field-case,.tool-panel,.calc-card,.diagnostic-card,.notes-card,.article-figure,.home-search-card,.home-welcome-summary>div,.sidebar-partner-cta,.sidebar-partner-rules),
html body.reference-ui-v99.theme-dark :is(.section-entry,.section-outcome,.section-feature>div,.section-feature>aside,.playbook-card,.home-entry-grid>a,.home-source-grid>a,.knowledge-map>div,.service-card,.service-tool,.library-row,.tool-card,.about-card,.section-card,.source-tool-card,.source-journey-card,.guide-v101-formats>article,.guide-v101-grid>div,.guide-v101-media,.guide-v101-link-options>div,.guide-v101-flow,.guide-v101-verdict,.guide-v101-code,.playbook-faq details,.related-reading,.related-primary,.related-secondary,.field-case,.tool-panel,.calc-card,.diagnostic-card,.notes-card,.article-figure,.home-search-card,.home-welcome-summary>div,.sidebar-partner-cta,.sidebar-partner-rules){
  padding-left:22px!important;
  padding-right:22px!important;
}

@media (max-width: 900px){
  html body.theme-dark :is(.article-page .article-layout,.source-playbook-page .article-layout),
  html body.reference-ui-v99.theme-dark .article-layout{
    width:calc(100% - 28px)!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  html body.theme-dark :is(.article-page .article,.source-playbook-page .source-playbook-article,.structured-article-v103,.academy-article-hero-shell),
  html body.reference-ui-v99.theme-dark :is(.article-page .article,.source-playbook-page .source-playbook-article){
    padding:20px!important;
    border-radius:12px!important;
  }
  html body.theme-dark :is(.source-playbook-article>section,.article-page .article>section:not(.related-reading),.academy-content-section,.logic-section-v103),
  html body.reference-ui-v99.theme-dark :is(.source-playbook-article>section,.article-page .article>section:not(.related-reading),.academy-content-section,.logic-section-v103){
    padding:18px 0!important;
  }
  html body.theme-dark.content-system-v103 main.compact-main-v103:not(.source-playbook-page) > .wrap,
  html body.theme-dark.content-system-v103 main.compact-main-v103:not(.source-playbook-page) .wrap,
  html body.theme-dark.content-system-v103 main.section-landing > .wrap,
  html body.theme-dark.content-system-v103 main.section-landing .wrap{
    width:calc(100% - 28px)!important;
  }
}

/* v183 — narrower reading column for traffic-source playbooks */
@media (min-width:1051px){
  :root{
    --v183-source-article:850px;
    --v183-source-rail:270px;
    --v183-source-gap:28px;
  }

  html body .source-playbook-page .article-layout,
  html body.reference-ui-v99 .source-playbook-page .article-layout,
  html body.theme-dark .source-playbook-page .article-layout,
  html body.reference-ui-v99.theme-dark .source-playbook-page .article-layout{
    width:min(calc(100% - 56px),calc(var(--v183-source-article) + var(--v183-source-rail) + var(--v183-source-gap)))!important;
    max-width:calc(var(--v183-source-article) + var(--v183-source-rail) + var(--v183-source-gap))!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    grid-template-columns:minmax(0,var(--v183-source-article)) var(--v183-source-rail)!important;
    gap:var(--v183-source-gap)!important;
    justify-content:center!important;
  }

  html body .source-playbook-page .source-playbook-article,
  html body.reference-ui-v99 .source-playbook-page .source-playbook-article,
  html body.theme-dark .source-playbook-page .source-playbook-article,
  html body.reference-ui-v99.theme-dark .source-playbook-page .source-playbook-article{
    width:100%!important;
    max-width:var(--v183-source-article)!important;
    justify-self:start!important;
  }

  html body .source-playbook-page .article-aside.enhanced-rail,
  html body.reference-ui-v99 .source-playbook-page .article-aside.enhanced-rail{
    width:var(--v183-source-rail)!important;
    max-width:var(--v183-source-rail)!important;
  }
}

/* v184 — restore regular article width; keep narrow layout only for traffic-source playbooks */
@media (min-width:1051px){
  html body.theme-dark.article-page main:not(.source-playbook-page) .article-layout,
  html body.reference-ui-v99.theme-dark.article-page main:not(.source-playbook-page) .article-layout{
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:24px 14px 72px!important;
    grid-template-columns:minmax(0,1fr) 280px!important;
    gap:32px!important;
    justify-content:stretch!important;
    align-items:start!important;
  }

  html body.theme-dark.article-page main:not(.source-playbook-page) .article,
  html body.reference-ui-v99.theme-dark.article-page main:not(.source-playbook-page) .article{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
  }

  html body.theme-dark.article-page main:not(.source-playbook-page) .article-aside.enhanced-rail,
  html body.reference-ui-v99.theme-dark.article-page main:not(.source-playbook-page) .article-aside.enhanced-rail{
    width:280px!important;
    min-width:280px!important;
    max-width:280px!important;
    justify-self:end!important;
  }
}


/* v185 — equal small side gutters on all non-home pages */
:root{
  --tl-page-gutter: 14px;
  --tl-page-gutter-tablet: 12px;
  --tl-page-gutter-mobile: 10px;
}

html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .global-mode-guidance.wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .beginner-term-note.wrap,
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow,
html body.content-system-v103 main.source-playbook-page > .wrap.article-layout{
  width:calc(100% - (var(--tl-page-gutter) * 2))!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}

html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap > :is(.overline,h1,p,.glossary-search),
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow > :is(.overline,h1,p,.glossary-search),
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap > :is(.overline,h1,p),
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow > :is(.overline,h1,p),
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow > *{
  margin-left:0!important;
  margin-right:0!important;
}

@media (max-width: 1100px){
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .global-mode-guidance.wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .beginner-term-note.wrap,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow,
  html body.content-system-v103 main.source-playbook-page > .wrap.article-layout{
    width:calc(100% - (var(--tl-page-gutter-tablet) * 2))!important;
  }
}

@media (max-width: 650px){
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .global-mode-guidance.wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .beginner-term-note.wrap,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow,
  html body.content-system-v103 main.source-playbook-page > .wrap.article-layout{
    width:calc(100% - (var(--tl-page-gutter-mobile) * 2))!important;
  }
}

/* ======================================================================
   v186 — dark theme: no decorative circles, no green text anywhere
   ====================================================================== */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --forest:#c8d0d8!important;
  --forest-2:#161c22!important;
  --forest-soft:#1b222a!important;
  --green:#c8d0d8!important;
  --green-dark:#aab5bf!important;
  --academy-green:#c8d0d8!important;
  --academy-green-soft:#1b222a!important;
  --v109-green:#c8d0d8!important;
  --v109-green-dark:#aab5bf!important;
  --v109-green-soft:#1b222a!important;
  --source-accent:#c8d0d8!important;
  --tl-dark-accent:#d3c3a4!important;
  --tl-dark-accent-2:#d3c3a4!important;
  --tl-dark-accent-strong:#eadabc!important;
}

/* Remove the old desktop decorative strips with circles/grid entirely. */
@media (min-width:1180px){
  html body.theme-dark::before,
  html body.theme-dark::after,
  html body.reference-ui-v99.theme-dark::before,
  html body.reference-ui-v99.theme-dark::after{
    content:none!important;
    display:none!important;
    width:0!important;
    background:none!important;
    background-image:none!important;
    border:0!important;
    opacity:0!important;
  }
}

/* Neutral text palette. No green typography in the dark theme. */
html body.theme-dark :is(
  p,li,dd,dt,figcaption,small,label,
  .lead,.article-meta,.breadcrumbs,.service-kicker,.source-tool-card-copy,
  .article-author p,.handbook-intro p,.playbook-card>p,.section-entry p,
  .section-outcome p,.guide-v101-formats p,.guide-v101-grid p,
  .guide-v101-verdict p,.guide-v101-flow p,.related-card p,.library-row p,
  .service-tool p,.tool-card p,.about-card p,.rail-quick a small,
  .playbook-faq details p,.rules-summary-grid p,.rules-model-grid li,
  .geo-chip-grid li,.geo-chip-grid li small,.article td,.playbook-facts dt,
  .ref-top-progress span,.ref-top-progress b,.ref-sidebar-footer span
),
html body.reference-ui-v99.theme-dark :is(
  p,li,dd,dt,figcaption,small,label,
  .lead,.article-meta,.breadcrumbs,.service-kicker,.source-tool-card-copy,
  .article-author p,.handbook-intro p,.playbook-card>p,.section-entry p,
  .section-outcome p,.guide-v101-formats p,.guide-v101-grid p,
  .guide-v101-verdict p,.guide-v101-flow p,.related-card p,.library-row p,
  .service-tool p,.tool-card p,.about-card p,.rail-quick a small,
  .playbook-faq details p,.rules-summary-grid p,.rules-model-grid li,
  .geo-chip-grid li,.geo-chip-grid li small,.article td,.playbook-facts dt,
  .ref-top-progress span,.ref-top-progress b,.ref-sidebar-footer span
){
  color:#c6ced6!important;
}

html body.theme-dark :is(
  h1,h2,h3,h4,strong,b,.article-label,.overline,.section-eyebrow,
  .footer-brand,.source-title-copy h1,.service-tool h3,.playbook-card h2,
  .section-group-head h2,.source-playbook-article h1,.source-playbook-article h2,
  .article-page .article h1,.article-page .article h2,.article th,
  .rail-tools a b,.rules-summary-grid b,.rules-model-grid h3,.geo-directory b,
  .playbook-faq summary,.home-results-inner h2
),
html body.reference-ui-v99.theme-dark :is(
  h1,h2,h3,h4,strong,b,.article-label,.overline,.section-eyebrow,
  .footer-brand,.source-title-copy h1,.service-tool h3,.playbook-card h2,
  .section-group-head h2,.source-playbook-article h1,.source-playbook-article h2,
  .article-page .article h1,.article-page .article h2,.article th,
  .rail-tools a b,.rules-summary-grid b,.rules-model-grid h3,.geo-directory b,
  .playbook-faq summary,.home-results-inner h2
){
  color:#eef2f5!important;
}

/* Links and clickable text use one restrained warm-neutral accent. */
html body.theme-dark :is(
  a,.plain-link,.text-cta,.term-help,.rail-all-tools,.sidebar-partner-cta span,
  .section-bottom-links a,.home-actions a,.guide-v101-next a,
  .guide-v101-diagnostics a,.article-exit-nav a,.next-reading a,
  .bookmark-button,.saved-link,.service-tool>a,.source-toolkit-helper a,
  .source-toolkit-all a,.partner-specific-box>a,.geo-guideline-link,
  .playbook-card>a,.source-section-tabs a.is-current,.source-section-tabs a:first-child
),
html body.reference-ui-v99.theme-dark :is(
  a,.plain-link,.text-cta,.term-help,.rail-all-tools,.sidebar-partner-cta span,
  .section-bottom-links a,.home-actions a,.guide-v101-next a,
  .guide-v101-diagnostics a,.article-exit-nav a,.next-reading a,
  .bookmark-button,.saved-link,.service-tool>a,.source-toolkit-helper a,
  .source-toolkit-all a,.partner-specific-box>a,.geo-guideline-link,
  .playbook-card>a,.source-section-tabs a.is-current,.source-section-tabs a:first-child
){
  color:#d3c3a4!important;
}
html body.theme-dark :is(a:hover,.plain-link:hover,.text-cta:hover,.term-help:hover),
html body.reference-ui-v99.theme-dark :is(a:hover,.plain-link:hover,.text-cta:hover,.term-help:hover){
  color:#eadabc!important;
}

/* Navigation remains neutral, not beige or green. */
html body.theme-dark :is(
  .sidebar-menu a,.sidebar-secondary a,.ref-nav-group nav a,
  .ref-topbar-crumbs a,.ref-topbar-crumbs b,.ref-mobile-brand,
  .ref-mobile-brand b,.ref-sidebar-brand,.ref-sidebar-brand b
),
html body.reference-ui-v99.theme-dark :is(
  .sidebar-menu a,.sidebar-secondary a,.ref-nav-group nav a,
  .ref-topbar-crumbs a,.ref-topbar-crumbs b,.ref-mobile-brand,
  .ref-mobile-brand b,.ref-sidebar-brand,.ref-sidebar-brand b
){
  color:#dce3e8!important;
}
html body.theme-dark :is(
  .sidebar-menu a:hover,.sidebar-menu a.active,.sidebar-menu a.is-active,
  .sidebar-menu a[aria-current="page"],.ref-nav-group nav a:hover,
  .ref-nav-group nav a.is-active,.ref-nav-group nav a[aria-current="page"]
),
html body.reference-ui-v99.theme-dark :is(
  .sidebar-menu a:hover,.sidebar-menu a.active,.sidebar-menu a.is-active,
  .sidebar-menu a[aria-current="page"],.ref-nav-group nav a:hover,
  .ref-nav-group nav a.is-active,.ref-nav-group nav a[aria-current="page"]
){
  color:#f2f5f7!important;
}

/* Remove green from badges, counters, icons and pseudo-elements too. */
html body.theme-dark :is(
  .logic-index-v103,.reading-state-badge,.rule-model-badge,.service-primary-badge,
  .mode-recommended-tool>.big-tool-head:before,.about-route-v114 li:before,
  .playbook-checklist li:before,.rail-quick a:before,.playbook-faq summary::before,
  .section-outcome li:before,.global-sidebar .sidebar-menu a:before,
  .ref-nav-icon,.service-mark,.rail-tool-mark,.ref-metrics-row span
),
html body.reference-ui-v99.theme-dark :is(
  .logic-index-v103,.reading-state-badge,.rule-model-badge,.service-primary-badge,
  .mode-recommended-tool>.big-tool-head:before,.about-route-v114 li:before,
  .playbook-checklist li:before,.rail-quick a:before,.playbook-faq summary::before,
  .section-outcome li:before,.global-sidebar .sidebar-menu a:before,
  .ref-nav-icon,.service-mark,.rail-tool-mark,.ref-metrics-row span
){
  color:#cbd3da!important;
  border-color:#3b4652!important;
}
html body.theme-dark :is(
  .logic-index-v103,.reading-state-badge,.rule-model-badge,.service-primary-badge,
  .about-route-v114 li:before,.playbook-checklist li:before,.rail-quick a:before,
  .section-outcome li:before,.service-mark,.rail-tool-mark
),
html body.reference-ui-v99.theme-dark :is(
  .logic-index-v103,.reading-state-badge,.rule-model-badge,.service-primary-badge,
  .about-route-v114 li:before,.playbook-checklist li:before,.rail-quick a:before,
  .section-outcome li:before,.service-mark,.rail-tool-mark
){
  background:#19212a!important;
  background-image:none!important;
}

html body.theme-dark .source-section-tabs a.is-current,
html body.theme-dark .source-section-tabs a:first-child,
html body.reference-ui-v99.theme-dark .source-section-tabs a.is-current,
html body.reference-ui-v99.theme-dark .source-section-tabs a:first-child{
  border-bottom-color:#6f7d89!important;
}

html body.theme-dark :is(pre,code),
html body.reference-ui-v99.theme-dark :is(pre,code){
  color:#d3c3a4!important;
}

/* No green decorative fills inside dark callouts or partner blocks. */
html body.theme-dark :is(
  .logic-action-v103,.partner-specific-box,.home-results-inner,.sidebar-partner-cta,
  .about-nav-note-v114,.geo-directory-brand,.geo-guideline-link
),
html body.reference-ui-v99.theme-dark :is(
  .logic-action-v103,.partner-specific-box,.home-results-inner,.sidebar-partner-cta,
  .about-nav-note-v114,.geo-directory-brand,.geo-guideline-link
){
  background:#111820!important;
  background-image:none!important;
  border-color:#29333d!important;
}

/* v187 — symmetric wider inner layout on all pages except home */
@media (min-width: 1051px){
  main:not(.home-page) > .wrap,
  .page-head .wrap,
  body:not(.home-page) .site-footer .wrap{
    max-width: none !important;
    width: auto !important;
    margin-left: 24px !important;
    margin-right: 24px !important;
  }

  main:not(.home-page) > .wrap.article-layout{
    grid-template-columns: minmax(0, 1fr) 252px !important;
    gap: 28px !important;
    align-items: start !important;
  }

  main:not(.home-page) > .wrap.article-layout > .article,
  main:not(.home-page) > .wrap.article-layout > article{
    min-width: 0 !important;
  }

  main:not(.home-page) > .wrap.article-layout > .article-aside,
  main:not(.home-page) > .wrap.article-layout > aside{
    width: auto !important;
    min-width: 0 !important;
  }
}

/* ======================================================================
   v188 — one uniform dark content canvas everywhere
   Remove leftover structural slabs/background differences in dark mode.
   ====================================================================== */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --tl-uniform-dark:#0d1218;
  --tl-uniform-panel:#141b23;
  --tl-uniform-border:#2b3540;
  background:var(--tl-uniform-dark)!important;
  background-image:none!important;
}

/* Entire content canvas uses one single background color. */
html body.theme-dark :is(
  main,
  main.compact-main-v103,
  main.article-page,
  main.source-playbook-page,
  main.traffic-hub-page,
  main.services-page,
  .article-layout,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing-head,
  .section-landing,
  .academy-article-hero,
  .academy-article-hero-main,
  .academy-article-hero-copy,
  .academy-article-hero-foot,
  .academy-article-hero-shell,
  .source-hero-shell,
  .source-title-row,
  .source-title-copy,
  .section-groups,
  .section-group,
  .section-group-head,
  .section-bottom-links,
  .library-shell,
  .library-main,
  .catalog-bar,
  .journal-reading,
  .global-mode-guidance,
  .beginner-term-note,
  .related-reading,
  .article-author,
  .article-exit-nav,
  .next-reading,
  .about-hero-v114,
  .about-layout-v114,
  .traffic-page,
  .services-page,
  .notes-page,
  .tool-suite
),
html body.reference-ui-v99.theme-dark :is(
  main,
  main.compact-main-v103,
  main.article-page,
  main.source-playbook-page,
  main.traffic-hub-page,
  main.services-page,
  .article-layout,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing-head,
  .section-landing,
  .academy-article-hero,
  .academy-article-hero-main,
  .academy-article-hero-copy,
  .academy-article-hero-foot,
  .academy-article-hero-shell,
  .source-hero-shell,
  .source-title-row,
  .source-title-copy,
  .section-groups,
  .section-group,
  .section-group-head,
  .section-bottom-links,
  .library-shell,
  .library-main,
  .catalog-bar,
  .journal-reading,
  .global-mode-guidance,
  .beginner-term-note,
  .related-reading,
  .article-author,
  .article-exit-nav,
  .next-reading,
  .about-hero-v114,
  .about-layout-v114,
  .traffic-page,
  .services-page,
  .notes-page,
  .tool-suite
){
  background:var(--tl-uniform-dark)!important;
  background-color:var(--tl-uniform-dark)!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Article sections must never create a different large slab. */
html body.theme-dark :is(
  .source-playbook-article>section,
  .article>section,
  .article-depth,
  .academy-content-section,
  .logic-section-v103,
  .guide-v101-section,
  .platform-setup-section
),
html body.reference-ui-v99.theme-dark :is(
  .source-playbook-article>section,
  .article>section,
  .article-depth,
  .academy-content-section,
  .logic-section-v103,
  .guide-v101-section,
  .platform-setup-section
){
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Remove the outer framed-sheet effect from articles in dark mode. */
html body.theme-dark :is(.article,.structured-article-v103,.source-playbook-article),
html body.reference-ui-v99.theme-dark :is(.article,.structured-article-v103,.source-playbook-article){
  border-color:transparent!important;
  border-radius:0!important;
}

/* Decorative pseudo backgrounds must not reintroduce another shade. */
html body.theme-dark :is(
  main,
  .article-layout,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing-head,
  .section-landing,
  .academy-article-hero,
  .source-hero-shell,
  .section-groups,
  .section-group,
  .library-shell,
  .library-main,
  .about-hero-v114
)::before,
html body.theme-dark :is(
  main,
  .article-layout,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing-head,
  .section-landing,
  .academy-article-hero,
  .source-hero-shell,
  .section-groups,
  .section-group,
  .library-shell,
  .library-main,
  .about-hero-v114
)::after,
html body.reference-ui-v99.theme-dark :is(
  main,
  .article-layout,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing-head,
  .section-landing,
  .academy-article-hero,
  .source-hero-shell,
  .section-groups,
  .section-group,
  .library-shell,
  .library-main,
  .about-hero-v114
)::before,
html body.reference-ui-v99.theme-dark :is(
  main,
  .article-layout,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing-head,
  .section-landing,
  .academy-article-hero,
  .source-hero-shell,
  .section-groups,
  .section-group,
  .library-shell,
  .library-main,
  .about-hero-v114
)::after{
  background:none!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Real cards/controls may remain slightly separated from the canvas. */
html body.theme-dark :is(
  .section-entry,
  .section-outcome,
  .section-feature>div,
  .section-feature>aside,
  .playbook-card,
  .source-tool-card,
  .source-journey-card,
  .service-card,
  .service-tool,
  .tool-card,
  .library-row,
  .about-card,
  .article-figure,
  .playbook-facts>div,
  .playbook-checklist li,
  .guide-v101-grid>div,
  .guide-v101-formats>article,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-media,
  .guide-v101-code,
  .rules-summary-grid>div,
  .rules-model-grid section,
  .geo-chip-grid li,
  table,
  .article-aside.enhanced-rail .aside-block,
  .article-aside.enhanced-rail .rail-card,
  .rail-partner-card,
  .rail-path-card,
  .rail-cover-card
){
  background:var(--tl-uniform-panel)!important;
  background-image:none!important;
  border-color:var(--tl-uniform-border)!important;
}

/* v189 — slightly softer text in dark theme */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --tl-dark-text:#dfe5ea!important;
  --tl-dark-muted:#b8c1ca!important;
  --tl-dark-soft:#929da8!important;
  --tl-dark-accent:#c9b58f!important;
  --tl-dark-accent-strong:#d8c59f!important;
}

html body.theme-dark :is(h1,h2,h3,h4,strong,b,.article-label,.footer-brand,.source-title-copy h1,.service-tool h3,.playbook-card h2,.section-group-head h2,.source-playbook-article h1,.source-playbook-article h2,.article-page .article h1,.article-page .article h2,.article th,.rail-tools a b,.rules-summary-grid b,.rules-model-grid h3,.geo-directory b,.playbook-faq summary,.home-results-inner h2),
html body.reference-ui-v99.theme-dark :is(h1,h2,h3,h4,strong,b,.article-label,.footer-brand,.source-title-copy h1,.service-tool h3,.playbook-card h2,.section-group-head h2,.source-playbook-article h1,.source-playbook-article h2,.article-page .article h1,.article-page .article h2,.article th,.rail-tools a b,.rules-summary-grid b,.rules-model-grid h3,.geo-directory b,.playbook-faq summary,.home-results-inner h2){
  color:#dfe5ea!important;
}

html body.theme-dark :is(p,li,dd,dt,small,figcaption,.lead,.article-meta,.breadcrumbs,.service-kicker,.source-tool-card-copy,.article-author p,.handbook-intro p,.playbook-card>p,.article p,.article li,.source-playbook-article p,.source-playbook-article li,.section-entry p,.section-outcome p,.guide-v101-formats p,.guide-v101-grid p,.guide-v101-verdict p,.guide-v101-flow p,.related-card p,.library-row p,.service-tool p,.tool-card p,.about-card p,.playbook-faq details p,.rail-quick a small,.source-compare-row > div,.compare-table > div,.rules-summary-grid p,.rules-model-grid li,.geo-chip-grid li,.geo-chip-grid li small,.geo-guideline-link span,.article td,.article dd,.source-playbook-article dd,.playbook-facts dt),
html body.reference-ui-v99.theme-dark :is(p,li,dd,dt,small,figcaption,.lead,.article-meta,.breadcrumbs,.service-kicker,.source-tool-card-copy,.article-author p,.handbook-intro p,.playbook-card>p,.article p,.article li,.source-playbook-article p,.source-playbook-article li,.section-entry p,.section-outcome p,.guide-v101-formats p,.guide-v101-grid p,.guide-v101-verdict p,.guide-v101-flow p,.related-card p,.library-row p,.service-tool p,.tool-card p,.about-card p,.playbook-faq details p,.rail-quick a small,.source-compare-row > div,.compare-table > div,.rules-summary-grid p,.rules-model-grid li,.geo-chip-grid li,.geo-chip-grid li small,.geo-guideline-link span,.article td,.article dd,.source-playbook-article dd,.playbook-facts dt){
  color:#b8c1ca!important;
}

html body.theme-dark :is(a,.plain-link,.text-cta,.rail-all-tools,.sidebar-partner-cta span,.section-bottom-links a,.home-actions a,.guide-v101-next a,.guide-v101-diagnostics a,.article-exit-nav a,.next-reading a,.bookmark-button,.saved-link),
html body.reference-ui-v99.theme-dark :is(a,.plain-link,.text-cta,.rail-all-tools,.sidebar-partner-cta span,.section-bottom-links a,.home-actions a,.guide-v101-next a,.guide-v101-diagnostics a,.article-exit-nav a,.next-reading a,.bookmark-button,.saved-link){
  color:#c9b58f!important;
}

/* ======================================================================
   v190 — uniform article width on all non-home pages
   Keep one sober reading width across the site, excluding the homepage.
   ====================================================================== */
:root{
  --tl-v190-page-max:1148px;
  --tl-v190-page-gutter:18px;
  --tl-v190-page-gutter-tablet:14px;
  --tl-v190-page-gutter-mobile:10px;
  --tl-v190-article-col:850px;
  --tl-v190-rail-col:270px;
  --tl-v190-article-gap:28px;
}

/* Main inner width for every non-home page */
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > section.page-head > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > section.page-head > .wrap.narrow,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .global-mode-guidance.wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .beginner-term-note.wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .handbook,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .glossary,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .saved-page,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .diagnostic-wizard-page,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .source-compare-page,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .library-shell,
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap,
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow{
  width:min(calc(100% - (var(--tl-v190-page-gutter) * 2)), var(--tl-v190-page-max))!important;
  max-width:var(--tl-v190-page-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}

/* Article pages with right rail get the exact same canvas width */
@media (min-width:1051px){
  html body.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.content-system-v103 main.source-playbook-page > .wrap.article-layout,
  html body.reference-ui-v99.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.reference-ui-v99.content-system-v103 main.source-playbook-page > .wrap.article-layout,
  html body.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.reference-ui-v99.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout,
  html body.reference-ui-v99.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout{
    width:min(calc(100% - (var(--tl-v190-page-gutter) * 2)), var(--tl-v190-page-max))!important;
    max-width:var(--tl-v190-page-max)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    grid-template-columns:minmax(0,var(--tl-v190-article-col)) var(--tl-v190-rail-col)!important;
    gap:var(--tl-v190-article-gap)!important;
    justify-content:center!important;
    align-items:start!important;
    box-sizing:border-box!important;
  }

  html body.article-page.content-system-v103 main.compact-main-v103 .article,
  html body.content-system-v103 main.source-playbook-page .source-playbook-article,
  html body.reference-ui-v99.article-page.content-system-v103 main.compact-main-v103 .article,
  html body.reference-ui-v99.content-system-v103 main.source-playbook-page .source-playbook-article,
  html body.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article,
  html body.reference-ui-v99.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article,
  html body.theme-dark.content-system-v103 main.source-playbook-page .source-playbook-article,
  html body.reference-ui-v99.theme-dark.content-system-v103 main.source-playbook-page .source-playbook-article{
    width:100%!important;
    max-width:var(--tl-v190-article-col)!important;
    min-width:0!important;
    justify-self:start!important;
  }

  html body.article-page.content-system-v103 main.compact-main-v103 .article-aside,
  html body.content-system-v103 main.source-playbook-page .article-aside,
  html body.reference-ui-v99.article-page.content-system-v103 main.compact-main-v103 .article-aside,
  html body.reference-ui-v99.content-system-v103 main.source-playbook-page .article-aside,
  html body.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article-aside,
  html body.reference-ui-v99.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article-aside,
  html body.theme-dark.content-system-v103 main.source-playbook-page .article-aside,
  html body.reference-ui-v99.theme-dark.content-system-v103 main.source-playbook-page .article-aside{
    width:var(--tl-v190-rail-col)!important;
    min-width:var(--tl-v190-rail-col)!important;
    max-width:var(--tl-v190-rail-col)!important;
    justify-self:end!important;
  }
}

/* Slightly smaller symmetrical gutters on smaller screens */
@media (max-width:1100px){
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > section.page-head > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > section.page-head > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .global-mode-guidance.wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .beginner-term-note.wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .handbook,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .glossary,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .saved-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .diagnostic-wizard-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .source-compare-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .library-shell,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow,
  html body.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.content-system-v103 main.source-playbook-page > .wrap.article-layout{
    width:calc(100% - (var(--tl-v190-page-gutter-tablet) * 2))!important;
  }
}

@media (max-width:650px){
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > section.page-head > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > section.page-head > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .global-mode-guidance.wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .beginner-term-note.wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .handbook,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .glossary,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .saved-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .diagnostic-wizard-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .source-compare-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .library-shell,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow,
  html body.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.content-system-v103 main.source-playbook-page > .wrap.article-layout{
    width:calc(100% - (var(--tl-v190-page-gutter-mobile) * 2))!important;
  }
}


/* ======================================================================
   v191 — real dark-theme background cleanup
   Root cause: older dark-theme patches assigned several different solid
   backgrounds to nested article wrappers (.academy-article-hero-main,
   .academy-article-hero-copy, .academy-article-hero-foot, .page-head,
   etc.). In dark mode this created visible slabs inside one article.
   Fix: one outer canvas color, nested layout wrappers transparent.
   ====================================================================== */
:root{
  --tl-v191-dark-canvas:#0b1015;
}

/* One actual canvas for the whole dark page. */
html body.theme-dark,
html body.reference-ui-v99.theme-dark,
html body.theme-dark main,
html body.reference-ui-v99.theme-dark main,
html body.theme-dark :is(
  .compact-main-v103,
  .article-page,
  .source-playbook-page,
  .article-layout,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing,
  .section-landing-head,
  .library-shell,
  .library-main,
  .handbook,
  .glossary,
  .saved-page,
  .diagnostic-wizard-page,
  .source-compare-page,
  .traffic-page,
  .services-page,
  .notes-page,
  .tool-suite,
  .about-hero-v114,
  .about-layout-v114,
  .journal-reading,
  .catalog-bar,
  .global-mode-guidance,
  .beginner-term-note,
  .related-reading,
  .article-author,
  .article-exit-nav,
  .next-reading
),
html body.reference-ui-v99.theme-dark :is(
  .compact-main-v103,
  .article-page,
  .source-playbook-page,
  .article-layout,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing,
  .section-landing-head,
  .library-shell,
  .library-main,
  .handbook,
  .glossary,
  .saved-page,
  .diagnostic-wizard-page,
  .source-compare-page,
  .traffic-page,
  .services-page,
  .notes-page,
  .tool-suite,
  .about-hero-v114,
  .about-layout-v114,
  .journal-reading,
  .catalog-bar,
  .global-mode-guidance,
  .beginner-term-note,
  .related-reading,
  .article-author,
  .article-exit-nav,
  .next-reading
){
  background:var(--tl-v191-dark-canvas)!important;
  background-color:var(--tl-v191-dark-canvas)!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Inner article wrappers must not paint their own slabs. */
html body.theme-dark :is(
  .academy-article-hero,
  .academy-article-hero-main,
  .academy-article-hero-copy,
  .academy-article-hero-foot,
  .academy-article-hero-shell,
  .source-hero-shell,
  .source-title-row,
  .source-title-copy,
  .section-groups,
  .section-group,
  .section-group-head,
  .section-bottom-links,
  .academy-content-section,
  .logic-section-v103,
  .article > section,
  .source-playbook-article > section,
  .breadcrumbs,
  .article-actions,
  .article-actions-unified,
  .page-head > .wrap,
  .section-landing > .wrap,
  .section-landing-head > .wrap
),
html body.reference-ui-v99.theme-dark :is(
  .academy-article-hero,
  .academy-article-hero-main,
  .academy-article-hero-copy,
  .academy-article-hero-foot,
  .academy-article-hero-shell,
  .source-hero-shell,
  .source-title-row,
  .source-title-copy,
  .section-groups,
  .section-group,
  .section-group-head,
  .section-bottom-links,
  .academy-content-section,
  .logic-section-v103,
  .article > section,
  .source-playbook-article > section,
  .breadcrumbs,
  .article-actions,
  .article-actions-unified,
  .page-head > .wrap,
  .section-landing > .wrap,
  .section-landing-head > .wrap
){
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Decorative pseudo-elements also have to stay transparent. */
html body.theme-dark :is(
  .academy-article-hero,
  .academy-article-hero-main,
  .academy-article-hero-copy,
  .academy-article-hero-foot,
  .academy-article-hero-shell,
  .source-hero-shell,
  .source-title-row,
  .source-title-copy,
  .section-groups,
  .section-group,
  .section-group-head,
  .section-bottom-links,
  .academy-content-section,
  .logic-section-v103,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing,
  .section-landing-head,
  .library-shell,
  .handbook,
  .glossary,
  .saved-page,
  .diagnostic-wizard-page,
  .source-compare-page,
  .about-hero-v114,
  .about-layout-v114
)::before,
html body.theme-dark :is(
  .academy-article-hero,
  .academy-article-hero-main,
  .academy-article-hero-copy,
  .academy-article-hero-foot,
  .academy-article-hero-shell,
  .source-hero-shell,
  .source-title-row,
  .source-title-copy,
  .section-groups,
  .section-group,
  .section-group-head,
  .section-bottom-links,
  .academy-content-section,
  .logic-section-v103,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing,
  .section-landing-head,
  .library-shell,
  .handbook,
  .glossary,
  .saved-page,
  .diagnostic-wizard-page,
  .source-compare-page,
  .about-hero-v114,
  .about-layout-v114
)::after,
html body.reference-ui-v99.theme-dark :is(
  .academy-article-hero,
  .academy-article-hero-main,
  .academy-article-hero-copy,
  .academy-article-hero-foot,
  .academy-article-hero-shell,
  .source-hero-shell,
  .source-title-row,
  .source-title-copy,
  .section-groups,
  .section-group,
  .section-group-head,
  .section-bottom-links,
  .academy-content-section,
  .logic-section-v103,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing,
  .section-landing-head,
  .library-shell,
  .handbook,
  .glossary,
  .saved-page,
  .diagnostic-wizard-page,
  .source-compare-page,
  .about-hero-v114,
  .about-layout-v114
)::before,
html body.reference-ui-v99.theme-dark :is(
  .academy-article-hero,
  .academy-article-hero-main,
  .academy-article-hero-copy,
  .academy-article-hero-foot,
  .academy-article-hero-shell,
  .source-hero-shell,
  .source-title-row,
  .source-title-copy,
  .section-groups,
  .section-group,
  .section-group-head,
  .section-bottom-links,
  .academy-content-section,
  .logic-section-v103,
  .article,
  .structured-article-v103,
  .source-playbook-article,
  .page-head,
  .section-landing,
  .section-landing-head,
  .library-shell,
  .handbook,
  .glossary,
  .saved-page,
  .diagnostic-wizard-page,
  .source-compare-page,
  .about-hero-v114,
  .about-layout-v114
)::after{
  background:none!important;
  background-image:none!important;
  box-shadow:none!important;
}


/* ======================================================================
   v192 — apply one reading width to all non-home sections
   Keep a single inner canvas across all pages except the homepage.
   Also widen source/article pages a little so they match the rest better.
   ====================================================================== */
:root{
  --tl-v192-page-max:1228px;
  --tl-v192-page-gutter:18px;
  --tl-v192-page-gutter-tablet:14px;
  --tl-v192-page-gutter-mobile:10px;
  --tl-v192-article-col:930px;
  --tl-v192-rail-col:270px;
  --tl-v192-article-gap:28px;
}

/* Shared inner width for all non-home sections and pages */
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > section > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > section > .wrap.narrow,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .global-mode-guidance.wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .beginner-term-note.wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .handbook,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .glossary,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .saved-page,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .diagnostic-wizard-page,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .source-compare-page,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .library-shell,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .tool-suite,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .services-page,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .traffic-page,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .notes-page,
html body.content-system-v103 main.compact-main-v103:not(.home-page) > .about-layout-v114,
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap,
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow{
  width:min(calc(100% - (var(--tl-v192-page-gutter) * 2)), var(--tl-v192-page-max))!important;
  max-width:var(--tl-v192-page-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}

/* Source/article pages use the same total inner width */
@media (min-width:1051px){
  html body.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.content-system-v103 main.source-playbook-page > .wrap.article-layout,
  html body.reference-ui-v99.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.reference-ui-v99.content-system-v103 main.source-playbook-page > .wrap.article-layout,
  html body.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.reference-ui-v99.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout,
  html body.reference-ui-v99.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout{
    width:min(calc(100% - (var(--tl-v192-page-gutter) * 2)), var(--tl-v192-page-max))!important;
    max-width:var(--tl-v192-page-max)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    grid-template-columns:minmax(0,var(--tl-v192-article-col)) var(--tl-v192-rail-col)!important;
    gap:var(--tl-v192-article-gap)!important;
    justify-content:center!important;
    align-items:start!important;
    box-sizing:border-box!important;
  }

  html body.article-page.content-system-v103 main.compact-main-v103 .article,
  html body.content-system-v103 main.source-playbook-page .source-playbook-article,
  html body.reference-ui-v99.article-page.content-system-v103 main.compact-main-v103 .article,
  html body.reference-ui-v99.content-system-v103 main.source-playbook-page .source-playbook-article,
  html body.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article,
  html body.reference-ui-v99.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article,
  html body.theme-dark.content-system-v103 main.source-playbook-page .source-playbook-article,
  html body.reference-ui-v99.theme-dark.content-system-v103 main.source-playbook-page .source-playbook-article{
    width:100%!important;
    max-width:var(--tl-v192-article-col)!important;
    min-width:0!important;
    justify-self:start!important;
  }

  html body.article-page.content-system-v103 main.compact-main-v103 .article-aside,
  html body.content-system-v103 main.source-playbook-page .article-aside,
  html body.reference-ui-v99.article-page.content-system-v103 main.compact-main-v103 .article-aside,
  html body.reference-ui-v99.content-system-v103 main.source-playbook-page .article-aside,
  html body.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article-aside,
  html body.reference-ui-v99.theme-dark.article-page.content-system-v103 main.compact-main-v103 .article-aside,
  html body.theme-dark.content-system-v103 main.source-playbook-page .article-aside,
  html body.reference-ui-v99.theme-dark.content-system-v103 main.source-playbook-page .article-aside{
    width:var(--tl-v192-rail-col)!important;
    min-width:var(--tl-v192-rail-col)!important;
    max-width:var(--tl-v192-rail-col)!important;
    justify-self:end!important;
  }
}

@media (max-width:1100px){
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > section > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > section > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .global-mode-guidance.wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .beginner-term-note.wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .handbook,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .glossary,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .saved-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .diagnostic-wizard-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .source-compare-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .library-shell,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .tool-suite,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .services-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .traffic-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .notes-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .about-layout-v114,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow,
  html body.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.content-system-v103 main.source-playbook-page > .wrap.article-layout{
    width:calc(100% - (var(--tl-v192-page-gutter-tablet) * 2))!important;
  }
}

@media (max-width:650px){
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > section > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > section > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .global-mode-guidance.wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .beginner-term-note.wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .handbook,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .glossary,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .saved-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .diagnostic-wizard-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .source-compare-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .library-shell,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .tool-suite,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .services-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .traffic-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .notes-page,
  html body.content-system-v103 main.compact-main-v103:not(.home-page) > .about-layout-v114,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow,
  html body.article-page.content-system-v103 main.compact-main-v103 .article-layout,
  html body.content-system-v103 main.source-playbook-page > .wrap.article-layout{
    width:calc(100% - (var(--tl-v192-page-gutter-mobile) * 2))!important;
  }
}


/* ======================================================================
   v193 — unify dark-mode numbering color
   Recolor warm orange step badges to the same neutral tone as the rest.
   ====================================================================== */
html body.theme-dark :is(.logic-index-v103,.section-index,.guide-step-index,.journey-step-index,.flow-step-index,.rail-progress span,.playbook-checklist li:before,.service-task-nav .step-index),
html body.reference-ui-v99.theme-dark :is(.logic-index-v103,.section-index,.guide-step-index,.journey-step-index,.flow-step-index,.rail-progress span,.playbook-checklist li:before,.service-task-nav .step-index){
  background:#18212a!important;
  border-color:#324252!important;
  color:#c2d2df!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}

/* Keep warning/callout counters warm when they are inside warning blocks only. */
html body.theme-dark .logic-warning-v103 .logic-index-v103,
html body.reference-ui-v99.theme-dark .logic-warning-v103 .logic-index-v103{
  background:#28231d!important;
  border-color:#5b4d3a!important;
  color:#ddc39e!important;
}


/* ======================================================================
   v194 — remove remaining green text from dark-theme figure side captions
   ====================================================================== */
html body.theme-dark .article-page .article-figure figcaption,
html body.reference-ui-v99.theme-dark .article-page .article-figure figcaption,
html body.theme-dark .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body.reference-ui-v99.theme-dark .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body.theme-dark .source-journey-card figcaption,
html body.reference-ui-v99.theme-dark .source-journey-card figcaption,
html body.theme-dark .source-visual-pair figcaption,
html body.reference-ui-v99.theme-dark .source-visual-pair figcaption,
html body.theme-dark .source-visual-wide figcaption,
html body.reference-ui-v99.theme-dark .source-visual-wide figcaption,
html body.theme-dark .article-figure.diagram-figure figcaption,
html body.reference-ui-v99.theme-dark .article-figure.diagram-figure figcaption{
  color:#aeb8c4!important;
}

html body.theme-dark .article-page .article-figure figcaption strong,
html body.reference-ui-v99.theme-dark .article-page .article-figure figcaption strong,
html body.theme-dark .article-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
html body.reference-ui-v99.theme-dark .article-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
html body.theme-dark .source-journey-card figcaption strong,
html body.reference-ui-v99.theme-dark .source-journey-card figcaption strong,
html body.theme-dark .source-visual-pair figcaption strong,
html body.reference-ui-v99.theme-dark .source-visual-pair figcaption strong,
html body.theme-dark .source-visual-wide figcaption strong,
html body.reference-ui-v99.theme-dark .source-visual-wide figcaption strong,
html body.theme-dark .article-figure.diagram-figure figcaption strong,
html body.reference-ui-v99.theme-dark .article-figure.diagram-figure figcaption strong{
  color:#edf2f7!important;
}

/* Inside these helper blocks, links should use the same calm accent instead of green. */
html body.theme-dark .article-page .article-figure figcaption a,
html body.reference-ui-v99.theme-dark .article-page .article-figure figcaption a,
html body.theme-dark .article-page .article-figure figcaption .plain-link,
html body.reference-ui-v99.theme-dark .article-page .article-figure figcaption .plain-link,
html body.theme-dark .article-page .article-figure figcaption .text-cta,
html body.reference-ui-v99.theme-dark .article-page .article-figure figcaption .text-cta{
  color:#d3b07a!important;
}


/* ======================================================================
   v195 — final dark-theme accent unification
   No green UI accents. Brand artwork/logos are intentionally untouched.
   ====================================================================== */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --forest:#c7cfd7!important;
  --forest-2:#151b22!important;
  --forest-soft:#1a2129!important;
  --green:#c7cfd7!important;
  --green-dark:#aeb8c2!important;
  --green-soft:#1a2129!important;
  --academy-green:#c7cfd7!important;
  --academy-green-soft:#1a2129!important;
  --v109-green:#c7cfd7!important;
  --v109-green-dark:#aeb8c2!important;
  --v109-green-soft:#1a2129!important;
  --source-accent:#c7cfd7!important;
  --tl-dark-accent:#d2b988!important;
  --tl-dark-accent-2:#d2b988!important;
  --tl-dark-accent-strong:#e5d0a7!important;
  --dark-accent:#d2b988!important;
  --dark-accent-strong:#e5d0a7!important;
  --dark-accent-soft:#d8c39c!important;
}

/* Links and text accents: one restrained warm-neutral tone. */
html body.theme-dark :is(
  a,.plain-link,.text-cta,.term-help,.rail-all-tools,
  .sidebar-partner-cta span,.section-bottom-links a,.home-actions a,
  .guide-v101-next a,.guide-v101-diagnostics a,.article-exit-nav a,
  .next-reading a,.bookmark-button,.saved-link,.service-tool>a,
  .source-toolkit-helper a,.source-toolkit-all a,.partner-specific-box>a,
  .geo-guideline-link,.playbook-card>a,.source-section-tabs a.is-current,
  .source-section-tabs a:first-child,.source-shot figcaption a
),
html body.reference-ui-v99.theme-dark :is(
  a,.plain-link,.text-cta,.term-help,.rail-all-tools,
  .sidebar-partner-cta span,.section-bottom-links a,.home-actions a,
  .guide-v101-next a,.guide-v101-diagnostics a,.article-exit-nav a,
  .next-reading a,.bookmark-button,.saved-link,.service-tool>a,
  .source-toolkit-helper a,.source-toolkit-all a,.partner-specific-box>a,
  .geo-guideline-link,.playbook-card>a,.source-section-tabs a.is-current,
  .source-section-tabs a:first-child,.source-shot figcaption a
){
  color:#d2b989!important;
}
html body.theme-dark :is(a:hover,.plain-link:hover,.text-cta:hover,.term-help:hover,.rail-all-tools:hover),
html body.reference-ui-v99.theme-dark :is(a:hover,.plain-link:hover,.text-cta:hover,.term-help:hover,.rail-all-tools:hover){
  color:#e7d3ad!important;
}

/* Source tabs and navigation accents. */
html body.theme-dark .source-section-tabs a.is-current,
html body.theme-dark .source-section-tabs a:first-child,
html body.reference-ui-v99.theme-dark .source-section-tabs a.is-current,
html body.reference-ui-v99.theme-dark .source-section-tabs a:first-child{
  color:#d2b989!important;
  border-bottom-color:#75654b!important;
}
html body.theme-dark .rail-all-tools,
html body.reference-ui-v99.theme-dark .rail-all-tools{
  color:#d2b989!important;
  border-color:#3b4652!important;
}

/* All numbered badges / counters use one cool-neutral style. */
html body.theme-dark :is(
  .logic-index-v103,.section-index,.guide-step-index,.journey-step-index,
  .flow-step-index,.rail-progress span,.service-task-nav .step-index,
  .source-playbook-page .playbook-steps>li>span:first-child,
  .source-playbook-article .guide-v101-steps li>span,
  .platform-setup li>span,.guide-v101-grid>div>span,
  .playbook-checklist li:before,.rail-quick a:before,
  .playbook-faq summary::before,.section-outcome li:before,
  .reading-state-badge,.rule-model-badge,.service-primary-badge,
  .about-route-v114 li:before
),
html body.reference-ui-v99.theme-dark :is(
  .logic-index-v103,.section-index,.guide-step-index,.journey-step-index,
  .flow-step-index,.rail-progress span,.service-task-nav .step-index,
  .source-playbook-page .playbook-steps>li>span:first-child,
  .source-playbook-article .guide-v101-steps li>span,
  .platform-setup li>span,.guide-v101-grid>div>span,
  .playbook-checklist li:before,.rail-quick a:before,
  .playbook-faq summary::before,.section-outcome li:before,
  .reading-state-badge,.rule-model-badge,.service-primary-badge,
  .about-route-v114 li:before
){
  background:#18212a!important;
  background-image:none!important;
  border-color:#344352!important;
  color:#c4d1dc!important;
  box-shadow:none!important;
}

/* The practice badge inside structured sections must not go green. */
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-action-v103>h2::after,
html body.reference-ui-v99.theme-dark.content-system-v103 .structured-article-v103 .logic-action-v103>h2::after{
  background:#1a222b!important;
  color:#c5d1db!important;
  border:1px solid #344250!important;
}

/* Neutralize old green borders and callout accents. */
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-action-v103,
html body.reference-ui-v99.theme-dark.content-system-v103 .structured-article-v103 .logic-action-v103{
  border-left-color:#465462!important;
}
html body.theme-dark .article .service-inline,
html body.reference-ui-v99.theme-dark .article .service-inline{
  border-left-color:#465462!important;
}
html body.theme-dark .sidebar-partner-cta,
html body.reference-ui-v99.theme-dark .sidebar-partner-cta{
  background:#151b22!important;
  border-color:#313c47!important;
}

/* Code and inline code get the warm-neutral accent, never mint/green. */
html body.theme-dark :is(pre,code),
html body.reference-ui-v99.theme-dark :is(pre,code){
  background:#121820!important;
  color:#d3bc91!important;
}

/* Home page: remove the last green decorative/search accents too. */
html body.theme-dark.reference-ui-v99 .home-search-card::before{
  background:linear-gradient(90deg,#4c5661 0%,#707a84 55%,#2d3940 100%)!important;
}
html body.theme-dark.reference-ui-v99 .home-search-label{
  border-color:#35404b!important;
  background:#1a2129!important;
  color:#b8c2cc!important;
}
html body.theme-dark.reference-ui-v99 .home-main-search button{
  border-color:#35404b!important;
  background:linear-gradient(180deg,#202832 0%,#1a222b 100%)!important;
  color:#d7dee5!important;
}
html body.theme-dark.reference-ui-v99 .home-main-search button:hover{
  background:linear-gradient(180deg,#27313b 0%,#202933 100%)!important;
}
html body.theme-dark.reference-ui-v99 .home-search-links a{
  border-color:#35404b!important;
  background:#1a2129!important;
  color:#c4ccd4!important;
}
html body.theme-dark.reference-ui-v99 .home-search-links a:hover{
  background:#202832!important;
  border-color:#485563!important;
  color:#e7ebef!important;
}
html body.theme-dark :is(.home-kicker,.home-source-grid small,.about-nav-note-v114 b),
html body.reference-ui-v99.theme-dark :is(.home-kicker,.home-source-grid small,.about-nav-note-v114 b){
  color:#bcc6cf!important;
}
html body.theme-dark .home-results-inner,
html body.reference-ui-v99.theme-dark .home-results-inner,
html body.theme-dark.reference-ui-v99 main.home-page .home-results .home-results-inner{
  background:#151b22!important;
  border-color:#303b46!important;
}
html body.theme-dark .home-actions a:not(.home-action-primary):not(.home-action-partner),
html body.reference-ui-v99.theme-dark .home-actions a:not(.home-action-primary):not(.home-action-partner){
  background:#151b22!important;
  border-color:#394550!important;
  color:#c7d0d8!important;
}

/* Illustration blocks that previously used green fills become graphite/blue-slate. */
html body.theme-dark .guide-v101-format-art,
html body.reference-ui-v99.theme-dark .guide-v101-format-art{
  background:linear-gradient(145deg,#26313c,#121920)!important;
  color:#eef2f5!important;
}
html body.theme-dark .guide-v101-format-art.f1,
html body.reference-ui-v99.theme-dark .guide-v101-format-art.f1{
  background:linear-gradient(145deg,#26313c,#121920)!important;
}
html body.theme-dark .guide-v101-format-art.f5,
html body.reference-ui-v99.theme-dark .guide-v101-format-art.f5{
  background:linear-gradient(145deg,#303945,#151c23)!important;
}

/* Remaining action buttons: dark neutral surface, warm-neutral text. */
html body.theme-dark :is(
  .section-bottom-links a,.guide-v101-next a,.guide-v101-diagnostics a,
  .traffic-next a,.playbook-official a,.source-compare-actions a,
  .article-cta-row a,.service-task-nav a,.source-next-links a
),
html body.reference-ui-v99.theme-dark :is(
  .section-bottom-links a,.guide-v101-next a,.guide-v101-diagnostics a,
  .traffic-next a,.playbook-official a,.source-compare-actions a,
  .article-cta-row a,.service-task-nav a,.source-next-links a
){
  background:#171d24!important;
  background-image:none!important;
  border-color:#323d48!important;
  color:#d2b989!important;
  box-shadow:none!important;
}
html body.theme-dark :is(
  .section-bottom-links a:hover,.guide-v101-next a:hover,.guide-v101-diagnostics a:hover,
  .traffic-next a:hover,.playbook-official a:hover,.source-compare-actions a:hover,
  .article-cta-row a:hover,.service-task-nav a:hover,.source-next-links a:hover
),
html body.reference-ui-v99.theme-dark :is(
  .section-bottom-links a:hover,.guide-v101-next a:hover,.guide-v101-diagnostics a:hover,
  .traffic-next a:hover,.playbook-official a:hover,.source-compare-actions a:hover,
  .article-cta-row a:hover,.service-task-nav a:hover,.source-next-links a:hover
){
  background:#1d242c!important;
  border-color:#46515c!important;
  color:#e5d2ac!important;
}

/* Tool/service UI marks are neutral; actual logo images are not recolored. */
html body.theme-dark :is(.service-mark,.rail-tool-mark,.ref-nav-icon),
html body.reference-ui-v99.theme-dark :is(.service-mark,.rail-tool-mark,.ref-nav-icon){
  background:#19212a!important;
  border-color:#34414e!important;
  color:#c5d0da!important;
}

/* ======================================================================
   v197 — true uniform inner width across all non-home sections
   Section/catalog pages now use the SAME width as the article body,
   while article pages keep the right rail outside that reading column.
   ====================================================================== */
:root{
  --tl-v197-reading-width:930px;
  --tl-v197-rail-width:270px;
  --tl-v197-rail-gap:28px;
  --tl-v197-side-gutter:18px;
  --tl-v197-side-gutter-tablet:14px;
  --tl-v197-side-gutter-mobile:10px;
}

/* Every ordinary inner section uses the article reading width. */
html body main:not(.home-page) > .wrap:not(.article-layout),
html body main:not(.home-page) > section:not(.wrap) > .wrap,
html body main:not(.home-page) > section:not(.wrap) > .wrap.narrow,
html body.reference-ui-v99 main:not(.home-page) > .wrap:not(.article-layout),
html body.reference-ui-v99 main:not(.home-page) > section:not(.wrap) > .wrap,
html body.reference-ui-v99 main:not(.home-page) > section:not(.wrap) > .wrap.narrow{
  width:min(calc(100% - (var(--tl-v197-side-gutter) * 2)),var(--tl-v197-reading-width))!important;
  max-width:var(--tl-v197-reading-width)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}

/* Article layouts: same 930px reading column + separate right rail. */
@media (min-width:1051px){
  html body main:not(.home-page) > .wrap.article-layout,
  html body.reference-ui-v99 main:not(.home-page) > .wrap.article-layout{
    width:min(
      calc(100% - (var(--tl-v197-side-gutter) * 2)),
      calc(var(--tl-v197-reading-width) + var(--tl-v197-rail-width) + var(--tl-v197-rail-gap))
    )!important;
    max-width:calc(var(--tl-v197-reading-width) + var(--tl-v197-rail-width) + var(--tl-v197-rail-gap))!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    grid-template-columns:minmax(0,var(--tl-v197-reading-width)) var(--tl-v197-rail-width)!important;
    gap:var(--tl-v197-rail-gap)!important;
    justify-content:center!important;
    align-items:start!important;
    box-sizing:border-box!important;
  }

  html body main:not(.home-page) > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.reference-ui-v99 main:not(.home-page) > .wrap.article-layout > :is(.article,.source-playbook-article){
    width:100%!important;
    max-width:var(--tl-v197-reading-width)!important;
    min-width:0!important;
  }

  html body main:not(.home-page) > .wrap.article-layout > :is(.article-aside,aside),
  html body.reference-ui-v99 main:not(.home-page) > .wrap.article-layout > :is(.article-aside,aside){
    width:var(--tl-v197-rail-width)!important;
    min-width:var(--tl-v197-rail-width)!important;
    max-width:var(--tl-v197-rail-width)!important;
  }
}

@media (max-width:1100px){
  html body main:not(.home-page) > .wrap:not(.article-layout),
  html body main:not(.home-page) > section:not(.wrap) > .wrap,
  html body main:not(.home-page) > section:not(.wrap) > .wrap.narrow,
  html body.reference-ui-v99 main:not(.home-page) > .wrap:not(.article-layout),
  html body.reference-ui-v99 main:not(.home-page) > section:not(.wrap) > .wrap,
  html body.reference-ui-v99 main:not(.home-page) > section:not(.wrap) > .wrap.narrow{
    width:min(calc(100% - (var(--tl-v197-side-gutter-tablet) * 2)),var(--tl-v197-reading-width))!important;
  }
}

@media (max-width:650px){
  html body main:not(.home-page) > .wrap:not(.article-layout),
  html body main:not(.home-page) > section:not(.wrap) > .wrap,
  html body main:not(.home-page) > section:not(.wrap) > .wrap.narrow,
  html body.reference-ui-v99 main:not(.home-page) > .wrap:not(.article-layout),
  html body.reference-ui-v99 main:not(.home-page) > section:not(.wrap) > .wrap,
  html body.reference-ui-v99 main:not(.home-page) > section:not(.wrap) > .wrap.narrow{
    width:calc(100% - (var(--tl-v197-side-gutter-mobile) * 2))!important;
    max-width:none!important;
  }
}


/* ======================================================================
   v198 — hard uniform width for every internal page
   All non-home section canvases use the same 930px reading width.
   Article pages keep their 930px article plus a separate right rail.
   A dedicated body marker outranks the accumulated legacy width rules.
   ====================================================================== */
:root{
  --tl-v198-reading-width:930px;
  --tl-v198-rail-width:270px;
  --tl-v198-rail-gap:28px;
  --tl-v198-gutter:18px;
  --tl-v198-gutter-tablet:14px;
  --tl-v198-gutter-mobile:10px;
}

/* Ordinary internal sections / catalogs / start pages. */
html body.internal-page-v198.internal-page-v198.internal-page-v198 main.compact-main-v103 > .wrap:not(.article-layout),
html body.internal-page-v198.internal-page-v198.internal-page-v198 main.compact-main-v103 > .page-head > .wrap,
html body.internal-page-v198.internal-page-v198.internal-page-v198 main.compact-main-v103 > .page-head > .wrap.narrow,
html body.internal-page-v198.internal-page-v198.internal-page-v198 main.section-landing > .wrap:not(.article-layout),
html body.internal-page-v198.internal-page-v198.internal-page-v198 main.section-landing > .page-head > .wrap,
html body.internal-page-v198.internal-page-v198.internal-page-v198 main.section-landing > .page-head > .wrap.narrow,
html body.internal-page-v198.internal-page-v198.internal-page-v198 main.traffic-hub-page > .wrap:not(.article-layout),
html body.internal-page-v198.internal-page-v198.internal-page-v198 main.services-page > .wrap:not(.article-layout),
html body.internal-page-v198.internal-page-v198.internal-page-v198 main.about-main-v114 > .wrap:not(.article-layout),
html body.internal-page-v198.internal-page-v198.internal-page-v198 main.about-main-v114 > .page-head > .wrap,
html body.internal-page-v198.internal-page-v198.internal-page-v198 main.about-main-v114 > .page-head > .wrap.narrow{
  width:min(calc(100% - (var(--tl-v198-gutter) * 2)),var(--tl-v198-reading-width))!important;
  max-width:var(--tl-v198-reading-width)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}

/* Article pages: identical 930px reading column, rail lives beside it. */
@media (min-width:1051px){
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main > .wrap.article-layout{
    width:min(
      calc(100% - (var(--tl-v198-gutter) * 2)),
      calc(var(--tl-v198-reading-width) + var(--tl-v198-rail-width) + var(--tl-v198-rail-gap))
    )!important;
    max-width:calc(var(--tl-v198-reading-width) + var(--tl-v198-rail-width) + var(--tl-v198-rail-gap))!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    grid-template-columns:minmax(0,var(--tl-v198-reading-width)) var(--tl-v198-rail-width)!important;
    gap:var(--tl-v198-rail-gap)!important;
    justify-content:center!important;
    align-items:start!important;
    box-sizing:border-box!important;
  }

  html body.internal-page-v198.internal-page-v198.internal-page-v198 main > .wrap.article-layout > :is(.article,.source-playbook-article){
    width:100%!important;
    max-width:var(--tl-v198-reading-width)!important;
    min-width:0!important;
  }

  html body.internal-page-v198.internal-page-v198.internal-page-v198 main > .wrap.article-layout > :is(.article-aside,aside){
    width:var(--tl-v198-rail-width)!important;
    min-width:var(--tl-v198-rail-width)!important;
    max-width:var(--tl-v198-rail-width)!important;
  }
}

@media (max-width:1100px){
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.compact-main-v103 > .wrap:not(.article-layout),
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.compact-main-v103 > .page-head > .wrap,
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.compact-main-v103 > .page-head > .wrap.narrow,
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.section-landing > .wrap:not(.article-layout),
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.section-landing > .page-head > .wrap,
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.section-landing > .page-head > .wrap.narrow,
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.traffic-hub-page > .wrap:not(.article-layout),
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.services-page > .wrap:not(.article-layout),
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.about-main-v114 > .wrap:not(.article-layout),
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.about-main-v114 > .page-head > .wrap,
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.about-main-v114 > .page-head > .wrap.narrow{
    width:min(calc(100% - (var(--tl-v198-gutter-tablet) * 2)),var(--tl-v198-reading-width))!important;
  }
}

@media (max-width:650px){
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.compact-main-v103 > .wrap:not(.article-layout),
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.compact-main-v103 > .page-head > .wrap,
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.compact-main-v103 > .page-head > .wrap.narrow,
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.section-landing > .wrap:not(.article-layout),
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.section-landing > .page-head > .wrap,
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.section-landing > .page-head > .wrap.narrow,
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.traffic-hub-page > .wrap:not(.article-layout),
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.services-page > .wrap:not(.article-layout),
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.about-main-v114 > .wrap:not(.article-layout),
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.about-main-v114 > .page-head > .wrap,
  html body.internal-page-v198.internal-page-v198.internal-page-v198 main.about-main-v114 > .page-head > .wrap.narrow{
    width:calc(100% - (var(--tl-v198-gutter-mobile) * 2))!important;
    max-width:none!important;
  }
}


/* ======================================================================
   v199 — dark surface system rebuilt from source-playbook framing
   One page canvas + one framed surface color. Nested content never paints
   a competing large background. True cards use the same fill and are
   separated by borders only.
   ====================================================================== */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --tl-v199-canvas:#0b1015;
  --tl-v199-surface:#111821;
  --tl-v199-border:#2a3642;
  --tl-v199-divider:#25303a;
  --tl-v199-text:#d6dde4;
  --tl-v199-muted:#adb7c1;
  --tl-v199-soft:#8995a0;
  --tl-v199-accent:#d2b989;
  background:var(--tl-v199-canvas)!important;
}

/* One canvas behind every page. */
html body.theme-dark :is(main,main.compact-main-v103,main.section-landing,main.source-playbook-page,main.traffic-hub-page,main.services-page),
html body.reference-ui-v99.theme-dark :is(main,main.compact-main-v103,main.section-landing,main.source-playbook-page,main.traffic-hub-page,main.services-page){
  background:var(--tl-v199-canvas)!important;
  background-color:var(--tl-v199-canvas)!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Page-level decorative layers are disabled in dark mode. */
html body.theme-dark :is(main,.page-head,.section-landing-head,.article-layout,.section-groups,.library-shell,.handbook,.glossary,.notes-page,.tool-suite)::before,
html body.theme-dark :is(main,.page-head,.section-landing-head,.article-layout,.section-groups,.library-shell,.handbook,.glossary,.notes-page,.tool-suite)::after,
html body.reference-ui-v99.theme-dark :is(main,.page-head,.section-landing-head,.article-layout,.section-groups,.library-shell,.handbook,.glossary,.notes-page,.tool-suite)::before,
html body.reference-ui-v99.theme-dark :is(main,.page-head,.section-landing-head,.article-layout,.section-groups,.library-shell,.handbook,.glossary,.notes-page,.tool-suite)::after{
  background:none!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Large wrappers are transparent. The framed modules below own the surface. */
html body.theme-dark :is(
  .page-head,.section-landing-head,.article-layout,.section-groups,.section-entry-grid,
  .library-main,.catalog-bar,.article-actions,.article-actions-unified,
  .academy-article-hero,.academy-article-hero-main,.academy-article-hero-copy,
  .academy-article-hero-foot,.source-hero-shell,.source-title-row,.source-title-copy,
  .section-group-head,.about-layout-v114,.journal-reading
),
html body.reference-ui-v99.theme-dark :is(
  .page-head,.section-landing-head,.article-layout,.section-groups,.section-entry-grid,
  .library-main,.catalog-bar,.article-actions,.article-actions-unified,
  .academy-article-hero,.academy-article-hero-main,.academy-article-hero-copy,
  .academy-article-hero-foot,.source-hero-shell,.source-title-row,.source-title-copy,
  .section-group-head,.about-layout-v114,.journal-reading
){
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Main framed surfaces — this is the source-playbook visual language. */
html body.theme-dark :is(
  .article-page .article,.source-playbook-page .source-playbook-article,
  .page-head>.wrap,.section-landing-head>.wrap,
  .wrap.section-outcome,.section-group,.wrap.handbook,.library-shell,
  .wrap.glossary,.wrap.notes-page,.wrap.tool-suite,.wrap.tool-memory,
  .wrap.beginner-term-note,.wrap.section-bottom-links,
  .diagnostic-wizard-card,.source-compare-page,.saved-page,
  .about-section-v114,.service-workflow,.service-start-grid,
  .traffic-hub-basics,.help-situation,.big-tool,.calc-card,.tool-panel
),
html body.reference-ui-v99.theme-dark :is(
  .article-page .article,.source-playbook-page .source-playbook-article,
  .page-head>.wrap,.section-landing-head>.wrap,
  .wrap.section-outcome,.section-group,.wrap.handbook,.library-shell,
  .wrap.glossary,.wrap.notes-page,.wrap.tool-suite,.wrap.tool-memory,
  .wrap.beginner-term-note,.wrap.section-bottom-links,
  .diagnostic-wizard-card,.source-compare-page,.saved-page,
  .about-section-v114,.service-workflow,.service-start-grid,
  .traffic-hub-basics,.help-situation,.big-tool,.calc-card,.tool-panel
){
  background:var(--tl-v199-surface)!important;
  background-color:var(--tl-v199-surface)!important;
  background-image:none!important;
  border:1px solid var(--tl-v199-border)!important;
  border-radius:14px!important;
  box-shadow:none!important;
  color:var(--tl-v199-text)!important;
  box-sizing:border-box!important;
}

/* Restore a proper framed article sheet and consistent inner breathing room. */
html body.theme-dark.internal-page-v198 :is(.article-page .article,.source-playbook-page .source-playbook-article),
html body.reference-ui-v99.theme-dark.internal-page-v198 :is(.article-page .article,.source-playbook-page .source-playbook-article){
  padding:24px!important;
  border-color:var(--tl-v199-border)!important;
  border-radius:14px!important;
}

/* Section landing modules get the same frame spacing. */
html body.theme-dark :is(.wrap.section-outcome,.section-group,.wrap.section-bottom-links,.wrap.handbook,.library-shell,.wrap.glossary,.wrap.notes-page,.wrap.tool-suite,.wrap.tool-memory,.wrap.beginner-term-note),
html body.reference-ui-v99.theme-dark :is(.wrap.section-outcome,.section-group,.wrap.section-bottom-links,.wrap.handbook,.library-shell,.wrap.glossary,.wrap.notes-page,.wrap.tool-suite,.wrap.tool-memory,.wrap.beginner-term-note){
  padding:22px!important;
}

/* The section-groups wrapper itself must never become a giant colored slab. */
html body.theme-dark .section-groups,
html body.reference-ui-v99.theme-dark .section-groups{
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding-left:0!important;
  padding-right:0!important;
}
html body.theme-dark .section-group + .section-group,
html body.reference-ui-v99.theme-dark .section-group + .section-group{
  margin-top:18px!important;
}

/* Feature layouts stay transparent; their actual cards carry the frame. */
html body.theme-dark .wrap.section-feature,
html body.reference-ui-v99.theme-dark .wrap.section-feature{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* Every true inner card uses exactly the SAME fill; borders provide hierarchy. */
html body.theme-dark :is(
  .section-entry,.section-feature>div,.section-feature>aside,.section-card,.section-outcome li,
  .playbook-card,.library-row,.tool-card,.service-card,.service-tool,.source-tool-card,
  .source-journey-card,.traffic-next a,.knowledge-map>div,
  .guide-v101-grid>div,.guide-v101-formats>article,.guide-v101-media,
  .guide-v101-link-options>div,.guide-v101-flow,.guide-v101-verdict,.guide-v101-code,
  .guide-v101-steps li,.guide-v101-funnel-table>div,.guide-v101-diagnostics a,.guide-v101-next a,
  .playbook-facts>div,.playbook-checklist li,.playbook-steps>li,.platform-setup>div,
  .playbook-format-list>div,.traffic-diagnostic-list li,
  .related-primary,.related-secondary,.article-exit-nav a,.next-reading a,
  .rules-summary-grid>div,.rules-model-grid section,.geo-chip-grid li,.geo-directory,
  .ref-partner-card,.rail-partner-card,.rail-path-card,.rail-cover-card,.rail-card,
  .article-aside.enhanced-rail .aside-block,.article-figure,.field-case,.notes-card,
  .diagnostic-card,.compare-side,.diagnostic-flag,.problem-options button,.problem-result-links a,
  .source-compare-picker,.source-compare-row>div,.source-compare-actions a,
  .saved-card,.path-card,.wizard-continuation,.wizard-memory,.tool-quick-links a
),
html body.reference-ui-v99.theme-dark :is(
  .section-entry,.section-feature>div,.section-feature>aside,.section-card,.section-outcome li,
  .playbook-card,.library-row,.tool-card,.service-card,.service-tool,.source-tool-card,
  .source-journey-card,.traffic-next a,.knowledge-map>div,
  .guide-v101-grid>div,.guide-v101-formats>article,.guide-v101-media,
  .guide-v101-link-options>div,.guide-v101-flow,.guide-v101-verdict,.guide-v101-code,
  .guide-v101-steps li,.guide-v101-funnel-table>div,.guide-v101-diagnostics a,.guide-v101-next a,
  .playbook-facts>div,.playbook-checklist li,.playbook-steps>li,.platform-setup>div,
  .playbook-format-list>div,.traffic-diagnostic-list li,
  .related-primary,.related-secondary,.article-exit-nav a,.next-reading a,
  .rules-summary-grid>div,.rules-model-grid section,.geo-chip-grid li,.geo-directory,
  .ref-partner-card,.rail-partner-card,.rail-path-card,.rail-cover-card,.rail-card,
  .article-aside.enhanced-rail .aside-block,.article-figure,.field-case,.notes-card,
  .diagnostic-card,.compare-side,.diagnostic-flag,.problem-options button,.problem-result-links a,
  .source-compare-picker,.source-compare-row>div,.source-compare-actions a,
  .saved-card,.path-card,.wizard-continuation,.wizard-memory,.tool-quick-links a
){
  background:var(--tl-v199-surface)!important;
  background-color:var(--tl-v199-surface)!important;
  background-image:none!important;
  border-color:var(--tl-v199-border)!important;
  box-shadow:none!important;
}

/* No nested section may paint a different large background inside an article. */
html body.theme-dark :is(
  .article>section,.source-playbook-article>section,.academy-content-section,
  .logic-section-v103,.article-depth,.guide-v101-section,.platform-setup-section,
  .related-reading,.article-author,.article-exit-nav,.source-visual-section
),
html body.reference-ui-v99.theme-dark :is(
  .article>section,.source-playbook-article>section,.academy-content-section,
  .logic-section-v103,.article-depth,.guide-v101-section,.platform-setup-section,
  .related-reading,.article-author,.article-exit-nav,.source-visual-section
){
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Article sections use dividers rather than changing the fill. */
html body.theme-dark :is(.article>section,.source-playbook-article>section,.academy-content-section,.logic-section-v103),
html body.reference-ui-v99.theme-dark :is(.article>section,.source-playbook-article>section,.academy-content-section,.logic-section-v103){
  border-color:var(--tl-v199-divider)!important;
}

/* Callouts keep their semantic accent only in the border/text, never in the fill. */
html body.theme-dark :is(
  .inline-note,.playbook-risk,.guide-v101-callout,.warning-note,.service-warning,
  .logic-warning-v103,.logic-action-v103,.logic-analysis-v103,.logic-explain-v103,
  .partner-specific-box,.rules-action-box,.source-compare-note,.ref-tip-strip,.service-inline
),
html body.reference-ui-v99.theme-dark :is(
  .inline-note,.playbook-risk,.guide-v101-callout,.warning-note,.service-warning,
  .logic-warning-v103,.logic-action-v103,.logic-analysis-v103,.logic-explain-v103,
  .partner-specific-box,.rules-action-box,.source-compare-note,.ref-tip-strip,.service-inline
){
  background:var(--tl-v199-surface)!important;
  background-color:var(--tl-v199-surface)!important;
  background-image:none!important;
  border-color:var(--tl-v199-border)!important;
  box-shadow:none!important;
}

/* Tables no longer introduce a third dark shade. */
html body.theme-dark :is(table,thead,tbody,tr,th,td),
html body.reference-ui-v99.theme-dark :is(table,thead,tbody,tr,th,td){
  background:var(--tl-v199-surface)!important;
  background-color:var(--tl-v199-surface)!important;
  border-color:var(--tl-v199-border)!important;
}

/* Inputs/search fields belong to the same surface system. */
html body.theme-dark :is(input,select,textarea,.library-search,.catalog-search,.home-main-search),
html body.reference-ui-v99.theme-dark :is(input,select,textarea,.library-search,.catalog-search,.home-main-search){
  background:var(--tl-v199-surface)!important;
  background-color:var(--tl-v199-surface)!important;
  border-color:var(--tl-v199-border)!important;
  box-shadow:none!important;
}

/* Copy remains slightly softened; links keep the restrained warm accent. */
html body.theme-dark :is(p,li,dd,dt,figcaption,small,.lead,.section-entry p,.library-row p,.tool-card p,.service-tool p),
html body.reference-ui-v99.theme-dark :is(p,li,dd,dt,figcaption,small,.lead,.section-entry p,.library-row p,.tool-card p,.service-tool p){
  color:var(--tl-v199-muted)!important;
}
html body.theme-dark :is(a,.plain-link,.text-cta),
html body.reference-ui-v99.theme-dark :is(a,.plain-link,.text-cta){
  color:var(--tl-v199-accent)!important;
}

/* Small-screen framed surfaces keep compact but real inner padding. */
@media (max-width:900px){
  html body.theme-dark.internal-page-v198 :is(.article-page .article,.source-playbook-page .source-playbook-article),
  html body.reference-ui-v99.theme-dark.internal-page-v198 :is(.article-page .article,.source-playbook-page .source-playbook-article){
    padding:18px!important;
    border-radius:12px!important;
  }
  html body.theme-dark :is(.wrap.section-outcome,.section-group,.wrap.section-bottom-links,.wrap.handbook,.library-shell,.wrap.glossary,.wrap.notes-page,.wrap.tool-suite,.wrap.tool-memory,.wrap.beginner-term-note),
  html body.reference-ui-v99.theme-dark :is(.wrap.section-outcome,.section-group,.wrap.section-bottom-links,.wrap.handbook,.library-shell,.wrap.glossary,.wrap.notes-page,.wrap.tool-suite,.wrap.tool-memory,.wrap.beginner-term-note){
    padding:18px!important;
    border-radius:12px!important;
  }
}

/* ======================================================================
   v200 — quieter dark-mode text accents
   Warm brown/gold was drawing too much attention across ordinary links,
   navigation and code. Dark mode now uses cool slate for everyday
   interactive text; warm tone is reserved only for very subtle details.
   ====================================================================== */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --tl-v199-accent:#b8c4ce!important;
  --tl-v200-link:#b8c4ce;
  --tl-v200-link-hover:#e0e6eb;
  --tl-v200-code:#c6ced6;
  --tl-v200-label:#95a1ab;
}

/* Ordinary links should read as links, not as a second headline color. */
html body.theme-dark :is(
  a,.plain-link,.text-cta,.term-help,.rail-all-tools,
  .sidebar-partner-cta span,.section-bottom-links a,.home-actions a,
  .guide-v101-next a,.guide-v101-diagnostics a,.article-exit-nav a,
  .next-reading a,.bookmark-button,.saved-link,.service-tool>a,
  .source-toolkit-helper a,.source-toolkit-all a,.partner-specific-box>a,
  .geo-guideline-link,.playbook-card>a,.source-section-tabs a.is-current,
  .source-section-tabs a:first-child,.source-shot figcaption a,
  .service-open-link,.service-tool-actions>a,.service-inline-primary,
  .service-inline-secondary,.service-inline-more
),
html body.reference-ui-v99.theme-dark :is(
  a,.plain-link,.text-cta,.term-help,.rail-all-tools,
  .sidebar-partner-cta span,.section-bottom-links a,.home-actions a,
  .guide-v101-next a,.guide-v101-diagnostics a,.article-exit-nav a,
  .next-reading a,.bookmark-button,.saved-link,.service-tool>a,
  .source-toolkit-helper a,.source-toolkit-all a,.partner-specific-box>a,
  .geo-guideline-link,.playbook-card>a,.source-section-tabs a.is-current,
  .source-section-tabs a:first-child,.source-shot figcaption a,
  .service-open-link,.service-tool-actions>a,.service-inline-primary,
  .service-inline-secondary,.service-inline-more
){
  color:var(--tl-v200-link)!important;
}

html body.theme-dark :is(a:hover,.plain-link:hover,.text-cta:hover,.term-help:hover,.rail-all-tools:hover),
html body.reference-ui-v99.theme-dark :is(a:hover,.plain-link:hover,.text-cta:hover,.term-help:hover,.rail-all-tools:hover){
  color:var(--tl-v200-link-hover)!important;
}

/* Buttons and action links stay restrained as well. */
html body.theme-dark :is(
  .section-bottom-links a,.guide-v101-next a,.guide-v101-diagnostics a,
  .traffic-next a,.playbook-official a,.source-compare-actions a,
  .article-cta-row a,.service-task-nav a,.source-next-links a,
  .rail-all-tools,.service-inline-more
),
html body.reference-ui-v99.theme-dark :is(
  .section-bottom-links a,.guide-v101-next a,.guide-v101-diagnostics a,
  .traffic-next a,.playbook-official a,.source-compare-actions a,
  .article-cta-row a,.service-task-nav a,.source-next-links a,
  .rail-all-tools,.service-inline-more
){
  color:#c1cbd3!important;
  border-color:#3a4651!important;
}
html body.theme-dark :is(
  .section-bottom-links a:hover,.guide-v101-next a:hover,.guide-v101-diagnostics a:hover,
  .traffic-next a:hover,.playbook-official a:hover,.source-compare-actions a:hover,
  .article-cta-row a:hover,.service-task-nav a:hover,.source-next-links a:hover,
  .rail-all-tools:hover,.service-inline-more:hover
),
html body.reference-ui-v99.theme-dark :is(
  .section-bottom-links a:hover,.guide-v101-next a:hover,.guide-v101-diagnostics a:hover,
  .traffic-next a:hover,.playbook-official a:hover,.source-compare-actions a:hover,
  .article-cta-row a:hover,.service-task-nav a:hover,.source-next-links a:hover,
  .rail-all-tools:hover,.service-inline-more:hover
){
  color:#e1e7ec!important;
  border-color:#4a5865!important;
}

/* Tiny editorial labels should stay in the background visually. */
html body.theme-dark .service-inline:before,
html body.reference-ui-v99.theme-dark .service-inline:before,
html body.theme-dark :is(.article-label,.service-kicker,.home-kicker),
html body.reference-ui-v99.theme-dark :is(.article-label,.service-kicker,.home-kicker){
  color:var(--tl-v200-label)!important;
}

/* Code is content, not an accent block. */
html body.theme-dark :is(pre,code),
html body.reference-ui-v99.theme-dark :is(pre,code){
  color:var(--tl-v200-code)!important;
}

/* Current source tab gets a quiet underline instead of a warm text color. */
html body.theme-dark .source-section-tabs a.is-current,
html body.theme-dark .source-section-tabs a:first-child,
html body.reference-ui-v99.theme-dark .source-section-tabs a.is-current,
html body.reference-ui-v99.theme-dark .source-section-tabs a:first-child{
  color:#d7dee4!important;
  border-bottom-color:#56636f!important;
}

/* ======================================================================
   v201 — final dark-theme contrast audit
   Fixes remaining warm-number outliers and restores legibility to muted text.
   ====================================================================== */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --muted:#b0b9c3!important;
  --tl-dark-accent:#d9bf92!important;
  --tl-dark-accent-2:#d9bf92!important;
  --tl-dark-accent-strong:#edd7b0!important;
  --dark-accent:#d9bf92!important;
  --dark-accent-strong:#edd7b0!important;
  --dark-accent-soft:#d9bf92!important;
}

/* Base copy and secondary labels need a little more contrast. */
html body.theme-dark :is(p,li,dd,dt,small,figcaption,.lead,.article-meta,.breadcrumbs,.service-kicker,.source-tool-card-copy,.article-author p,.handbook-intro p,.playbook-card>p,.article p,.article li,.source-playbook-article p,.source-playbook-article li,.section-entry p,.section-outcome p,.guide-v101-formats p,.guide-v101-grid p,.guide-v101-verdict p,.guide-v101-flow p,.related-card p,.library-row p,.service-tool p,.tool-card p,.about-card p,.playbook-faq details p,.rail-quick a small,.source-compare-row>div,.compare-table>div,.rules-summary-grid p,.rules-model-grid li,.geo-chip-grid li,.geo-chip-grid li small,.geo-guideline-link span,.article td,.article dd,.source-playbook-article dd,.playbook-facts dt),
html body.reference-ui-v99.theme-dark :is(p,li,dd,dt,small,figcaption,.lead,.article-meta,.breadcrumbs,.service-kicker,.source-tool-card-copy,.article-author p,.handbook-intro p,.playbook-card>p,.article p,.article li,.source-playbook-article p,.source-playbook-article li,.section-entry p,.section-outcome p,.guide-v101-formats p,.guide-v101-grid p,.guide-v101-verdict p,.guide-v101-flow p,.related-card p,.library-row p,.service-tool p,.tool-card p,.about-card p,.playbook-faq details p,.rail-quick a small,.source-compare-row>div,.compare-table>div,.rules-summary-grid p,.rules-model-grid li,.geo-chip-grid li,.geo-chip-grid li small,.geo-guideline-link span,.article td,.article dd,.source-playbook-article dd,.playbook-facts dt){
  color:#b0b9c3!important;
}

/* Slightly restore warmth so links and emphasized helper text remain visible. */
html body.theme-dark :is(a,.plain-link,.text-cta,.rail-all-tools,.sidebar-partner-cta span,.section-bottom-links a,.home-actions a,.guide-v101-next a,.guide-v101-diagnostics a,.article-exit-nav a,.next-reading a,.bookmark-button,.saved-link,.service-tool>a,.source-toolkit-helper a,.source-toolkit-all a,.partner-specific-box>a,.geo-guideline-link,.playbook-card>a,.service-inline-more,.service-inline-secondary,.service-open-link,.service-tool-actions>a,.source-shot figcaption a),
html body.reference-ui-v99.theme-dark :is(a,.plain-link,.text-cta,.rail-all-tools,.sidebar-partner-cta span,.section-bottom-links a,.home-actions a,.guide-v101-next a,.guide-v101-diagnostics a,.article-exit-nav a,.next-reading a,.bookmark-button,.saved-link,.service-tool>a,.source-toolkit-helper a,.source-toolkit-all a,.partner-specific-box>a,.geo-guideline-link,.playbook-card>a,.service-inline-more,.service-inline-secondary,.service-open-link,.service-tool-actions>a,.source-shot figcaption a){
  color:#d9bf92!important;
}
html body.theme-dark :is(a:hover,.plain-link:hover,.text-cta:hover,.rail-all-tools:hover,.section-bottom-links a:hover,.home-actions a:hover,.guide-v101-next a:hover,.guide-v101-diagnostics a:hover,.article-exit-nav a:hover,.next-reading a:hover,.bookmark-button:hover,.saved-link:hover,.service-inline-more:hover,.service-inline-secondary:hover,.service-open-link:hover,.service-tool-actions>a:hover),
html body.reference-ui-v99.theme-dark :is(a:hover,.plain-link:hover,.text-cta:hover,.rail-all-tools:hover,.section-bottom-links a:hover,.home-actions a:hover,.guide-v101-next a:hover,.guide-v101-diagnostics a:hover,.article-exit-nav a:hover,.next-reading a:hover,.bookmark-button:hover,.saved-link:hover,.service-inline-more:hover,.service-inline-secondary:hover,.service-open-link:hover,.service-tool-actions>a:hover){
  color:#edd7b0!important;
}

/* Hero meta chips and other tiny labels were too quiet. */
html body.theme-dark :is(.academy-article-hero .article-meta span,.article-page .article-meta span,.article-actions-unified .saved-link,.sidebar-foot small,.library-type,.article-author>span,.article-editorial span,.aside-block>b,.footer-bottom span,.footer-grid b),
html body.reference-ui-v99.theme-dark :is(.academy-article-hero .article-meta span,.article-page .article-meta span,.article-actions-unified .saved-link,.sidebar-foot small,.library-type,.article-author>span,.article-editorial span,.aside-block>b,.footer-bottom span,.footer-grid b){
  color:#b9c2cb!important;
}
html body.theme-dark :is(.academy-article-hero .article-meta span b,.article-page .article-meta span b,.footer-brand,.article h1,.source-playbook-article h1),
html body.reference-ui-v99.theme-dark :is(.academy-article-hero .article-meta span b,.article-page .article-meta span b,.footer-brand,.article h1,.source-playbook-article h1){
  color:#f1f5f8!important;
}
html body.theme-dark :is(.academy-article-hero .article-meta span,.article-page .article-meta span),
html body.reference-ui-v99.theme-dark :is(.academy-article-hero .article-meta span,.article-page .article-meta span){
  background:#171c22!important;
  border-color:#39424d!important;
}

/* The TOC and helper rails should stay readable even when text is small. */
html body.theme-dark .rail-toc li a,
html body.reference-ui-v99.theme-dark .rail-toc li a{
  color:#bcc6cf!important;
}
html body.theme-dark .rail-toc li a:before,
html body.reference-ui-v99.theme-dark .rail-toc li a:before{
  color:#8f9aa6!important;
}
html body.theme-dark .rail-toc li a:hover,
html body.theme-dark .rail-toc li a.is-current,
html body.reference-ui-v99.theme-dark .rail-toc li a:hover,
html body.reference-ui-v99.theme-dark .rail-toc li a.is-current{
  color:#e6d0a8!important;
}
html body.theme-dark .rail-toc li a.is-current:before,
html body.reference-ui-v99.theme-dark .rail-toc li a.is-current:before{
  color:#e6d0a8!important;
}
html body.theme-dark .rail-tools a small,
html body.reference-ui-v99.theme-dark .rail-tools a small{
  color:#aeb8c2!important;
}

/* Final numbering unification: warning sections no longer revert to orange. */
html body.theme-dark :is(.logic-index-v103,.section-index,.guide-step-index,.journey-step-index,.flow-step-index,.rail-progress span,.playbook-checklist li:before,.service-task-nav .step-index,.source-playbook-page .playbook-steps>li>span:first-child,.source-playbook-article .guide-v101-steps li>span,.platform-setup li>span,.guide-v101-grid>div>span,.reading-state-badge,.rule-model-badge,.service-primary-badge,.about-route-v114 li:before),
html body.reference-ui-v99.theme-dark :is(.logic-index-v103,.section-index,.guide-step-index,.journey-step-index,.flow-step-index,.rail-progress span,.playbook-checklist li:before,.service-task-nav .step-index,.source-playbook-page .playbook-steps>li>span:first-child,.source-playbook-article .guide-v101-steps li>span,.platform-setup li>span,.guide-v101-grid>div>span,.reading-state-badge,.rule-model-badge,.service-primary-badge,.about-route-v114 li:before),
html body.theme-dark .logic-warning-v103 .logic-index-v103,
html body.reference-ui-v99.theme-dark .logic-warning-v103 .logic-index-v103{
  background:#18212a!important;
  background-image:none!important;
  border-color:#344352!important;
  color:#c7d3de!important;
  box-shadow:none!important;
}

/* Keep warning blocks distinct, but not with overbearing orange text. */
html body.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.inline-note,.logic-warning-v103),
html body.reference-ui-v99.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.inline-note,.logic-warning-v103){
  color:#c8d1da!important;
}
html body.theme-dark :is(.logic-warning-v103>h2::after),
html body.reference-ui-v99.theme-dark :is(.logic-warning-v103>h2::after){
  background:#1a222b!important;
  border:1px solid #344250!important;
  color:#c5d1db!important;
}

/* Secondary buttons/controls. */
html body.theme-dark :is(.bookmark-button,.service-inline-secondary,.service-inline-more,.service-tool-actions>a,.article-exit-nav a,.next-reading a,.rail-all-tools),
html body.reference-ui-v99.theme-dark :is(.bookmark-button,.service-inline-secondary,.service-inline-more,.service-tool-actions>a,.article-exit-nav a,.next-reading a,.rail-all-tools){
  background:#171d24!important;
  border-color:#38424d!important;
}

/* Small overlines that drifted too low in contrast. */
html body.theme-dark :is(.overline,.section-heading>div>span,.article-label,.service-kicker,.home-kicker,.catalog-label,.section-eyebrow),
html body.reference-ui-v99.theme-dark :is(.overline,.section-heading>div>span,.article-label,.service-kicker,.home-kicker,.catalog-label,.section-eyebrow){
  color:#c7d0d8!important;
}

/* ======================================================================
   v202 — remove last green copy and collapse figure dead space
   ====================================================================== */

/* No green body copy in dark theme inside article sections, notes and captions. */
html body.theme-dark :is(
  .academy-content-section p,.academy-content-section li,.academy-content-section dd,
  .logic-section-v103 p,.logic-section-v103 li,.logic-section-v103 dd,
  .article-depth p,.article-depth li,.inline-note,.inline-note p,
  .article-figure figcaption,.article-figure figcaption strong,
  .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
  .article-page .article-figure.compact:not(.source-journey-card)>figcaption strong
),
html body.reference-ui-v99.theme-dark :is(
  .academy-content-section p,.academy-content-section li,.academy-content-section dd,
  .logic-section-v103 p,.logic-section-v103 li,.logic-section-v103 dd,
  .article-depth p,.article-depth li,.inline-note,.inline-note p,
  .article-figure figcaption,.article-figure figcaption strong,
  .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
  .article-page .article-figure.compact:not(.source-journey-card)>figcaption strong
){
  color:#cfd7de!important;
}
html body.theme-dark :is(.article-figure figcaption strong,.inline-note strong,.inline-note b),
html body.reference-ui-v99.theme-dark :is(.article-figure figcaption strong,.inline-note strong,.inline-note b){
  color:#f2f6f8!important;
}

/* Force compact article figures into a clean vertical stack on desktop too.
   This removes the blank right column that occasionally remained visible. */
html body .article-page .article-figure.compact:not(.source-journey-card),
html body.reference-ui-v99 .article-page .article-figure.compact:not(.source-journey-card),
html body .source-playbook-page .article-figure.compact:not(.source-journey-card),
html body.reference-ui-v99 .source-playbook-page .article-figure.compact:not(.source-journey-card){
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:0!important;
}
html body .article-page .article-figure.compact:not(.source-journey-card)>img,
html body.reference-ui-v99 .article-page .article-figure.compact:not(.source-journey-card)>img,
html body .source-playbook-page .article-figure.compact:not(.source-journey-card)>img,
html body.reference-ui-v99 .source-playbook-page .article-figure.compact:not(.source-journey-card)>img{
  display:block!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  align-self:stretch!important;
  object-fit:contain!important;
  padding:12px!important;
}
html body .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body.reference-ui-v99 .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body.reference-ui-v99 .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  border-left:0!important;
  border-top:1px solid #e2e9e5!important;
  padding:14px 16px 16px!important;
}
html body.theme-dark .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body.reference-ui-v99.theme-dark .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body.theme-dark .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body.reference-ui-v99.theme-dark .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption{
  border-top-color:#2d3640!important;
}

/* ======================================================================
   v203 — align section landing headers with inner article/card rhythm
   ====================================================================== */

/* Section landing hero blocks should have the same inner breathing room as
   the framed cards below them. This keeps headings aligned with article/card
   content and prevents text from touching the frame edges. */
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow,
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap,
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow{
  padding:22px 24px!important;
}

html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap > :is(.overline,h1,p,.glossary-search),
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow > :is(.overline,h1,p,.glossary-search),
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap > :is(.overline,h1,p),
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow > :is(.overline,h1,p),
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap > *,
html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow > *{
  margin-left:0!important;
  margin-right:0!important;
}

/* Keep spacing tidy after padding is restored. */
html body .page-head h1,
html body .playbook-page-head h1{
  margin:8px 0 14px!important;
}
html body .page-head p,
html body .playbook-page-head p{
  max-width:78ch!important;
}

@media (max-width: 1100px){
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow{
    padding:20px 22px!important;
  }
}

@media (max-width: 650px){
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap,
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > .about-hero-v114 > .wrap.narrow{
    padding:18px 18px!important;
  }
}

/* ======================================================================
   v204 — restore inner padding for small framed utility blocks everywhere
   ====================================================================== */

/* Small framed blocks on section landing pages need the same breathing room
   as headers/articles. This prevents text and links from hugging the frame. */
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > :is(.beginner-term-note.wrap,.global-mode-guidance.wrap,.section-bottom-links.wrap,.wrap.section-outcome,.wrap.handbook,.library-shell,.wrap.glossary,.wrap.notes-page,.wrap.tool-suite,.wrap.tool-memory),
html body.about-page-v114.content-system-v103 main.compact-main-v103 > :is(.wrap.section-bottom-links,.wrap.beginner-term-note){
  padding:22px 24px!important;
  box-sizing:border-box!important;
}

/* Keep top/bottom rhythm tighter for the simple link strip while preserving
   comfortable left/right padding. */
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .section-bottom-links.wrap{
  padding-top:18px!important;
  padding-bottom:18px!important;
}

/* Prevent inline content from visually sticking to the frame edge. */
html body .beginner-term-note,
html body .global-mode-guidance,
html body .section-bottom-links{
  line-height:1.6!important;
}
html body .section-bottom-links a{
  display:inline-flex!important;
  align-items:center!important;
}

@media (max-width:900px){
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > :is(.beginner-term-note.wrap,.global-mode-guidance.wrap,.section-bottom-links.wrap,.wrap.section-outcome,.wrap.handbook,.library-shell,.wrap.glossary,.wrap.notes-page,.wrap.tool-suite,.wrap.tool-memory),
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > :is(.wrap.section-bottom-links,.wrap.beginner-term-note){
    padding:18px 20px!important;
  }
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .section-bottom-links.wrap{
    padding-top:16px!important;
    padding-bottom:16px!important;
  }
}

@media (max-width:650px){
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > :is(.beginner-term-note.wrap,.global-mode-guidance.wrap,.section-bottom-links.wrap,.wrap.section-outcome,.wrap.handbook,.library-shell,.wrap.glossary,.wrap.notes-page,.wrap.tool-suite,.wrap.tool-memory),
  html body.about-page-v114.content-system-v103 main.compact-main-v103 > :is(.wrap.section-bottom-links,.wrap.beginner-term-note){
    padding:16px 18px!important;
  }
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > .section-bottom-links.wrap{
    padding-top:14px!important;
    padding-bottom:14px!important;
  }
}

/* ======================================================================
   v205 — utility block links: no green accents, proper inner padding
   ====================================================================== */

/* Bottom utility links should read like calm compact pills, not edge-hugging
   colored text. */
html body .section-bottom-links a{
  padding:10px 14px!important;
  border:1px solid transparent!important;
  border-radius:10px!important;
  text-decoration:none!important;
}

html body.theme-dark .section-bottom-links a,
html body.reference-ui-v99.theme-dark .section-bottom-links a{
  color:#d7dfe6!important;
  background:#171d24!important;
  border-color:#33404c!important;
}
html body.theme-dark .section-bottom-links a:hover,
html body.reference-ui-v99.theme-dark .section-bottom-links a:hover{
  color:#f2f6f8!important;
  background:#1d252d!important;
  border-color:#455361!important;
}

/* Inline helper links in tiny framed notes should not turn green either. */
html body.theme-dark :is(.beginner-term-note a,.global-mode-guidance a),
html body.reference-ui-v99.theme-dark :is(.beginner-term-note a,.global-mode-guidance a){
  color:#d7dfe6!important;
}
html body.theme-dark :is(.beginner-term-note a:hover,.global-mode-guidance a:hover),
html body.reference-ui-v99.theme-dark :is(.beginner-term-note a:hover,.global-mode-guidance a:hover){
  color:#f2f6f8!important;
}

@media (max-width:650px){
  html body .section-bottom-links a{
    padding:10px 12px!important;
  }
}

/* ======================================================================
   v206 — compact library category pill, no overlap with article title
   ====================================================================== */
@media (min-width:701px){
  html body #libraryRows .library-row{
    grid-template-columns:170px minmax(0,1fr) 145px!important;
    column-gap:18px!important;
  }
  html body #libraryRows .library-type{
    width:fit-content!important;
    max-width:100%!important;
    min-height:31px!important;
    padding:0 10px!important;
    white-space:nowrap!important;
    font-size:9.5px!important;
    line-height:1!important;
    letter-spacing:.025em!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

html body.theme-dark #libraryRows .library-type,
html body.reference-ui-v99.theme-dark #libraryRows .library-type{
  background:#171d24!important;
  border-color:#46515c!important;
  color:#cfd8e0!important;
  box-shadow:none!important;
}

/* ======================================================================
   v207 — canonical dark numbering, no warm/orange exceptions anywhere
   ====================================================================== */

/* One final style for every numbered step/counter in dark mode. The extra
   specificity intentionally beats older warning-specific rules. */
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-section-v103 .logic-index-v103,
html body.theme-dark.content-system-v103 .structured-article-v103 .logic-warning-v103 .logic-index-v103,
html body.reference-ui-v99.theme-dark.content-system-v103 .structured-article-v103 .logic-section-v103 .logic-index-v103,
html body.reference-ui-v99.theme-dark.content-system-v103 .structured-article-v103 .logic-warning-v103 .logic-index-v103,
html body.theme-dark.content-system-v103 .logic-index-v103,
html body.reference-ui-v99.theme-dark.content-system-v103 .logic-index-v103,
html body.theme-dark :is(
  .section-index,.guide-step-index,.journey-step-index,.flow-step-index,
  .service-task-nav .step-index,
  .source-playbook-page .playbook-steps>li>span:first-child,
  .source-playbook-article .guide-v101-steps li>span,
  .platform-setup li>span,
  .guide-v101-grid>div>span,
  .reading-state-badge,.rule-model-badge,.service-primary-badge
),
html body.reference-ui-v99.theme-dark :is(
  .section-index,.guide-step-index,.journey-step-index,.flow-step-index,
  .service-task-nav .step-index,
  .source-playbook-page .playbook-steps>li>span:first-child,
  .source-playbook-article .guide-v101-steps li>span,
  .platform-setup li>span,
  .guide-v101-grid>div>span,
  .reading-state-badge,.rule-model-badge,.service-primary-badge
){
  background:#18212a!important;
  background-color:#18212a!important;
  background-image:none!important;
  border-color:#344352!important;
  color:#c7d3de!important;
  box-shadow:none!important;
}

/* Numbering generated with pseudo-elements follows the same palette. */
html body.theme-dark :is(
  .playbook-checklist li:before,
  .rail-quick a:before,
  .playbook-faq summary::before,
  .section-outcome li:before,
  .about-route-v114 li:before
),
html body.reference-ui-v99.theme-dark :is(
  .playbook-checklist li:before,
  .rail-quick a:before,
  .playbook-faq summary::before,
  .section-outcome li:before,
  .about-route-v114 li:before
){
  background:#18212a!important;
  background-color:#18212a!important;
  background-image:none!important;
  border-color:#344352!important;
  color:#c7d3de!important;
  box-shadow:none!important;
}

/* ======================================================================
   v208 — larger copy when a caption sits beside an image
   ====================================================================== */
@media (min-width:901px){
  html body .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
  html body.reference-ui-v99 .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
  html body .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption,
  html body.reference-ui-v99 .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption{
    font-size:16px!important;
    line-height:1.62!important;
  }
  html body .article-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
  html body.reference-ui-v99 .article-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
  html body .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
  html body.reference-ui-v99 .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption strong{
    font-size:16.5px!important;
    line-height:1.4!important;
  }
}

/* ======================================================================
   v209 — dark-theme inline service buttons are graphite, not white
   ====================================================================== */
html body.theme-dark .service-inline p .service-name-link,
html body.reference-ui-v99.theme-dark .service-inline p .service-name-link,
html body.theme-dark .article p .service-name-link,
html body.reference-ui-v99.theme-dark .article p .service-name-link{
  background:#202730!important;
  background-image:none!important;
  border-color:#3b4753!important;
  color:#e1e7ec!important;
  box-shadow:none!important;
}
html body.theme-dark .service-inline p .service-name-link :is(strong,b),
html body.reference-ui-v99.theme-dark .service-inline p .service-name-link :is(strong,b),
html body.theme-dark .article p .service-name-link :is(strong,b),
html body.reference-ui-v99.theme-dark .article p .service-name-link :is(strong,b){
  color:#e9eef2!important;
}
html body.theme-dark .service-inline p .service-name-link:hover,
html body.reference-ui-v99.theme-dark .service-inline p .service-name-link:hover,
html body.theme-dark .article p .service-name-link:hover,
html body.reference-ui-v99.theme-dark .article p .service-name-link:hover{
  background:#28323d!important;
  border-color:#52606d!important;
  color:#f4f7f9!important;
}

/* ======================================================================
   v210 — give compact outlined action buttons more breathing room
   ====================================================================== */
html body :is(
  .service-inline-secondary,.service-inline-more,
  .rail-all-tools,.service-open-link,.service-tool-actions>a,
  .article-exit-nav a,.next-reading a,.guide-v101-next a,
  .guide-v101-diagnostics a,.source-next-links a,.service-task-nav a
){
  min-height:36px!important;
  padding:8px 14px!important;
  line-height:1.35!important;
  box-sizing:border-box!important;
}

/* A little extra horizontal room for long instructional labels. */
html body .service-inline-actions :is(.service-inline-secondary,.service-inline-more){
  padding-left:15px!important;
  padding-right:15px!important;
}

@media (max-width:650px){
  html body :is(
    .service-inline-secondary,.service-inline-more,
    .rail-all-tools,.service-open-link,.service-tool-actions>a,
    .article-exit-nav a,.next-reading a,.guide-v101-next a,
    .guide-v101-diagnostics a,.source-next-links a,.service-task-nav a
  ){
    padding:8px 12px!important;
  }
}

/* ======================================================================
   v211 — roomier main article/frame padding
   ====================================================================== */

/* Main framed article/page containers need a bit more breathing room so the
   border does not feel glued to headings and body text. */
html body.theme-dark.internal-page-v198 :is(.article-page .article,.source-playbook-page .source-playbook-article),
html body.reference-ui-v99.theme-dark.internal-page-v198 :is(.article-page .article,.source-playbook-page .source-playbook-article){
  padding:28px!important;
}

html body.theme-dark :is(.page-head>.wrap,.section-landing-head>.wrap,.wrap.notes-page,.saved-page,.source-compare-page,.diagnostic-wizard-card,.wrap.glossary,.wrap.tool-suite,.wrap.tool-memory),
html body.reference-ui-v99.theme-dark :is(.page-head>.wrap,.section-landing-head>.wrap,.wrap.notes-page,.saved-page,.source-compare-page,.diagnostic-wizard-card,.wrap.glossary,.wrap.tool-suite,.wrap.tool-memory){
  padding:26px 28px!important;
}

@media (max-width:900px){
  html body.theme-dark.internal-page-v198 :is(.article-page .article,.source-playbook-page .source-playbook-article),
  html body.reference-ui-v99.theme-dark.internal-page-v198 :is(.article-page .article,.source-playbook-page .source-playbook-article){
    padding:22px!important;
  }

  html body.theme-dark :is(.page-head>.wrap,.section-landing-head>.wrap,.wrap.notes-page,.saved-page,.source-compare-page,.diagnostic-wizard-card,.wrap.glossary,.wrap.tool-suite,.wrap.tool-memory),
  html body.reference-ui-v99.theme-dark :is(.page-head>.wrap,.section-landing-head>.wrap,.wrap.notes-page,.saved-page,.source-compare-page,.diagnostic-wizard-card,.wrap.glossary,.wrap.tool-suite,.wrap.tool-memory){
    padding:20px 22px!important;
  }
}

@media (max-width:650px){
  html body.theme-dark.internal-page-v198 :is(.article-page .article,.source-playbook-page .source-playbook-article),
  html body.reference-ui-v99.theme-dark.internal-page-v198 :is(.article-page .article,.source-playbook-page .source-playbook-article){
    padding:18px!important;
  }

  html body.theme-dark :is(.page-head>.wrap,.section-landing-head>.wrap,.wrap.notes-page,.saved-page,.source-compare-page,.diagnostic-wizard-card,.wrap.glossary,.wrap.tool-suite,.wrap.tool-memory),
  html body.reference-ui-v99.theme-dark :is(.page-head>.wrap,.section-landing-head>.wrap,.wrap.notes-page,.saved-page,.source-compare-page,.diagnostic-wizard-card,.wrap.glossary,.wrap.tool-suite,.wrap.tool-memory){
    padding:16px 18px!important;
  }
}

/* ======================================================================
   v212 — remove framed background from internal page headers
   ====================================================================== */

/* Page headings no longer sit inside a separate bordered/fill card. Keep the
   alignment and spacing, but let the header merge with the page canvas. */
html body.theme-dark :is(.page-head>.wrap,.section-landing-head>.wrap),
html body.reference-ui-v99.theme-dark :is(.page-head>.wrap,.section-landing-head>.wrap),
html body:not(.theme-dark) :is(.page-head>.wrap,.section-landing-head>.wrap){
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

/* The outer header section itself should not create a second colored slab. */
html body.theme-dark :is(.page-head,.section-landing-head),
html body.reference-ui-v99.theme-dark :is(.page-head,.section-landing-head),
html body:not(.theme-dark) :is(.page-head,.section-landing-head){
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
html body :is(.page-head,.section-landing-head)::after{
  display:none!important;
}

/* Keep comfortable text inset even without a visible frame. */
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap,
html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow{
  padding:20px 24px!important;
}

@media (max-width:650px){
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap,
  html body.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head.journal-head.compact-block-v103 > .wrap.narrow{
    padding:16px 18px!important;
  }
}

/* ======================================================================
   v213 — ONE article + right-rail layout rule for every article page
   The article and its right menu always form one centered grid.
   ====================================================================== */
@media (min-width:1051px){
  :root{
    --tl-v213-article:800px;
    --tl-v213-rail:230px;
    --tl-v213-gap:24px;
    --tl-v213-gutter:18px;
  }

  html body.article-page main#main-content > .wrap.article-layout{
    display:grid!important;
    grid-template-columns:minmax(0,var(--tl-v213-article)) var(--tl-v213-rail)!important;
    column-gap:var(--tl-v213-gap)!important;
    row-gap:0!important;
    width:min(
      calc(100% - (var(--tl-v213-gutter) * 2)),
      calc(var(--tl-v213-article) + var(--tl-v213-rail) + var(--tl-v213-gap))
    )!important;
    max-width:calc(var(--tl-v213-article) + var(--tl-v213-rail) + var(--tl-v213-gap))!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    justify-content:center!important;
    align-items:start!important;
    box-sizing:border-box!important;
  }

  html body.article-page main#main-content > .wrap.article-layout > :is(.article,.source-playbook-article){
    grid-column:1!important;
    width:100%!important;
    min-width:0!important;
    max-width:var(--tl-v213-article)!important;
    margin-left:0!important;
    margin-right:0!important;
    justify-self:stretch!important;
  }

  html body.article-page main#main-content > .wrap.article-layout > :is(.article-aside,aside){
    grid-column:2!important;
    width:var(--tl-v213-rail)!important;
    min-width:var(--tl-v213-rail)!important;
    max-width:var(--tl-v213-rail)!important;
    margin-left:0!important;
    margin-right:0!important;
    inset-inline:auto!important;
    transform:none!important;
    justify-self:start!important;
    align-self:start!important;
  }
}

/* ======================================================================
   v214 — adaptive right-rail TOC scrolling
   Show the whole contents list when the complete right rail fits in the
   viewport. Keep the existing compact scrolling behavior only when needed.
   ====================================================================== */
@media (min-width:1051px){
  html body.article-page .article-aside.enhanced-rail.rail-fits-viewport,
  html body.reference-ui-v99.article-page .article-aside.enhanced-rail.rail-fits-viewport{
    max-height:none!important;
    overflow:visible!important;
  }

  html body.article-page .article-aside.enhanced-rail.rail-fits-viewport .rail-toc,
  html body.reference-ui-v99.article-page .article-aside.enhanced-rail.rail-fits-viewport .rail-toc{
    max-height:none!important;
    overflow:visible!important;
  }

  html body.article-page .article-aside.enhanced-rail.rail-fits-viewport .rail-toc ol,
  html body.reference-ui-v99.article-page .article-aside.enhanced-rail.rail-fits-viewport .rail-toc ol{
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
    scrollbar-width:none!important;
  }

  html body.article-page .article-aside.enhanced-rail.rail-fits-viewport .rail-toc ol::-webkit-scrollbar,
  html body.reference-ui-v99.article-page .article-aside.enhanced-rail.rail-fits-viewport .rail-toc ol::-webkit-scrollbar{
    display:none!important;
  }
}

/* ======================================================================
   v215 — roomier frames on About page sections
   ====================================================================== */
body.about-page-v114 .about-section-v114,
html body.theme-dark.about-page-v114 .about-section-v114,
html body.reference-ui-v99.theme-dark.about-page-v114 .about-section-v114{
  padding:24px 26px!important;
  margin-bottom:22px!important;
  box-sizing:border-box!important;
}

body.about-page-v114 .about-section-v114:last-child,
html body.theme-dark.about-page-v114 .about-section-v114:last-child,
html body.reference-ui-v99.theme-dark.about-page-v114 .about-section-v114:last-child{
  margin-bottom:0!important;
}

@media (max-width:900px){
  body.about-page-v114 .about-section-v114,
  html body.theme-dark.about-page-v114 .about-section-v114,
  html body.reference-ui-v99.theme-dark.about-page-v114 .about-section-v114{
    padding:20px 22px!important;
  }
}

@media (max-width:650px){
  body.about-page-v114 .about-section-v114,
  html body.theme-dark.about-page-v114 .about-section-v114,
  html body.reference-ui-v99.theme-dark.about-page-v114 .about-section-v114{
    padding:17px 18px!important;
  }
}

/* ======================================================================
   v216 — header alignment after frame removal
   Internal page headers must share the same centered content column as the
   main content that follows.
   ====================================================================== */

html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap,
html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap.narrow,
html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.journal-head.compact-block-v103 > .wrap,
html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.journal-head.compact-block-v103 > .wrap.narrow{
  width:min(calc(100% - (var(--tl-v192-page-gutter) * 2)), var(--tl-v192-page-max))!important;
  max-width:var(--tl-v192-page-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
  padding:26px 28px!important;
}

/* Journal title previously inherited a narrower max-width than the rest of
   the page. Remove that mismatch so the header starts on the same line as the
   content column below. */
html body .journal-head .narrow{
  max-width:none!important;
}

@media (max-width:1100px){
  html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap,
  html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.journal-head.compact-block-v103 > .wrap,
  html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.journal-head.compact-block-v103 > .wrap.narrow{
    width:calc(100% - (var(--tl-v192-page-gutter-tablet) * 2))!important;
    padding:20px 22px!important;
  }
}

@media (max-width:650px){
  html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap,
  html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap.narrow,
  html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.journal-head.compact-block-v103 > .wrap,
  html body.content-system-v103.internal-page-v198 main.compact-main-v103 > section.page-head.journal-head.compact-block-v103 > .wrap.narrow{
    width:calc(100% - (var(--tl-v192-page-gutter-mobile) * 2))!important;
    padding:16px 18px!important;
  }
}

/* ======================================================================
   v217 — wider right rails, pushed to the site's right edge, footer-safe
   One desktop rule for all article/source pages.
   ====================================================================== */

@media (min-width:1051px){
  :root{
    --tl-v217-page-max:1240px;
    --tl-v217-rail:292px;
    --tl-v217-gap:32px;
    --tl-v217-gutter:18px;
  }

  /* Use the full internal-page canvas and push the rail to the far right. */
  html body.article-page main#main-content > .wrap.article-layout,
  html body.reference-ui-v99.article-page main#main-content > .wrap.article-layout,
  html body.content-system-v103 main.source-playbook-page > .wrap.article-layout,
  html body.reference-ui-v99.content-system-v103 main.source-playbook-page > .wrap.article-layout,
  html body.theme-dark.article-page main#main-content > .wrap.article-layout,
  html body.reference-ui-v99.theme-dark.article-page main#main-content > .wrap.article-layout,
  html body.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout,
  html body.reference-ui-v99.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:var(--tl-v217-gap)!important;
    width:min(calc(100% - (var(--tl-v217-gutter) * 2)), var(--tl-v217-page-max))!important;
    max-width:var(--tl-v217-page-max)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-bottom:118px!important;
    box-sizing:border-box!important;
  }

  html body.article-page main#main-content > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.reference-ui-v99.article-page main#main-content > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.content-system-v103 main.source-playbook-page > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.reference-ui-v99.content-system-v103 main.source-playbook-page > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.theme-dark.article-page main#main-content > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.reference-ui-v99.theme-dark.article-page main#main-content > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.reference-ui-v99.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout > :is(.article,.source-playbook-article){
    flex:1 1 auto!important;
    width:auto!important;
    max-width:calc(var(--tl-v217-page-max) - var(--tl-v217-rail) - var(--tl-v217-gap))!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  html body.article-page main#main-content > .wrap.article-layout > :is(.article-aside,aside),
  html body.reference-ui-v99.article-page main#main-content > .wrap.article-layout > :is(.article-aside,aside),
  html body.content-system-v103 main.source-playbook-page > .wrap.article-layout > :is(.article-aside,aside),
  html body.reference-ui-v99.content-system-v103 main.source-playbook-page > .wrap.article-layout > :is(.article-aside,aside),
  html body.theme-dark.article-page main#main-content > .wrap.article-layout > :is(.article-aside,aside),
  html body.reference-ui-v99.theme-dark.article-page main#main-content > .wrap.article-layout > :is(.article-aside,aside),
  html body.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout > :is(.article-aside,aside),
  html body.reference-ui-v99.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout > :is(.article-aside,aside){
    flex:0 0 var(--tl-v217-rail)!important;
    width:var(--tl-v217-rail)!important;
    min-width:var(--tl-v217-rail)!important;
    max-width:var(--tl-v217-rail)!important;
    margin-left:auto!important;
    margin-right:0!important;
    justify-self:auto!important;
    align-self:start!important;
  }

  /* Keep the sticky menu comfortably above the footer and within the viewport. */
  html body .article-aside.enhanced-rail,
  html body.reference-ui-v99 .article-aside.enhanced-rail{
    top:calc(var(--academy-header) + 16px)!important;
    max-height:calc(100vh - var(--academy-header) - 30px)!important;
    padding-bottom:2px!important;
  }

  /* If a page still uses the older plain aside styling, widen it too. */
  html body.article-page .article-aside:not(.enhanced-rail),
  html body.reference-ui-v99.article-page .article-aside:not(.enhanced-rail),
  html body.content-system-v103 main.source-playbook-page .article-aside:not(.enhanced-rail),
  html body.reference-ui-v99.content-system-v103 main.source-playbook-page .article-aside:not(.enhanced-rail){
    width:var(--tl-v217-rail)!important;
    min-width:var(--tl-v217-rail)!important;
    max-width:var(--tl-v217-rail)!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }
}

/* ======================================================================
   v218 — dark-theme article width parity with light theme
   The dark article frame adds horizontal padding, so give the article column
   extra outer width to keep the readable text area equal to light theme.
   ====================================================================== */

@media (min-width:1051px){
  html body.theme-dark.article-page main#main-content > .wrap.article-layout,
  html body.reference-ui-v99.theme-dark.article-page main#main-content > .wrap.article-layout,
  html body.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout,
  html body.reference-ui-v99.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout{
    width:min(calc(100% - (var(--tl-v217-gutter) * 2)), 1296px)!important;
    max-width:1296px!important;
  }

  html body.theme-dark.article-page main#main-content > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.reference-ui-v99.theme-dark.article-page main#main-content > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.reference-ui-v99.theme-dark.content-system-v103 main.source-playbook-page > .wrap.article-layout > :is(.article,.source-playbook-article){
    max-width:972px!important;
    width:972px!important;
    flex:0 1 972px!important;
  }
}

/* ======================================================================
   v219 — FAQ blocks: remove inner fill/background
   Keep the border and spacing, but let FAQ rows sit on the article canvas
   without the extra tinted strip inside each item.
   ====================================================================== */

html body .playbook-faq details,
html body .playbook-faq summary,
html body .playbook-faq details p,
html body.reference-ui-v99 .playbook-faq details,
html body.reference-ui-v99 .playbook-faq summary,
html body.reference-ui-v99 .playbook-faq details p{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

html body.theme-dark .playbook-faq details,
html body.theme-dark .playbook-faq summary,
html body.theme-dark .playbook-faq details p,
html body.reference-ui-v99.theme-dark .playbook-faq details,
html body.reference-ui-v99.theme-dark .playbook-faq summary,
html body.reference-ui-v99.theme-dark .playbook-faq details p{
  background:transparent!important;
  background-image:none!important;
}

/* ======================================================================
   v220 — traffic source articles: remove all remaining patchy backgrounds
   in dark theme and unify every surface to one calm dark panel family.
   ====================================================================== */

html body.theme-dark main.source-playbook-page :is(
  .playbook-infrastructure,
  .playbook-method li,
  .playbook-fit-grid > div,
  .playbook-checklist li,
  .playbook-format-list > div,
  .playbook-steps > li,
  .playbook-week li,
  .playbook-columns > div,
  .playbook-decision,
  .playbook-decision article,
  .playbook-tips,
  .playbook-official a,
  .playbook-facts > div,
  .source-playbook-article > .playbook-facts > div,
  .source-tool-card,
  .source-journey-card,
  .article-figure,
  .guide-v101-formats > article,
  .guide-v101-grid > div,
  .guide-v101-media,
  .guide-v101-link-options > div,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .guide-v101-callout:not(.warning),
  .guide-v101-diagnostics a,
  .related-reading,
  .related-primary,
  .related-secondary,
  .field-case,
  .tool-panel,
  .source-title-visual,
  .playbook-faq details,
  .source-playbook-page .article-aside .aside-block,
  .rail-quick,
  .rail-quick a,
  .rail-tools a,
  .rail-related-visual > a,
  .ref-source-funnel,
  .ref-format-card,
  .ref-track-card,
  .ref-metrics-card,
  .ref-metrics-row > div,
  .ref-connected-tools a,
  .playbook-template-list span,
  .ref-connected-tools > div > a,
  .ref-metrics-row > div,
  .playbook-head-actions a,
  .source-compare-actions a
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .playbook-infrastructure,
  .playbook-method li,
  .playbook-fit-grid > div,
  .playbook-checklist li,
  .playbook-format-list > div,
  .playbook-steps > li,
  .playbook-week li,
  .playbook-columns > div,
  .playbook-decision,
  .playbook-decision article,
  .playbook-tips,
  .playbook-official a,
  .playbook-facts > div,
  .source-playbook-article > .playbook-facts > div,
  .source-tool-card,
  .source-journey-card,
  .article-figure,
  .guide-v101-formats > article,
  .guide-v101-grid > div,
  .guide-v101-media,
  .guide-v101-link-options > div,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .guide-v101-callout:not(.warning),
  .guide-v101-diagnostics a,
  .related-reading,
  .related-primary,
  .related-secondary,
  .field-case,
  .tool-panel,
  .source-title-visual,
  .playbook-faq details,
  .source-playbook-page .article-aside .aside-block,
  .rail-quick,
  .rail-quick a,
  .rail-tools a,
  .rail-related-visual > a,
  .ref-source-funnel,
  .ref-format-card,
  .ref-track-card,
  .ref-metrics-card,
  .ref-metrics-row > div,
  .ref-connected-tools a,
  .playbook-template-list span,
  .ref-connected-tools > div > a,
  .ref-metrics-row > div,
  .playbook-head-actions a,
  .source-compare-actions a
){
  background:#171c22!important;
  background-image:none!important;
  border-color:#2f3843!important;
  box-shadow:none!important;
}

/* Keep media wells slightly darker, but still uniform. */
html body.theme-dark main.source-playbook-page :is(
  .source-title-visual,
  .source-journey-card img,
  .article-figure img,
  .guide-v101-media img,
  .guide-v101-format-art,
  .source-hero-icon
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .source-title-visual,
  .source-journey-card img,
  .article-figure img,
  .guide-v101-media img,
  .guide-v101-format-art,
  .source-hero-icon
){
  background:#151a20!important;
  background-image:none!important;
  border-color:#2f3843!important;
}

/* Active tabs should not introduce another fill patch. */
html body.theme-dark main.source-playbook-page .source-section-tabs a,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-section-tabs a{
  background:transparent!important;
  background-image:none!important;
}
html body.theme-dark main.source-playbook-page .source-section-tabs a:is(.is-current,:first-child),
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-section-tabs a:is(.is-current,:first-child){
  background:transparent!important;
  background-image:none!important;
}

/* ======================================================================
   v221 — source article blocks: restore comfortable inner padding
   After the dark-theme unification pass, some content blocks need explicit
   inner spacing so text never hugs the frame edges.
   ====================================================================== */

html body.theme-dark main.source-playbook-page :is(
  .playbook-infrastructure,
  .playbook-method li,
  .playbook-fit-grid > div,
  .playbook-checklist li,
  .playbook-format-list > div,
  .playbook-steps > li,
  .playbook-week li,
  .playbook-columns > div,
  .playbook-decision article,
  .playbook-tips,
  .playbook-official a,
  .playbook-facts > div,
  .source-playbook-article > .playbook-facts > div,
  .source-tool-card,
  .source-journey-card,
  .article-figure,
  .guide-v101-formats > article,
  .guide-v101-grid > div,
  .guide-v101-media,
  .guide-v101-link-options > div,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .guide-v101-callout:not(.warning),
  .guide-v101-diagnostics a,
  .related-reading,
  .related-primary,
  .related-secondary,
  .field-case,
  .tool-panel,
  .playbook-faq details,
  .source-playbook-page .article-aside .aside-block,
  .rail-quick,
  .rail-quick a,
  .rail-tools a,
  .rail-related-visual > a,
  .ref-source-funnel,
  .ref-format-card,
  .ref-track-card,
  .ref-metrics-card,
  .ref-metrics-row > div,
  .ref-connected-tools a,
  .playbook-template-list span,
  .playbook-head-actions a,
  .source-compare-actions a
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .playbook-infrastructure,
  .playbook-method li,
  .playbook-fit-grid > div,
  .playbook-checklist li,
  .playbook-format-list > div,
  .playbook-steps > li,
  .playbook-week li,
  .playbook-columns > div,
  .playbook-decision article,
  .playbook-tips,
  .playbook-official a,
  .playbook-facts > div,
  .source-playbook-article > .playbook-facts > div,
  .source-tool-card,
  .source-journey-card,
  .article-figure,
  .guide-v101-formats > article,
  .guide-v101-grid > div,
  .guide-v101-media,
  .guide-v101-link-options > div,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .guide-v101-callout:not(.warning),
  .guide-v101-diagnostics a,
  .related-reading,
  .related-primary,
  .related-secondary,
  .field-case,
  .tool-panel,
  .playbook-faq details,
  .source-playbook-page .article-aside .aside-block,
  .rail-quick,
  .rail-quick a,
  .rail-tools a,
  .rail-related-visual > a,
  .ref-source-funnel,
  .ref-format-card,
  .ref-track-card,
  .ref-metrics-card,
  .ref-metrics-row > div,
  .ref-connected-tools a,
  .playbook-template-list span,
  .playbook-head-actions a,
  .source-compare-actions a
){
  box-sizing:border-box!important;
}

html body.theme-dark main.source-playbook-page :is(
  .playbook-method li,
  .playbook-fit-grid > div,
  .playbook-checklist li,
  .playbook-format-list > div,
  .playbook-steps > li,
  .playbook-week li,
  .playbook-columns > div,
  .playbook-decision article,
  .playbook-tips,
  .source-tool-card,
  .source-journey-card,
  .guide-v101-formats > article,
  .guide-v101-grid > div,
  .guide-v101-link-options > div,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .guide-v101-callout:not(.warning),
  .field-case,
  .tool-panel,
  .ref-source-funnel,
  .ref-format-card,
  .ref-track-card,
  .ref-metrics-card,
  .ref-metrics-row > div,
  .ref-connected-tools a
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .playbook-method li,
  .playbook-fit-grid > div,
  .playbook-checklist li,
  .playbook-format-list > div,
  .playbook-steps > li,
  .playbook-week li,
  .playbook-columns > div,
  .playbook-decision article,
  .playbook-tips,
  .source-tool-card,
  .source-journey-card,
  .guide-v101-formats > article,
  .guide-v101-grid > div,
  .guide-v101-link-options > div,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .guide-v101-callout:not(.warning),
  .field-case,
  .tool-panel,
  .ref-source-funnel,
  .ref-format-card,
  .ref-track-card,
  .ref-metrics-card,
  .ref-metrics-row > div,
  .ref-connected-tools a
){
  padding:16px 18px!important;
}

html body.theme-dark main.source-playbook-page :is(.playbook-faq summary,.playbook-faq details p),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(.playbook-faq summary,.playbook-faq details p){
  padding-left:18px!important;
  padding-right:18px!important;
}

html body.theme-dark main.source-playbook-page :is(.playbook-facts > div,.source-playbook-article > .playbook-facts > div),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(.playbook-facts > div,.source-playbook-article > .playbook-facts > div){
  padding:10px 12px!important;
}

html body.theme-dark main.source-playbook-page :is(.rail-quick,.rail-tools a,.rail-related-visual > a,.playbook-head-actions a,.source-compare-actions a),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(.rail-quick,.rail-tools a,.rail-related-visual > a,.playbook-head-actions a,.source-compare-actions a){
  padding:12px 14px!important;
}

@media (max-width:900px){
  html body.theme-dark main.source-playbook-page :is(
    .playbook-method li,
    .playbook-fit-grid > div,
    .playbook-checklist li,
    .playbook-format-list > div,
    .playbook-steps > li,
    .playbook-week li,
    .playbook-columns > div,
    .playbook-decision article,
    .playbook-tips,
    .source-tool-card,
    .source-journey-card,
    .guide-v101-formats > article,
    .guide-v101-grid > div,
    .guide-v101-link-options > div,
    .guide-v101-flow,
    .guide-v101-verdict,
    .guide-v101-code,
    .guide-v101-callout:not(.warning),
    .field-case,
    .tool-panel,
    .ref-source-funnel,
    .ref-format-card,
    .ref-track-card,
    .ref-metrics-card,
    .ref-metrics-row > div,
    .ref-connected-tools a
  ),
  html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
    .playbook-method li,
    .playbook-fit-grid > div,
    .playbook-checklist li,
    .playbook-format-list > div,
    .playbook-steps > li,
    .playbook-week li,
    .playbook-columns > div,
    .playbook-decision article,
    .playbook-tips,
    .source-tool-card,
    .source-journey-card,
    .guide-v101-formats > article,
    .guide-v101-grid > div,
    .guide-v101-link-options > div,
    .guide-v101-flow,
    .guide-v101-verdict,
    .guide-v101-code,
    .guide-v101-callout:not(.warning),
    .field-case,
    .tool-panel,
    .ref-source-funnel,
    .ref-format-card,
    .ref-track-card,
    .ref-metrics-card,
    .ref-metrics-row > div,
    .ref-connected-tools a
  ){
    padding:14px 16px!important;
  }
}


/* ======================================================================
   v222 — larger and cleaner traffic-source icons
   Increase source icons everywhere and replace weak generic pictograms.
   ====================================================================== */

html body .playbook-card[data-source="youtube"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%225%22%20y%3D%2213%22%20width%3D%2254%22%20height%3D%2238%22%20rx%3D%2213%22%20fill%3D%22%23ff2d2d%22%2F%3E%3Cpath%20d%3D%22M27%2023l18%209-18%209z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-youtube{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%225%22%20y%3D%2213%22%20width%3D%2254%22%20height%3D%2238%22%20rx%3D%2213%22%20fill%3D%22%23ff2d2d%22%2F%3E%3Cpath%20d%3D%22M27%2023l18%209-18%209z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="vk-video"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%226%22%20y%3D%226%22%20width%3D%2252%22%20height%3D%2252%22%20rx%3D%2216%22%20fill%3D%22%232787f5%22%2F%3E%3Cpath%20d%3D%22M15%2021h9c.7%207.4%203.6%2011.4%207.2%2013.5V21H39v8.2c3.1-.4%206.3-4%208.2-8.2H54c-1.7%205.8-6.1%2010.8-9.2%2012.8%203.1%201.7%208.1%206.2%2010.2%2011.2h-8.1c-2.3-3.8-5.1-6.7-7.9-6.7V45h-3.6C22.7%2045%2015.8%2036.2%2015%2021Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-vk-video{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%226%22%20y%3D%226%22%20width%3D%2252%22%20height%3D%2252%22%20rx%3D%2216%22%20fill%3D%22%232787f5%22%2F%3E%3Cpath%20d%3D%22M15%2021h9c.7%207.4%203.6%2011.4%207.2%2013.5V21H39v8.2c3.1-.4%206.3-4%208.2-8.2H54c-1.7%205.8-6.1%2010.8-9.2%2012.8%203.1%201.7%208.1%206.2%2010.2%2011.2h-8.1c-2.3-3.8-5.1-6.7-7.9-6.7V45h-3.6C22.7%2045%2015.8%2036.2%2015%2021Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="telegram"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2232%22%20r%3D%2228%22%20fill%3D%22%232AABEE%22%2F%3E%3Cpath%20d%3D%22M16%2031.5%2049%2018.7c1.5-.6%202.8.4%202.3%202.4l-5.6%2026.4c-.4%201.9-1.6%202.4-3.2%201.5l-8.5-6.3-4.1%204c-.5.5-.9.9-1.8.9l.6-8.8%2016-14.5c.7-.6-.2-1-1.1-.4L23.8%2036.3l-8.5-2.7c-1.9-.6-1.9-1.8.7-2.1Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-telegram{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2232%22%20r%3D%2228%22%20fill%3D%22%232AABEE%22%2F%3E%3Cpath%20d%3D%22M16%2031.5%2049%2018.7c1.5-.6%202.8.4%202.3%202.4l-5.6%2026.4c-.4%201.9-1.6%202.4-3.2%201.5l-8.5-6.3-4.1%204c-.5.5-.9.9-1.8.9l.6-8.8%2016-14.5c.7-.6-.2-1-1.1-.4L23.8%2036.3l-8.5-2.7c-1.9-.6-1.9-1.8.7-2.1Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="content-site"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%227%22%20y%3D%229%22%20width%3D%2250%22%20height%3D%2246%22%20rx%3D%2210%22%20fill%3D%22%231f8b68%22%2F%3E%3Crect%20x%3D%2212%22%20y%3D%2217%22%20width%3D%2240%22%20height%3D%2232%22%20rx%3D%225%22%20fill%3D%22%23fff%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2213%22%20r%3D%222%22%20fill%3D%22%23bfe8d8%22%2F%3E%3Ccircle%20cx%3D%2221%22%20cy%3D%2213%22%20r%3D%222%22%20fill%3D%22%23bfe8d8%22%2F%3E%3Ccircle%20cx%3D%2227%22%20cy%3D%2213%22%20r%3D%222%22%20fill%3D%22%23bfe8d8%22%2F%3E%3Cpath%20d%3D%22M18%2025h21M18%2031h28M18%2037h17%22%20stroke%3D%22%231f8b68%22%20stroke-width%3D%223.5%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22m39%2039%207%206%202-9-9%203Z%22%20fill%3D%22%23f2b84b%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-content-site{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%227%22%20y%3D%229%22%20width%3D%2250%22%20height%3D%2246%22%20rx%3D%2210%22%20fill%3D%22%231f8b68%22%2F%3E%3Crect%20x%3D%2212%22%20y%3D%2217%22%20width%3D%2240%22%20height%3D%2232%22%20rx%3D%225%22%20fill%3D%22%23fff%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2213%22%20r%3D%222%22%20fill%3D%22%23bfe8d8%22%2F%3E%3Ccircle%20cx%3D%2221%22%20cy%3D%2213%22%20r%3D%222%22%20fill%3D%22%23bfe8d8%22%2F%3E%3Ccircle%20cx%3D%2227%22%20cy%3D%2213%22%20r%3D%222%22%20fill%3D%22%23bfe8d8%22%2F%3E%3Cpath%20d%3D%22M18%2025h21M18%2031h28M18%2037h17%22%20stroke%3D%22%231f8b68%22%20stroke-width%3D%223.5%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22m39%2039%207%206%202-9-9%203Z%22%20fill%3D%22%23f2b84b%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="social"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%220%22%20y1%3D%221%22%20x2%3D%221%22%20y2%3D%220%22%3E%3Cstop%20stop-color%3D%22%23feda75%22%2F%3E%3Cstop%20offset%3D%22.34%22%20stop-color%3D%22%23fa7e1e%22%2F%3E%3Cstop%20offset%3D%22.66%22%20stop-color%3D%22%23d62976%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%234f5bd5%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Crect%20x%3D%227%22%20y%3D%227%22%20width%3D%2250%22%20height%3D%2250%22%20rx%3D%2216%22%20fill%3D%22url%28%23g%29%22%2F%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2232%22%20r%3D%2212%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%224%22%2F%3E%3Ccircle%20cx%3D%2246%22%20cy%3D%2219%22%20r%3D%223.4%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-social{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%220%22%20y1%3D%221%22%20x2%3D%221%22%20y2%3D%220%22%3E%3Cstop%20stop-color%3D%22%23feda75%22%2F%3E%3Cstop%20offset%3D%22.34%22%20stop-color%3D%22%23fa7e1e%22%2F%3E%3Cstop%20offset%3D%22.66%22%20stop-color%3D%22%23d62976%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%234f5bd5%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Crect%20x%3D%227%22%20y%3D%227%22%20width%3D%2250%22%20height%3D%2250%22%20rx%3D%2216%22%20fill%3D%22url%28%23g%29%22%2F%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2232%22%20r%3D%2212%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%224%22%2F%3E%3Ccircle%20cx%3D%2246%22%20cy%3D%2219%22%20r%3D%223.4%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="communities"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2224%22%20r%3D%229%22%20fill%3D%22%236c7dff%22%2F%3E%3Ccircle%20cx%3D%2243%22%20cy%3D%2227%22%20r%3D%227%22%20fill%3D%22%239b8cff%22%2F%3E%3Cpath%20d%3D%22M9%2049c1.4-10%207.2-15%2015-15%207.7%200%2013.6%205%2015%2015H9Z%22%20fill%3D%22%236c7dff%22%2F%3E%3Cpath%20d%3D%22M36%2049c1.1-6.6%204.4-10.2%209.4-10.2%205.2%200%208.7%203.6%209.6%2010.2H36Z%22%20fill%3D%22%239b8cff%22%2F%3E%3Cpath%20d%3D%22M35%2011h19v15H43l-6%205v-5h-2z%22%20fill%3D%22%23f6c95c%22%2F%3E%3Ccircle%20cx%3D%2242%22%20cy%3D%2218.5%22%20r%3D%221.6%22%20fill%3D%22%235a4d25%22%2F%3E%3Ccircle%20cx%3D%2248%22%20cy%3D%2218.5%22%20r%3D%221.6%22%20fill%3D%22%235a4d25%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-communities{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2224%22%20r%3D%229%22%20fill%3D%22%236c7dff%22%2F%3E%3Ccircle%20cx%3D%2243%22%20cy%3D%2227%22%20r%3D%227%22%20fill%3D%22%239b8cff%22%2F%3E%3Cpath%20d%3D%22M9%2049c1.4-10%207.2-15%2015-15%207.7%200%2013.6%205%2015%2015H9Z%22%20fill%3D%22%236c7dff%22%2F%3E%3Cpath%20d%3D%22M36%2049c1.1-6.6%204.4-10.2%209.4-10.2%205.2%200%208.7%203.6%209.6%2010.2H36Z%22%20fill%3D%22%239b8cff%22%2F%3E%3Cpath%20d%3D%22M35%2011h19v15H43l-6%205v-5h-2z%22%20fill%3D%22%23f6c95c%22%2F%3E%3Ccircle%20cx%3D%2242%22%20cy%3D%2218.5%22%20r%3D%221.6%22%20fill%3D%22%235a4d25%22%2F%3E%3Ccircle%20cx%3D%2248%22%20cy%3D%2218.5%22%20r%3D%221.6%22%20fill%3D%22%235a4d25%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="search"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2228%22%20cy%3D%2228%22%20r%3D%2217%22%20fill%3D%22none%22%20stroke%3D%22%234285f4%22%20stroke-width%3D%227%22%2F%3E%3Cpath%20d%3D%22M40.5%2040.5%2054%2054%22%20stroke%3D%22%2334a853%22%20stroke-width%3D%228%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M16%2016a17%2017%200%200%201%2024%200%22%20stroke%3D%22%23ea4335%22%20stroke-width%3D%227%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M12%2032a17%2017%200%200%201%204-16%22%20stroke%3D%22%23fbbc05%22%20stroke-width%3D%227%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-search{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2228%22%20cy%3D%2228%22%20r%3D%2217%22%20fill%3D%22none%22%20stroke%3D%22%234285f4%22%20stroke-width%3D%227%22%2F%3E%3Cpath%20d%3D%22M40.5%2040.5%2054%2054%22%20stroke%3D%22%2334a853%22%20stroke-width%3D%228%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M16%2016a17%2017%200%200%201%2024%200%22%20stroke%3D%22%23ea4335%22%20stroke-width%3D%227%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M12%2032a17%2017%200%200%201%204-16%22%20stroke%3D%22%23fbbc05%22%20stroke-width%3D%227%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="streams"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%228%22%20y%3D%2213%22%20width%3D%2248%22%20height%3D%2236%22%20rx%3D%2210%22%20fill%3D%22%237b61c8%22%2F%3E%3Cpath%20d%3D%22M27%2023l15%209-15%209z%22%20fill%3D%22%23fff%22%2F%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2217%22%20r%3D%227%22%20fill%3D%22%23ff4f5e%22%20stroke%3D%22%23fff%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M16%2055h32%22%20stroke%3D%22%23a996e4%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M6%2025c-3%204-3%2010%200%2014M58%2025c3%204%203%2010%200%2014%22%20fill%3D%22none%22%20stroke%3D%22%237b61c8%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-streams{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%228%22%20y%3D%2213%22%20width%3D%2248%22%20height%3D%2236%22%20rx%3D%2210%22%20fill%3D%22%237b61c8%22%2F%3E%3Cpath%20d%3D%22M27%2023l15%209-15%209z%22%20fill%3D%22%23fff%22%2F%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2217%22%20r%3D%227%22%20fill%3D%22%23ff4f5e%22%20stroke%3D%22%23fff%22%20stroke-width%3D%222%22%2F%3E%3Cpath%20d%3D%22M16%2055h32%22%20stroke%3D%22%23a996e4%22%20stroke-width%3D%225%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M6%2025c-3%204-3%2010%200%2014M58%2025c3%204%203%2010%200%2014%22%20fill%3D%22none%22%20stroke%3D%22%237b61c8%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="paid"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cpath%20d%3D%22M10%2034%2042%2019v30L10%2034Z%22%20fill%3D%22%23ff8a00%22%2F%3E%3Crect%20x%3D%228%22%20y%3D%2230%22%20width%3D%2211%22%20height%3D%229%22%20rx%3D%223%22%20fill%3D%22%23ffd89a%22%2F%3E%3Cpath%20d%3D%22m22%2038%206%2015h9l-7-18%22%20fill%3D%22%23a95400%22%2F%3E%3Cpath%20d%3D%22M47%2020c5%204%207%208%207%2012s-2%208-7%2012M51%2014c8%206%2011%2012%2011%2018s-3%2012-11%2018%22%20fill%3D%22none%22%20stroke%3D%22%23ffb347%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-paid{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Cpath%20d%3D%22M10%2034%2042%2019v30L10%2034Z%22%20fill%3D%22%23ff8a00%22%2F%3E%3Crect%20x%3D%228%22%20y%3D%2230%22%20width%3D%2211%22%20height%3D%229%22%20rx%3D%223%22%20fill%3D%22%23ffd89a%22%2F%3E%3Cpath%20d%3D%22m22%2038%206%2015h9l-7-18%22%20fill%3D%22%23a95400%22%2F%3E%3Cpath%20d%3D%22M47%2020c5%204%207%208%207%2012s-2%208-7%2012M51%2014c8%206%2011%2012%2011%2018s-3%2012-11%2018%22%20fill%3D%22none%22%20stroke%3D%22%23ffb347%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="short-video"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%2216%22%20y%3D%225%22%20width%3D%2232%22%20height%3D%2254%22%20rx%3D%2210%22%20fill%3D%22%2314171d%22%2F%3E%3Crect%20x%3D%2220%22%20y%3D%2210%22%20width%3D%2224%22%20height%3D%2242%22%20rx%3D%226%22%20fill%3D%22%23232833%22%2F%3E%3Cpath%20d%3D%22M28%2021v22l16-11z%22%20fill%3D%22%23ff3b6b%22%2F%3E%3Cpath%20d%3D%22M33%2018v28%22%20stroke%3D%22%2325f4ee%22%20stroke-width%3D%223.5%22%20opacity%3D%22.95%22%2F%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2255%22%20r%3D%222%22%20fill%3D%22%238c96a3%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-short-video{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%2216%22%20y%3D%225%22%20width%3D%2232%22%20height%3D%2254%22%20rx%3D%2210%22%20fill%3D%22%2314171d%22%2F%3E%3Crect%20x%3D%2220%22%20y%3D%2210%22%20width%3D%2224%22%20height%3D%2242%22%20rx%3D%226%22%20fill%3D%22%23232833%22%2F%3E%3Cpath%20d%3D%22M28%2021v22l16-11z%22%20fill%3D%22%23ff3b6b%22%2F%3E%3Cpath%20d%3D%22M33%2018v28%22%20stroke%3D%22%2325f4ee%22%20stroke-width%3D%223.5%22%20opacity%3D%22.95%22%2F%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2255%22%20r%3D%222%22%20fill%3D%22%238c96a3%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="alt-video"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%226%22%20y%3D%2210%22%20width%3D%2252%22%20height%3D%2236%22%20rx%3D%229%22%20fill%3D%22%2326a69a%22%2F%3E%3Cpath%20d%3D%22M27%2020l16%208-16%209z%22%20fill%3D%22%23fff%22%2F%3E%3Crect%20x%3D%2216%22%20y%3D%2250%22%20width%3D%2232%22%20height%3D%225%22%20rx%3D%222.5%22%20fill%3D%22%237dd7cf%22%2F%3E%3Crect%20x%3D%2243%22%20y%3D%2215%22%20width%3D%229%22%20height%3D%227%22%20rx%3D%222%22%20fill%3D%22%23bdf0eb%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-alt-video{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%226%22%20y%3D%2210%22%20width%3D%2252%22%20height%3D%2236%22%20rx%3D%229%22%20fill%3D%22%2326a69a%22%2F%3E%3Cpath%20d%3D%22M27%2020l16%208-16%209z%22%20fill%3D%22%23fff%22%2F%3E%3Crect%20x%3D%2216%22%20y%3D%2250%22%20width%3D%2232%22%20height%3D%225%22%20rx%3D%222.5%22%20fill%3D%22%237dd7cf%22%2F%3E%3Crect%20x%3D%2243%22%20y%3D%2215%22%20width%3D%229%22%20height%3D%227%22%20rx%3D%222%22%20fill%3D%22%23bdf0eb%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="dzen"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%226%22%20y%3D%226%22%20width%3D%2252%22%20height%3D%2252%22%20rx%3D%2217%22%20fill%3D%22%23111%22%2F%3E%3Cpath%20d%3D%22M32%2014c-2%2010-8%2016-18%2018%2010%202%2016%208%2018%2018%202-10%208-16%2018-18-10-2-16-8-18-18Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-dzen{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%226%22%20y%3D%226%22%20width%3D%2252%22%20height%3D%2252%22%20rx%3D%2217%22%20fill%3D%22%23111%22%2F%3E%3Cpath%20d%3D%22M32%2014c-2%2010-8%2016-18%2018%2010%202%2016%208%2018%2018%202-10%208-16%2018-18-10-2-16-8-18-18Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="reddit"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2234%22%20r%3D%2223%22%20fill%3D%22%23ff4500%22%2F%3E%3Cellipse%20cx%3D%2232%22%20cy%3D%2235%22%20rx%3D%2217%22%20ry%3D%2213%22%20fill%3D%22%23fff%22%2F%3E%3Ccircle%20cx%3D%2225%22%20cy%3D%2234%22%20r%3D%223.1%22%20fill%3D%22%23ff4500%22%2F%3E%3Ccircle%20cx%3D%2239%22%20cy%3D%2234%22%20r%3D%223.1%22%20fill%3D%22%23ff4500%22%2F%3E%3Cpath%20d%3D%22M23%2041c5%204%2013%204%2018%200%22%20fill%3D%22none%22%20stroke%3D%22%23ff4500%22%20stroke-width%3D%222.8%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M34%2015l3-8%209%202%22%20fill%3D%22none%22%20stroke%3D%22%23ff4500%22%20stroke-width%3D%223%22%2F%3E%3Ccircle%20cx%3D%2248%22%20cy%3D%2210%22%20r%3D%224%22%20fill%3D%22%23ff4500%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-reddit{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Ccircle%20cx%3D%2232%22%20cy%3D%2234%22%20r%3D%2223%22%20fill%3D%22%23ff4500%22%2F%3E%3Cellipse%20cx%3D%2232%22%20cy%3D%2235%22%20rx%3D%2217%22%20ry%3D%2213%22%20fill%3D%22%23fff%22%2F%3E%3Ccircle%20cx%3D%2225%22%20cy%3D%2234%22%20r%3D%223.1%22%20fill%3D%22%23ff4500%22%2F%3E%3Ccircle%20cx%3D%2239%22%20cy%3D%2234%22%20r%3D%223.1%22%20fill%3D%22%23ff4500%22%2F%3E%3Cpath%20d%3D%22M23%2041c5%204%2013%204%2018%200%22%20fill%3D%22none%22%20stroke%3D%22%23ff4500%22%20stroke-width%3D%222.8%22%20stroke-linecap%3D%22round%22%2F%3E%3Cpath%20d%3D%22M34%2015l3-8%209%202%22%20fill%3D%22none%22%20stroke%3D%22%23ff4500%22%20stroke-width%3D%223%22%2F%3E%3Ccircle%20cx%3D%2248%22%20cy%3D%2210%22%20r%3D%224%22%20fill%3D%22%23ff4500%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="x-twitter"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%226%22%20y%3D%226%22%20width%3D%2252%22%20height%3D%2252%22%20rx%3D%2215%22%20fill%3D%22%23111%22%2F%3E%3Cpath%20d%3D%22M18%2017h9l19%2030h-9L18%2017Zm3%2030%2015-17m4-4%206-9%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-x-twitter{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%226%22%20y%3D%226%22%20width%3D%2252%22%20height%3D%2252%22%20rx%3D%2215%22%20fill%3D%22%23111%22%2F%3E%3Cpath%20d%3D%22M18%2017h9l19%2030h-9L18%2017Zm3%2030%2015-17m4-4%206-9%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .playbook-card[data-source="mailing"] .playbook-hero-art{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%227%22%20y%3D%2214%22%20width%3D%2250%22%20height%3D%2236%22%20rx%3D%229%22%20fill%3D%22%238d5cc6%22%2F%3E%3Cpath%20d%3D%22M12%2021l20%2016%2020-16%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M38%2039l12%207-3-14-9%207Z%22%20fill%3D%22%23ffd25e%22%2F%3E%3C%2Fsvg%3E")!important;}
html body .source-playbook-page .source-hero-mailing{--tl-v222-source-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%3Crect%20x%3D%227%22%20y%3D%2214%22%20width%3D%2250%22%20height%3D%2236%22%20rx%3D%229%22%20fill%3D%22%238d5cc6%22%2F%3E%3Cpath%20d%3D%22M12%2021l20%2016%2020-16%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M38%2039l12%207-3-14-9%207Z%22%20fill%3D%22%23ffd25e%22%2F%3E%3C%2Fsvg%3E")!important;}

/* Catalog cards: make the platform/source marks genuinely visible. */
html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art{
  width:84px!important;
  height:84px!important;
  min-width:84px!important;
  padding:11px!important;
  border-radius:16px!important;
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:54px 54px!important;
  background-origin:border-box!important;
  background-clip:padding-box!important;
}

/* Article headers: same artwork, larger than the old tiny 30px marks. */
html body .source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  width:66px!important;
  height:66px!important;
  min-width:66px!important;
  flex-basis:66px!important;
  border-radius:15px!important;
  background-image:var(--tl-v222-source-icon)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:46px 46px!important;
  text-indent:-9999px!important;
  font-size:0!important;
}
html body .source-playbook-page .source-title-row{
  grid-template-columns:66px minmax(0,1fr)!important;
  gap:15px!important;
}

/* The small fact icons under source titles also scale up so they don't look
   out of place next to the larger platform marks. */
html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div::before{
  width:38px!important;
  height:38px!important;
  margin-bottom:5px!important;
  background-size:21px 21px!important;
}

/* Dark theme keeps the same icon geometry, only the holder surface changes. */
html body.theme-dark .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99.theme-dark .playbook-card-top .playbook-hero-art,
html body.theme-dark .source-playbook-page .source-hero-icon,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon{
  background-color:#171d24!important;
  border-color:#38434d!important;
}

@media (max-width:900px){
  html body .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art{
    width:68px!important;
    height:68px!important;
    min-width:68px!important;
    padding:9px!important;
    background-size:44px 44px!important;
  }
  html body .source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
    flex-basis:56px!important;
    background-size:39px 39px!important;
  }
  html body .source-playbook-page .source-title-row{
    grid-template-columns:56px minmax(0,1fr)!important;
    gap:12px!important;
  }
  html body .source-playbook-page :is(.source-hero-shell>.playbook-facts,.source-playbook-article>.playbook-facts)>div::before{
    width:34px!important;
    height:34px!important;
    background-size:19px 19px!important;
  }
}

@media (max-width:430px){
  html body .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art{
    width:62px!important;
    height:62px!important;
    min-width:62px!important;
    background-size:40px 40px!important;
  }
  html body .source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    flex-basis:52px!important;
    background-size:36px 36px!important;
  }
  html body .source-playbook-page .source-title-row{
    grid-template-columns:52px minmax(0,1fr)!important;
  }
}

/* ======================================================================
   v223 — dark theme source icons fix
   v220 intentionally flattened patchy backgrounds, but it also nulled the
   icon artwork in source pages. Restore all source icons in dark theme.
   ====================================================================== */

html body.theme-dark .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99.theme-dark .playbook-card-top .playbook-hero-art{
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:54px 54px!important;
}

html body.theme-dark main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon{
  background-image:var(--tl-v222-source-icon)!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:46px 46px!important;
}

@media (max-width:900px){
  html body.theme-dark .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99.theme-dark .playbook-card-top .playbook-hero-art{
    background-size:44px 44px!important;
  }

  html body.theme-dark main.source-playbook-page .source-hero-icon,
  html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon{
    background-size:39px 39px!important;
  }
}

/* ======================================================================
   v224 — final right-rail layout fix
   Put every article rail back on the far right, keep it out of the footer,
   and remove the spare right-side stripe caused by conflicting older rules.
   ====================================================================== */

@media (min-width:1051px){
  :root{
    --tl-v224-wrap:1296px;
    --tl-v224-article:968px;
    --tl-v224-rail:296px;
    --tl-v224-gap:32px;
    --tl-v224-gutter:18px;
  }

  html body.article-page :is(main#main-content, main.source-playbook-page),
  html body.reference-ui-v99.article-page :is(main#main-content, main.source-playbook-page),
  html body.theme-dark.article-page :is(main#main-content, main.source-playbook-page),
  html body.reference-ui-v99.theme-dark.article-page :is(main#main-content, main.source-playbook-page){
    overflow-x:clip!important;
  }

  html body.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout,
  html body.reference-ui-v99.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout,
  html body.theme-dark.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout,
  html body.reference-ui-v99.theme-dark.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout{
    display:grid!important;
    grid-template-columns:minmax(0,var(--tl-v224-article)) var(--tl-v224-rail)!important;
    grid-auto-flow:row!important;
    gap:var(--tl-v224-gap)!important;
    width:min(calc(100% - (var(--tl-v224-gutter) * 2)), var(--tl-v224-wrap))!important;
    max-width:var(--tl-v224-wrap)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:20px 0 128px!important;
    justify-content:space-between!important;
    align-items:start!important;
    box-sizing:border-box!important;
    overflow:visible!important;
    background:transparent!important;
  }

  html body.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.reference-ui-v99.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.theme-dark.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout > :is(.article,.source-playbook-article),
  html body.reference-ui-v99.theme-dark.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout > :is(.article,.source-playbook-article){
    grid-column:1!important;
    width:100%!important;
    max-width:var(--tl-v224-article)!important;
    min-width:0!important;
    margin:0!important;
    justify-self:stretch!important;
    align-self:start!important;
    order:1!important;
  }

  html body.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout > :is(.article-aside,aside),
  html body.reference-ui-v99.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout > :is(.article-aside,aside),
  html body.theme-dark.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout > :is(.article-aside,aside),
  html body.reference-ui-v99.theme-dark.article-page :is(main#main-content, main.source-playbook-page) > .wrap.article-layout > :is(.article-aside,aside){
    grid-column:2!important;
    width:var(--tl-v224-rail)!important;
    min-width:var(--tl-v224-rail)!important;
    max-width:var(--tl-v224-rail)!important;
    margin:0 0 0 auto!important;
    justify-self:end!important;
    align-self:start!important;
    order:2!important;
    left:auto!important;
    right:auto!important;
    inset-inline:auto!important;
    transform:none!important;
  }

  html body.article-page .article-aside.enhanced-rail,
  html body.reference-ui-v99.article-page .article-aside.enhanced-rail,
  html body.theme-dark.article-page .article-aside.enhanced-rail,
  html body.reference-ui-v99.theme-dark.article-page .article-aside.enhanced-rail{
    position:sticky!important;
    top:calc(var(--academy-header) + 16px)!important;
    max-height:calc(100vh - var(--academy-header) - 30px)!important;
    overflow:visible!important;
  }
}

/* ======================================================================
   v225 — header text alignment with content column
   Internal page headers must start on the same vertical line as the content
   blocks below them, including traffic hub / guides / journal-like pages.
   ====================================================================== */

html body.internal-page-v198.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head > .wrap,
html body.internal-page-v198.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head > .wrap.narrow,
html body.internal-page-v198.content-system-v103 main.section-landing > section.page-head > .wrap,
html body.internal-page-v198.content-system-v103 main.section-landing > section.page-head > .wrap.narrow,
html body.internal-page-v198.content-system-v103 main.traffic-hub-page > section.page-head > .wrap,
html body.internal-page-v198.content-system-v103 main.traffic-hub-page > section.page-head > .wrap.narrow,
html body.internal-page-v198.content-system-v103 main.services-page > section.page-head > .wrap,
html body.internal-page-v198.content-system-v103 main.services-page > section.page-head > .wrap.narrow,
html body.internal-page-v198.content-system-v103 main.about-main-v114 > section.page-head > .wrap,
html body.internal-page-v198.content-system-v103 main.about-main-v114 > section.page-head > .wrap.narrow{
  width:min(calc(100% - (var(--tl-v198-gutter) * 2)), var(--tl-v198-reading-width))!important;
  max-width:var(--tl-v198-reading-width)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}

@media (max-width:1100px){
  html body.internal-page-v198.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head > .wrap,
  html body.internal-page-v198.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head > .wrap.narrow,
  html body.internal-page-v198.content-system-v103 main.section-landing > section.page-head > .wrap,
  html body.internal-page-v198.content-system-v103 main.section-landing > section.page-head > .wrap.narrow,
  html body.internal-page-v198.content-system-v103 main.traffic-hub-page > section.page-head > .wrap,
  html body.internal-page-v198.content-system-v103 main.traffic-hub-page > section.page-head > .wrap.narrow,
  html body.internal-page-v198.content-system-v103 main.services-page > section.page-head > .wrap,
  html body.internal-page-v198.content-system-v103 main.services-page > section.page-head > .wrap.narrow,
  html body.internal-page-v198.content-system-v103 main.about-main-v114 > section.page-head > .wrap,
  html body.internal-page-v198.content-system-v103 main.about-main-v114 > section.page-head > .wrap.narrow{
    width:min(calc(100% - (var(--tl-v198-gutter-tablet) * 2)), var(--tl-v198-reading-width))!important;
  }
}

@media (max-width:650px){
  html body.internal-page-v198.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head > .wrap,
  html body.internal-page-v198.content-system-v103 main.compact-main-v103:not(.home-page):not(.source-playbook-page) > section.page-head > .wrap.narrow,
  html body.internal-page-v198.content-system-v103 main.section-landing > section.page-head > .wrap,
  html body.internal-page-v198.content-system-v103 main.section-landing > section.page-head > .wrap.narrow,
  html body.internal-page-v198.content-system-v103 main.traffic-hub-page > section.page-head > .wrap,
  html body.internal-page-v198.content-system-v103 main.traffic-hub-page > section.page-head > .wrap.narrow,
  html body.internal-page-v198.content-system-v103 main.services-page > section.page-head > .wrap,
  html body.internal-page-v198.content-system-v103 main.services-page > section.page-head > .wrap.narrow,
  html body.internal-page-v198.content-system-v103 main.about-main-v114 > section.page-head > .wrap,
  html body.internal-page-v198.content-system-v103 main.about-main-v114 > section.page-head > .wrap.narrow{
    width:calc(100% - (var(--tl-v198-gutter-mobile) * 2))!important;
    max-width:none!important;
  }
}

/* ======================================================================
   v226 — unify remaining tool-page accents with the dark theme system
   Removes the leftover beige/alternate treatment on pages like Tools.
   ====================================================================== */

html body.theme-dark .big-tool-head > span,
html body.reference-ui-v99.theme-dark .big-tool-head > span{
  background:#1a2330!important;
  border:1px solid #33404c!important;
  color:#e7edf2!important;
}

html body.theme-dark .mode-recommended-tool,
html body.reference-ui-v99.theme-dark .mode-recommended-tool{
  border-color:#33404c!important;
  box-shadow:none!important;
}

html body.theme-dark .mode-recommended-tool > .big-tool-head:before,
html body.reference-ui-v99.theme-dark .mode-recommended-tool > .big-tool-head:before,
html body.theme-dark .mode-pro .mode-recommended-tool > .big-tool-head:before,
html body.reference-ui-v99.theme-dark .mode-pro .mode-recommended-tool > .big-tool-head:before{
  background:#171d24!important;
  border:1px solid #33404c!important;
  color:#d5dde5!important;
}

html body.theme-dark .tool-memory > span,
html body.reference-ui-v99.theme-dark .tool-memory > span,
html body.theme-dark .tool-source-note,
html body.reference-ui-v99.theme-dark .tool-source-note{
  color:#c8d1d9!important;
}

/* ======================================================================
   v227 — diagnostics footer actions: remove light buttons in dark theme
   ====================================================================== */
html body.theme-dark .diagnostic-after a,
html body.reference-ui-v99.theme-dark .diagnostic-after a,
html body.theme-dark .problem-result-links a,
html body.reference-ui-v99.theme-dark .problem-result-links a{
  background:#171d24!important;
  background-image:none!important;
  border-color:#38434d!important;
  color:#d7dfe6!important;
  box-shadow:none!important;
}
html body.theme-dark .diagnostic-after a:hover,
html body.reference-ui-v99.theme-dark .diagnostic-after a:hover,
html body.theme-dark .problem-result-links a:hover,
html body.reference-ui-v99.theme-dark .problem-result-links a:hover{
  background:#1d252d!important;
  border-color:#4a5865!important;
  color:#f2f6f8!important;
}

/* ======================================================================
   v228 — source header icons final fix + more breathing room
   Force source-page header icons to render in both themes and give the title
   more space so it does not sit too close to the icon.
   ====================================================================== */

html body main.source-playbook-page .source-title-row,
html body.reference-ui-v99 main.source-playbook-page .source-title-row{
  grid-template-columns:72px minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
}

html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  flex-basis:72px!important;
  border-radius:16px!important;
  text-indent:-9999px!important;
  font-size:0!important;
  overflow:hidden!important;
  background-color:#ffffff!important;
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-size:50px 50px!important;
  border:1px solid #d9e3de!important;
}

html body.theme-dark main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon{
  background-color:#171d24!important;
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
  border-color:#38434d!important;
}

html body main.source-playbook-page .source-title-copy h1,
html body.reference-ui-v99 main.source-playbook-page .source-title-copy h1{
  margin-top:2px!important;
}

@media (max-width:900px){
  html body main.source-playbook-page .source-title-row,
  html body.reference-ui-v99 main.source-playbook-page .source-title-row{
    grid-template-columns:60px minmax(0,1fr)!important;
    gap:14px!important;
  }
  html body main.source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:60px!important;
    height:60px!important;
    min-width:60px!important;
    flex-basis:60px!important;
    background-size:42px 42px!important;
  }
}

@media (max-width:430px){
  html body main.source-playbook-page .source-title-row,
  html body.reference-ui-v99 main.source-playbook-page .source-title-row{
    grid-template-columns:54px minmax(0,1fr)!important;
    gap:12px!important;
  }
  html body main.source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    flex-basis:54px!important;
    background-size:38px 38px!important;
  }
}

/* ======================================================================
   v229 — remove remaining extra fills and tooltip warm backgrounds
   Final dark-theme cleanup for leftover filled cards on the home hero and
   hint/tooltips that still used a different background treatment.
   ====================================================================== */

/* Home hero helper cards: keep the frame, remove the extra fill. */
html body.theme-dark .home-welcome-summary,
html body.reference-ui-v99.theme-dark .home-welcome-summary,
html body.theme-dark .home-welcome-summary > div,
html body.reference-ui-v99.theme-dark .home-welcome-summary > div{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

html body.theme-dark .home-welcome-summary > div,
html body.reference-ui-v99.theme-dark .home-welcome-summary > div{
  border-color:#2f3944!important;
}

/* Hint words should not get an extra fill on hover/open in dark theme. */
html body.theme-dark .term-help,
html body.reference-ui-v99.theme-dark .term-help{
  background:transparent!important;
}

html body.theme-dark .term-help:hover,
html body.theme-dark .term-help:focus-visible,
html body.theme-dark .term-help[aria-expanded="true"],
html body.reference-ui-v99.theme-dark .term-help:hover,
html body.reference-ui-v99.theme-dark .term-help:focus-visible,
html body.reference-ui-v99.theme-dark .term-help[aria-expanded="true"]{
  background:transparent!important;
  box-shadow:none!important;
}

/* Tooltip popups: same dark surface language, no beige fill. */
html body.theme-dark .term-tooltip,
html body.reference-ui-v99.theme-dark .term-tooltip{
  background:#171c22!important;
  background-image:none!important;
  border-color:#2f3944!important;
  box-shadow:none!important;
  color:#d8e0e6!important;
}

html body.theme-dark .term-tooltip:before,
html body.reference-ui-v99.theme-dark .term-tooltip:before{
  background:#171c22!important;
  border-left-color:#2f3944!important;
  border-top-color:#2f3944!important;
}

html body.theme-dark .term-tooltip .term-en,
html body.reference-ui-v99.theme-dark .term-tooltip .term-en{
  color:#b8c3cc!important;
}

html body.theme-dark .term-tooltip strong,
html body.reference-ui-v99.theme-dark .term-tooltip strong{
  color:#eef2f5!important;
}

html body.theme-dark .term-tooltip p,
html body.theme-dark .term-tooltip .term-hint,
html body.reference-ui-v99.theme-dark .term-tooltip p,
html body.reference-ui-v99.theme-dark .term-tooltip .term-hint{
  color:#c9d2d8!important;
  border-color:#2f3944!important;
}

/* ======================================================================
   v230 — extra breathing room for partner step / similar wrap callouts
   Some light-theme wrap callouts still looked too tight against the frame.
   ====================================================================== */

html body .partner-next-step,
html body .traffic-partner-step,
html body.content-system-v103 .partner-next-step,
html body.content-system-v103 .traffic-partner-step,
html body.content-system-v103 main.compact-main-v103 > .wrap.partner-next-step,
html body.content-system-v103 main.compact-main-v103 > aside.wrap.partner-next-step,
html body.content-system-v103 main.compact-main-v103 > .wrap.traffic-partner-step,
html body.content-system-v103 main.compact-main-v103 > aside.wrap.traffic-partner-step{
  box-sizing:border-box!important;
  padding:22px 24px!important;
}

html body .partner-next-step > span,
html body .partner-next-step > p,
html body .partner-next-step > a,
html body .traffic-partner-step > span,
html body .traffic-partner-step > p,
html body .traffic-partner-step > a{
  margin-left:0!important;
  margin-right:0!important;
}

@media (max-width:650px){
  html body .partner-next-step,
  html body .traffic-partner-step,
  html body.content-system-v103 .partner-next-step,
  html body.content-system-v103 .traffic-partner-step,
  html body.content-system-v103 main.compact-main-v103 > .wrap.partner-next-step,
  html body.content-system-v103 main.compact-main-v103 > aside.wrap.partner-next-step,
  html body.content-system-v103 main.compact-main-v103 > .wrap.traffic-partner-step,
  html body.content-system-v103 main.compact-main-v103 > aside.wrap.traffic-partner-step{
    padding:18px 18px!important;
  }
}

/* ======================================================================
   v231 — remove remaining dark fill from journal reading area and clear buttons
   ====================================================================== */

html body.theme-dark .journal-reading,
html body.reference-ui-v99.theme-dark .journal-reading,
html body.theme-dark .journal-reading-head,
html body.reference-ui-v99.theme-dark .journal-reading-head,
html body.theme-dark .journal-reading-grid,
html body.reference-ui-v99.theme-dark .journal-reading-grid{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

html body.theme-dark .journal-reading-grid > .saved-block,
html body.reference-ui-v99.theme-dark .journal-reading-grid > .saved-block{
  background:transparent!important;
  background-image:none!important;
  border-color:#2f3944!important;
  box-shadow:none!important;
}

html body.theme-dark .text-button,
html body.reference-ui-v99.theme-dark .text-button{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border:0!important;
  color:#d7dfe6!important;
}
html body.theme-dark .text-button:hover,
html body.reference-ui-v99.theme-dark .text-button:hover{
  color:#f2f6f8!important;
}

/* ======================================================================
   v232 — dark palette test + header favorite/theme buttons + right rail feedback
   ====================================================================== */
html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --tl-dark-page:#0B1015;
  --tl-dark-article:#111820;
  --tl-dark-card:#171E26;
  --tl-dark-soft:#1C252E;
  --tl-dark-line:#303B46;
  --tl-dark-line-soft:#232E3A;
  --tl-dark-text:#EDF2F5;
  --tl-dark-copy:#B8C3CA;
  --tl-dark-muted:#85939D;
  --tl-dark-accent:#44B892;
  --tl-dark-accent-hover:#63C6A5;
  background:var(--tl-dark-page)!important;
  color:var(--tl-dark-text)!important;
}
html body.theme-dark :is(.site-header,.global-sidebar,.site-footer),
html body.reference-ui-v99.theme-dark :is(.site-header,.global-sidebar,.site-footer){
  background:#0B1015!important;
}
html body.theme-dark :is(.academy-article-hero,.article-page .article,.source-playbook-article,.article-aside.enhanced-rail .aside-block,.journal-reading-grid > .saved-block,.notes-panel,.service-card,.article-card,.about-card-v114,.home-quick-card,.guide-v101-callout,.inline-note,.partner-next-step,.warning-note,.service-notice),
html body.reference-ui-v99.theme-dark :is(.academy-article-hero,.article-page .article,.source-playbook-article,.article-aside.enhanced-rail .aside-block,.journal-reading-grid > .saved-block,.notes-panel,.service-card,.article-card,.about-card-v114,.home-quick-card,.guide-v101-callout,.inline-note,.partner-next-step,.warning-note,.service-notice){
  background:var(--tl-dark-article)!important;
  border-color:var(--tl-dark-line)!important;
  box-shadow:none!important;
}
html body.theme-dark :is(.playbook-facts>div,.playbook-checklist li,.playbook-steps>li,.source-journey-card,.source-tool-card,.traffic-diagnostic-list li,.source-toolkit-grid>a,.source-toolkit-helper,.faq-list details,.faq-item,.service-tool,.service-inline, .guide-v101-grid>div, .guide-v101-dual>div, .guide-v101-formats>div, .guide-v101-flow, .guide-v101-timeline>div),
html body.reference-ui-v99.theme-dark :is(.playbook-facts>div,.playbook-checklist li,.playbook-steps>li,.source-journey-card,.source-tool-card,.traffic-diagnostic-list li,.source-toolkit-grid>a,.source-toolkit-helper,.faq-list details,.faq-item,.service-tool,.service-inline, .guide-v101-grid>div, .guide-v101-dual>div, .guide-v101-formats>div, .guide-v101-flow, .guide-v101-timeline>div){
  background:var(--tl-dark-card)!important;
  border-color:var(--tl-dark-line)!important;
}
html body.theme-dark :is(p,li,dd,small,.lead,.article-page .article p,.source-playbook-article p,.article-page .article li,.source-playbook-article li),
html body.reference-ui-v99.theme-dark :is(p,li,dd,small,.lead,.article-page .article p,.source-playbook-article p,.article-page .article li,.source-playbook-article li){
  color:var(--tl-dark-copy)!important;
}
html body.theme-dark :is(.article-label,.section-kicker,.library-type,.aside-block>b,.playbook-aside b,.source-facts dt,.rail-feedback b,.article-meta span,.footer-bottom span),
html body.reference-ui-v99.theme-dark :is(.article-label,.section-kicker,.library-type,.aside-block>b,.playbook-aside b,.source-facts dt,.rail-feedback b,.article-meta span,.footer-bottom span){
  color:var(--tl-dark-muted)!important;
}
html body.theme-dark :is(h1,h2,h3,h4,strong,b,.article-page .article h1,.article-page .article h2,.source-playbook-article h1,.source-playbook-article h2),
html body.reference-ui-v99.theme-dark :is(h1,h2,h3,h4,strong,b,.article-page .article h1,.article-page .article h2,.source-playbook-article h1,.source-playbook-article h2){
  color:var(--tl-dark-text)!important;
}
html body.theme-dark :is(a,.plain-link,.saved-link,.text-cta,.service-name-link,.geo-guideline-link),
html body.reference-ui-v99.theme-dark :is(a,.plain-link,.saved-link,.text-cta,.service-name-link,.geo-guideline-link){
  color:var(--tl-dark-text)!important;
}
html body.theme-dark :is(a:hover,.plain-link:hover,.saved-link:hover,.text-cta:hover,.service-name-link:hover,.geo-guideline-link:hover),
html body.reference-ui-v99.theme-dark :is(a:hover,.plain-link:hover,.saved-link:hover,.text-cta:hover,.service-name-link:hover,.geo-guideline-link:hover){
  color:var(--tl-dark-accent-hover)!important;
}
html body.theme-dark :is(.site-header,.academy-article-hero,.article-page .article,.source-playbook-article,.article-aside.enhanced-rail .aside-block,.faq-item,.faq-list details,.playbook-facts>div,.playbook-checklist li,.playbook-steps>li,.service-tool,.service-inline,.source-toolkit-grid>a,.journal-reading-grid > .saved-block),
html body.reference-ui-v99.theme-dark :is(.site-header,.academy-article-hero,.article-page .article,.source-playbook-article,.article-aside.enhanced-rail .aside-block,.faq-item,.faq-list details,.playbook-facts>div,.playbook-checklist li,.playbook-steps>li,.service-tool,.service-inline,.source-toolkit-grid>a,.journal-reading-grid > .saved-block){
  border-color:var(--tl-dark-line)!important;
}

/* header buttons */
html body .site-header .header-actions{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
html body .site-header .header-favorite,
html body .site-header .theme-toggle{
  height:40px!important;
  min-height:40px!important;
  border-radius:12px!important;
  border:1px solid #303B46!important;
  background:#111820!important;
  color:#EDF2F5!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
html body .site-header .theme-toggle{
  min-width:40px!important;
  width:40px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
}
html body .site-header .theme-toggle [data-theme-label]{display:none!important}
html body .site-header .theme-toggle .theme-toggle-icon{font-size:16px!important;line-height:1!important}
html body .site-header .header-favorite{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:0 14px!important;
  font-size:12.5px!important;
  font-weight:700!important;
}
html body .site-header .header-favorite-icon{
  width:16px!important;
  text-align:center!important;
  color:#f1d37a!important;
  font-size:13px!important;
  line-height:1!important;
}
html body .site-header :is(.header-favorite:hover,.theme-toggle:hover){
  background:#1C252E!important;
  border-color:#44B892!important;
  color:#EDF2F5!important;
}
html body .site-header .header-about-link{
  color:#B8C3CA!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0 2px!important;
  min-height:auto!important;
}
html body .site-header .header-about-link:hover{color:#EDF2F5!important}
@media (max-width:980px){
  html body .site-header .header-favorite span:last-child{display:none!important}
  html body .site-header .header-favorite{width:40px!important;justify-content:center!important;padding:0!important}
}
@media (max-width:780px){
  html body .site-header .header-about-link{display:none!important}
}

/* right rail feedback */
html body .article-aside.enhanced-rail .rail-feedback{
  display:grid!important;
  gap:12px!important;
}
html body .article-aside.enhanced-rail .rail-feedback-actions{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
html body .article-aside.enhanced-rail .rail-feedback-button{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:12px!important;
  border:1px solid #303B46!important;
  background:#111820!important;
  color:#EDF2F5!important;
  box-shadow:none!important;
  cursor:pointer!important;
  transition:background .18s ease,border-color .18s ease,transform .18s ease!important;
}
html body .article-aside.enhanced-rail .rail-feedback-button:hover{
  background:#1C252E!important;
  border-color:#44B892!important;
  transform:translateY(-1px)!important;
}
html body .article-aside.enhanced-rail .rail-feedback-button[aria-pressed="true"]{
  background:rgba(68,184,146,.14)!important;
  border-color:#44B892!important;
  color:#63C6A5!important;
}
html body .article-aside.enhanced-rail .rail-feedback-button span{font-size:18px!important;line-height:1!important}


/* ======================================================================
   v233 — keep “Статья помогла?” at the bottom of the right rail
   ====================================================================== */
@media (min-width:1051px){
  html body .article-aside.enhanced-rail,
  html body.reference-ui-v99 .article-aside.enhanced-rail{
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
  }
  html body .article-aside.enhanced-rail .rail-feedback,
  html body.reference-ui-v99 .article-aside.enhanced-rail .rail-feedback{
    order:999!important;
    margin-top:4px!important;
    flex:0 0 auto!important;
  }
}

/* ======================================================================
   v234 — dark source blocks with filled backgrounds should always have frames
   ====================================================================== */

html body.theme-dark main.source-playbook-page :is(
  .guide-v101-grid > div,
  .guide-v101-formats > article,
  .guide-v101-link-options > div,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .guide-v101-callout:not(.warning),
  .playbook-method li,
  .playbook-fit-grid > div,
  .playbook-checklist li,
  .playbook-format-list > div,
  .playbook-steps > li,
  .playbook-week li,
  .playbook-columns > div,
  .playbook-decision article,
  .playbook-tips,
  .playbook-facts > div,
  .source-tool-card,
  .source-journey-card,
  .ref-source-funnel,
  .ref-format-card,
  .ref-track-card,
  .ref-metrics-card,
  .ref-metrics-row > div,
  .field-case,
  .tool-panel
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .guide-v101-grid > div,
  .guide-v101-formats > article,
  .guide-v101-link-options > div,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .guide-v101-callout:not(.warning),
  .playbook-method li,
  .playbook-fit-grid > div,
  .playbook-checklist li,
  .playbook-format-list > div,
  .playbook-steps > li,
  .playbook-week li,
  .playbook-columns > div,
  .playbook-decision article,
  .playbook-tips,
  .playbook-facts > div,
  .source-tool-card,
  .source-journey-card,
  .ref-source-funnel,
  .ref-format-card,
  .ref-track-card,
  .ref-metrics-card,
  .ref-metrics-row > div,
  .field-case,
  .tool-panel
){
  border:1px solid #2f3944!important;
}

/* ======================================================================
   v235 — traffic sources: use the same palette and surfaces as the rest of the site
   ====================================================================== */

html body.theme-dark main.source-playbook-page,
html body.reference-ui-v99.theme-dark main.source-playbook-page{
  background:var(--tl-dark-page,#0B1015)!important;
  color:var(--tl-dark-text,#EDF2F5)!important;
}

html body.theme-dark main.source-playbook-page .source-playbook-article,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-playbook-article,
html body.theme-dark main.source-playbook-page .source-hero-shell,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-shell,
html body.theme-dark main.source-playbook-page .article-aside .aside-block,
html body.reference-ui-v99.theme-dark main.source-playbook-page .article-aside .aside-block{
  background:var(--tl-dark-article,#111820)!important;
  border-color:var(--tl-dark-line,#303B46)!important;
  box-shadow:none!important;
}

html body.theme-dark main.source-playbook-page :is(
  .playbook-facts > div,
  .source-playbook-article > .playbook-facts > div,
  .guide-v101-grid > div,
  .guide-v101-formats > article,
  .guide-v101-link-options > div,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .guide-v101-callout:not(.warning),
  .playbook-method li,
  .playbook-fit-grid > div,
  .playbook-checklist li,
  .playbook-format-list > div,
  .playbook-steps > li,
  .playbook-week li,
  .playbook-columns > div,
  .playbook-decision article,
  .playbook-tips,
  .source-tool-card,
  .source-journey-card,
  .field-case,
  .tool-panel,
  .ref-source-funnel,
  .ref-format-card,
  .ref-track-card,
  .ref-metrics-card,
  .ref-metrics-row > div,
  .playbook-faq details,
  .rail-quick,
  .rail-quick a,
  .rail-tools a,
  .rail-related-visual > a,
  .playbook-head-actions a,
  .source-compare-actions a
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .playbook-facts > div,
  .source-playbook-article > .playbook-facts > div,
  .guide-v101-grid > div,
  .guide-v101-formats > article,
  .guide-v101-link-options > div,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .guide-v101-callout:not(.warning),
  .playbook-method li,
  .playbook-fit-grid > div,
  .playbook-checklist li,
  .playbook-format-list > div,
  .playbook-steps > li,
  .playbook-week li,
  .playbook-columns > div,
  .playbook-decision article,
  .playbook-tips,
  .source-tool-card,
  .source-journey-card,
  .field-case,
  .tool-panel,
  .ref-source-funnel,
  .ref-format-card,
  .ref-track-card,
  .ref-metrics-card,
  .ref-metrics-row > div,
  .playbook-faq details,
  .rail-quick,
  .rail-quick a,
  .rail-tools a,
  .rail-related-visual > a,
  .playbook-head-actions a,
  .source-compare-actions a
){
  background:var(--tl-dark-card,#171E26)!important;
  border-color:var(--tl-dark-line,#303B46)!important;
  box-shadow:none!important;
}

html body.theme-dark main.source-playbook-page :is(.article-figure,.guide-v101-media,.source-title-visual),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(.article-figure,.guide-v101-media,.source-title-visual){
  background:var(--tl-dark-soft,#1C252E)!important;
  border-color:var(--tl-dark-line,#303B46)!important;
}

html body.theme-dark main.source-playbook-page :is(.source-section-tabs a,.breadcrumbs a,.breadcrumbs span),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(.source-section-tabs a,.breadcrumbs a,.breadcrumbs span){
  color:var(--tl-dark-copy,#B8C3CA)!important;
}

html body.theme-dark main.source-playbook-page .source-section-tabs a:hover,
html body.theme-dark main.source-playbook-page .source-section-tabs a.is-current,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-section-tabs a:hover,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-section-tabs a.is-current{
  background:var(--tl-dark-soft,#1C252E)!important;
  border-color:var(--tl-dark-line,#303B46)!important;
  color:var(--tl-dark-text,#EDF2F5)!important;
}

html body.theme-dark main.source-playbook-page :is(p,li,dd,.lead),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(p,li,dd,.lead){
  color:var(--tl-dark-copy,#B8C3CA)!important;
}

html body.theme-dark main.source-playbook-page :is(h1,h2,h3,h4,strong,b,dt,.article-label),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(h1,h2,h3,h4,strong,b,dt,.article-label){
  color:var(--tl-dark-text,#EDF2F5)!important;
}

/* ======================================================================
   v236 — give standalone buttons more breathing room from section edges
   ====================================================================== */

html body .source-playbook-page :is(
  .guide-v101-inline-link,
  .playbook-head-actions,
  .source-compare-actions,
  .source-partner-cta,
  .guide-v101-next,
  .guide-v101-diagnostics,
  .section-bottom-links,
  .traffic-next,
  .source-next-links,
  .article-cta-row
),
html body.reference-ui-v99 .source-playbook-page :is(
  .guide-v101-inline-link,
  .playbook-head-actions,
  .source-compare-actions,
  .source-partner-cta,
  .guide-v101-next,
  .guide-v101-diagnostics,
  .section-bottom-links,
  .traffic-next,
  .source-next-links,
  .article-cta-row
){
  margin-top:16px!important;
  margin-bottom:10px!important;
  padding-left:2px!important;
  padding-right:2px!important;
  box-sizing:border-box!important;
}

html body .source-playbook-page :is(
  .guide-v101-inline-link a,
  .playbook-head-actions a,
  .source-compare-actions a,
  .source-partner-cta>a,
  .guide-v101-next a,
  .guide-v101-diagnostics a,
  .section-bottom-links a,
  .traffic-next a,
  .source-next-links a,
  .article-cta-row a
),
html body.reference-ui-v99 .source-playbook-page :is(
  .guide-v101-inline-link a,
  .playbook-head-actions a,
  .source-compare-actions a,
  .source-partner-cta>a,
  .guide-v101-next a,
  .guide-v101-diagnostics a,
  .section-bottom-links a,
  .traffic-next a,
  .source-next-links a,
  .article-cta-row a
){
  margin:0!important;
}

@media (max-width:900px){
  html body .source-playbook-page :is(
    .guide-v101-inline-link,
    .playbook-head-actions,
    .source-compare-actions,
    .source-partner-cta,
    .guide-v101-next,
    .guide-v101-diagnostics,
    .section-bottom-links,
    .traffic-next,
    .source-next-links,
    .article-cta-row
  ),
  html body.reference-ui-v99 .source-playbook-page :is(
    .guide-v101-inline-link,
    .playbook-head-actions,
    .source-compare-actions,
    .source-partner-cta,
    .guide-v101-next,
    .guide-v101-diagnostics,
    .section-bottom-links,
    .traffic-next,
    .source-next-links,
    .article-cta-row
  ){
    padding-left:4px!important;
    padding-right:4px!important;
    margin-top:14px!important;
  }
}

/* ======================================================================
   v237 — feedback block alignment + proper light-theme button styling
   ====================================================================== */

html body .article-aside.enhanced-rail .rail-feedback{
  align-items:stretch!important;
}
html body .article-aside.enhanced-rail .rail-feedback-actions{
  justify-content:center!important;
  width:100%!important;
}
html body .article-aside.enhanced-rail .rail-feedback-button{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  background:#f7faf8!important;
  border:1px solid #cad5cf!important;
  color:#314039!important;
}
html body .article-aside.enhanced-rail .rail-feedback-button:hover{
  background:#edf4f0!important;
  border-color:#9fb6aa!important;
  color:#243029!important;
}
html body .article-aside.enhanced-rail .rail-feedback-button[aria-pressed="true"]{
  background:rgba(68,184,146,.12)!important;
  border-color:#44B892!important;
  color:#1d7b5d!important;
}

html body.theme-dark .article-aside.enhanced-rail .rail-feedback-button,
html body.reference-ui-v99.theme-dark .article-aside.enhanced-rail .rail-feedback-button{
  background:#111820!important;
  border-color:#303B46!important;
  color:#EDF2F5!important;
}
html body.theme-dark .article-aside.enhanced-rail .rail-feedback-button:hover,
html body.reference-ui-v99.theme-dark .article-aside.enhanced-rail .rail-feedback-button:hover{
  background:#1C252E!important;
  border-color:#44B892!important;
  color:#EDF2F5!important;
}
html body.theme-dark .article-aside.enhanced-rail .rail-feedback-button[aria-pressed="true"],
html body.reference-ui-v99.theme-dark .article-aside.enhanced-rail .rail-feedback-button[aria-pressed="true"]{
  background:rgba(68,184,146,.14)!important;
  border-color:#44B892!important;
  color:#63C6A5!important;
}

/* ======================================================================
   v238 — traffic sources final dark-theme palette alignment
   Make source pages use the same neutral graphitic palette as the rest of the site.
   ====================================================================== */

html body.theme-dark main.source-playbook-page,
html body.reference-ui-v99.theme-dark main.source-playbook-page{
  background:var(--tl-dark-page,#0B1015)!important;
}

/* Source pages should use the same calm surfaces and not their own green/brown system. */
html body.theme-dark main.source-playbook-page .source-hero-shell,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-shell,
html body.theme-dark main.source-playbook-page .article-aside .aside-block,
html body.reference-ui-v99.theme-dark main.source-playbook-page .article-aside .aside-block{
  background:var(--tl-dark-article,#111820)!important;
  border:1px solid var(--tl-dark-line,#303B46)!important;
  box-shadow:none!important;
}

html body.theme-dark main.source-playbook-page :is(
  .playbook-head-actions a,
  .guide-v101-inline-link a,
  .source-compare-actions a,
  .guide-v101-diagnostics a,
  .playbook-official a,
  .rail-tools a,
  .rail-quick a,
  .rail-related-visual > a,
  .article-cta-row a,
  .source-next-links a,
  .section-bottom-links a,
  .traffic-next a
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .playbook-head-actions a,
  .guide-v101-inline-link a,
  .source-compare-actions a,
  .guide-v101-diagnostics a,
  .playbook-official a,
  .rail-tools a,
  .rail-quick a,
  .rail-related-visual > a,
  .article-cta-row a,
  .source-next-links a,
  .section-bottom-links a,
  .traffic-next a
){
  background:var(--tl-dark-card,#171E26)!important;
  border:1px solid var(--tl-dark-line,#303B46)!important;
  color:var(--tl-dark-text,#EDF2F5)!important;
  box-shadow:none!important;
}
html body.theme-dark main.source-playbook-page :is(
  .playbook-head-actions a:hover,
  .guide-v101-inline-link a:hover,
  .source-compare-actions a:hover,
  .guide-v101-diagnostics a:hover,
  .playbook-official a:hover,
  .rail-tools a:hover,
  .rail-quick a:hover,
  .rail-related-visual > a:hover,
  .article-cta-row a:hover,
  .source-next-links a:hover,
  .section-bottom-links a:hover,
  .traffic-next a:hover
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .playbook-head-actions a:hover,
  .guide-v101-inline-link a:hover,
  .source-compare-actions a:hover,
  .guide-v101-diagnostics a:hover,
  .playbook-official a:hover,
  .rail-tools a:hover,
  .rail-quick a:hover,
  .rail-related-visual > a:hover,
  .article-cta-row a:hover,
  .source-next-links a:hover,
  .section-bottom-links a:hover,
  .traffic-next a:hover
){
  background:var(--tl-dark-soft,#1C252E)!important;
  border-color:var(--tl-dark-line,#303B46)!important;
  color:var(--tl-dark-text,#EDF2F5)!important;
}

/* Neutralize leftover source-specific warm/green labels. */
html body.theme-dark main.source-playbook-page :is(
  .article-label,
  .playbook-method > div > span,
  .playbook-infrastructure > div > span,
  .playbook-decision article > span,
  .playbook-risk b,
  .playbook-format-list dt span,
  .guide-v101-grid span,
  .guide-v101-flow small,
  .guide-v101-diagnostics span,
  .guide-v101-scale span,
  .guide-v101-next span,
  .source-facts dt,
  .playbook-facts dt,
  .rail-feedback b,
  .source-journey-card small,
  .source-tool-card small,
  .guide-v101-code dt,
  .guide-v101-timeline time,
  .ref-source-funnel span,
  .ref-format-card span,
  .ref-track-card span,
  .ref-metrics-card span
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .article-label,
  .playbook-method > div > span,
  .playbook-infrastructure > div > span,
  .playbook-decision article > span,
  .playbook-risk b,
  .playbook-format-list dt span,
  .guide-v101-grid span,
  .guide-v101-flow small,
  .guide-v101-diagnostics span,
  .guide-v101-scale span,
  .guide-v101-next span,
  .source-facts dt,
  .playbook-facts dt,
  .rail-feedback b,
  .source-journey-card small,
  .source-tool-card small,
  .guide-v101-code dt,
  .guide-v101-timeline time,
  .ref-source-funnel span,
  .ref-format-card span,
  .ref-track-card span,
  .ref-metrics-card span
){
  color:var(--tl-dark-muted,#85939D)!important;
}

html body.theme-dark main.source-playbook-page :is(
  .playbook-facts dd,
  .guide-v101-grid b,
  .guide-v101-flow b,
  .guide-v101-diagnostics b,
  .guide-v101-scale b,
  .guide-v101-next b,
  .guide-v101-timeline h3,
  .guide-v101-link-options h3,
  .playbook-format-list dt,
  .playbook-decision h2,
  .playbook-decision h3,
  .source-tool-card b,
  .source-journey-card b,
  .ref-source-funnel b,
  .ref-format-card b,
  .ref-track-card b,
  .ref-metrics-card b
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .playbook-facts dd,
  .guide-v101-grid b,
  .guide-v101-flow b,
  .guide-v101-diagnostics b,
  .guide-v101-scale b,
  .guide-v101-next b,
  .guide-v101-timeline h3,
  .guide-v101-link-options h3,
  .playbook-format-list dt,
  .playbook-decision h2,
  .playbook-decision h3,
  .source-tool-card b,
  .source-journey-card b,
  .ref-source-funnel b,
  .ref-format-card b,
  .ref-track-card b,
  .ref-metrics-card b
){
  color:var(--tl-dark-text,#EDF2F5)!important;
}

html body.theme-dark main.source-playbook-page :is(
  .playbook-card-risk,
  .playbook-risk p,
  .playbook-official p,
  .playbook-format-list dd,
  .playbook-format-list small,
  .guide-v101-formats p,
  .guide-v101-timeline p,
  .guide-v101-link-options p,
  .guide-v101-link-options li,
  .guide-v101-diagnostics p,
  .guide-v101-next p,
  .guide-v101-next li,
  .ref-source-funnel p,
  .ref-format-card p,
  .ref-track-card p,
  .ref-metrics-card p
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .playbook-card-risk,
  .playbook-risk p,
  .playbook-official p,
  .playbook-format-list dd,
  .playbook-format-list small,
  .guide-v101-formats p,
  .guide-v101-timeline p,
  .guide-v101-link-options p,
  .guide-v101-link-options li,
  .guide-v101-diagnostics p,
  .guide-v101-next p,
  .guide-v101-next li,
  .ref-source-funnel p,
  .ref-format-card p,
  .ref-track-card p,
  .ref-metrics-card p
){
  color:var(--tl-dark-copy,#B8C3CA)!important;
}

/* Section tabs and chips match the rest of the site. */
html body.theme-dark main.source-playbook-page .source-section-tabs a,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-section-tabs a{
  background:transparent!important;
  border:1px solid transparent!important;
  color:var(--tl-dark-copy,#B8C3CA)!important;
}
html body.theme-dark main.source-playbook-page .source-section-tabs a:hover,
html body.theme-dark main.source-playbook-page .source-section-tabs a.is-current,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-section-tabs a:hover,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-section-tabs a.is-current{
  background:var(--tl-dark-card,#171E26)!important;
  border-color:var(--tl-dark-line,#303B46)!important;
  color:var(--tl-dark-text,#EDF2F5)!important;
}

/* Remove the different greenish numbering chips from steps/cards. */
html body.theme-dark main.source-playbook-page :is(
  .playbook-steps > li > span:first-child,
  .playbook-steps li > span,
  .guide-v101-steps li > span,
  .ref-source-funnel i,
  .ref-track-card i,
  .ref-metrics-card i
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .playbook-steps > li > span:first-child,
  .playbook-steps li > span,
  .guide-v101-steps li > span,
  .ref-source-funnel i,
  .ref-track-card i,
  .ref-metrics-card i
){
  background:var(--tl-dark-soft,#1C252E)!important;
  border:1px solid var(--tl-dark-line,#303B46)!important;
  color:var(--tl-dark-text,#EDF2F5)!important;
  box-shadow:none!important;
}

/* ======================================================================
   v239 — dedicated homepage background and hero treatment
   The front page gets its own first-impression background while staying
   within the site's palette.
   ====================================================================== */

html body main.home-page,
html body.reference-ui-v99 main.home-page{
  position:relative!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 14% -2%, rgba(68,184,146,.10) 0, transparent 24%),
    radial-gradient(circle at 88% 10%, rgba(190,157,111,.12) 0, transparent 21%),
    linear-gradient(180deg,#f6f3ed 0%,#f4f1ea 40%,#eff3f0 100%)!important;
}

html body main.home-page .home-welcome,
html body.reference-ui-v99 main.home-page .home-welcome,
html body main.home-page .home-entry-section,
html body.reference-ui-v99 main.home-page .home-entry-section,
html body main.home-page .home-sources-v51,
html body.reference-ui-v99 main.home-page .home-sources-v51,
html body main.home-page .continue-home,
html body.reference-ui-v99 main.home-page .continue-home,
html body main.home-page .home-results,
html body.reference-ui-v99 main.home-page .home-results{
  background:transparent!important;
}

html body main.home-page .home-welcome,
html body.reference-ui-v99 main.home-page .home-welcome{
  border-bottom:0!important;
}

html body main.home-page .home-welcome > .wrap,
html body.reference-ui-v99 main.home-page .home-welcome > .wrap{
  position:relative!important;
  padding:clamp(26px,3vw,40px)!important;
  border-radius:28px!important;
  border:1px solid #d8e1dc!important;
  background:
    radial-gradient(circle at 100% 0%, rgba(190,157,111,.10), transparent 30%),
    radial-gradient(circle at 0% 100%, rgba(68,184,146,.07), transparent 26%),
    linear-gradient(135deg, rgba(255,255,255,.86) 0%, rgba(250,251,249,.95) 62%, rgba(245,248,245,.92) 100%)!important;
  box-shadow:0 18px 48px rgba(31,43,37,.06)!important;
  backdrop-filter:saturate(115%) blur(6px)!important;
}

html body main.home-page .home-entry-section,
html body.reference-ui-v99 main.home-page .home-entry-section,
html body main.home-page .home-sources-v51,
html body.reference-ui-v99 main.home-page .home-sources-v51,
html body main.home-page .continue-home,
html body.reference-ui-v99 main.home-page .continue-home,
html body main.home-page .home-results,
html body.reference-ui-v99 main.home-page .home-results{
  border-bottom:0!important;
}

html body main.home-page .home-entry-section > .wrap,
html body.reference-ui-v99 main.home-page .home-entry-section > .wrap,
html body main.home-page .home-sources-v51 > .wrap,
html body.reference-ui-v99 main.home-page .home-sources-v51 > .wrap,
html body main.home-page .continue-home > .wrap,
html body.reference-ui-v99 main.home-page .continue-home > .wrap,
html body main.home-page .home-results > .wrap,
html body.reference-ui-v99 main.home-page .home-results > .wrap{
  position:relative!important;
}

/* Dark theme variant */
html body.theme-dark main.home-page,
html body.theme-dark.reference-ui-v99 main.home-page{
  background:
    radial-gradient(circle at 14% -2%, rgba(68,184,146,.16) 0, transparent 24%),
    radial-gradient(circle at 88% 10%, rgba(185,152,104,.11) 0, transparent 21%),
    radial-gradient(circle at 52% 36%, rgba(94,128,154,.07) 0, transparent 28%),
    linear-gradient(180deg,#0B1015 0%,#0D131A 42%,#0B1117 100%)!important;
}

html body.theme-dark main.home-page .home-welcome > .wrap,
html body.theme-dark.reference-ui-v99 main.home-page .home-welcome > .wrap{
  border-color:#303B46!important;
  background:
    radial-gradient(circle at 100% 0%, rgba(185,152,104,.10), transparent 30%),
    radial-gradient(circle at 0% 100%, rgba(68,184,146,.08), transparent 26%),
    linear-gradient(135deg, rgba(17,24,32,.92) 0%, rgba(17,24,32,.84) 58%, rgba(21,29,37,.90) 100%)!important;
  box-shadow:0 22px 56px rgba(0,0,0,.28)!important;
}

html body.theme-dark main.home-page .home-entry-section,
html body.theme-dark.reference-ui-v99 main.home-page .home-entry-section,
html body.theme-dark main.home-page .home-sources-v51,
html body.theme-dark.reference-ui-v99 main.home-page .home-sources-v51,
html body.theme-dark main.home-page .continue-home,
html body.theme-dark.reference-ui-v99 main.home-page .continue-home,
html body.theme-dark main.home-page .home-results,
html body.theme-dark.reference-ui-v99 main.home-page .home-results{
  background:transparent!important;
}

@media (max-width:900px){
  html body main.home-page .home-welcome > .wrap,
  html body.reference-ui-v99 main.home-page .home-welcome > .wrap{
    border-radius:22px!important;
    padding:22px!important;
  }
}

@media (max-width:640px){
  html body main.home-page .home-welcome > .wrap,
  html body.reference-ui-v99 main.home-page .home-welcome > .wrap{
    border-radius:18px!important;
    padding:18px!important;
  }
}

/* ======================================================================
   v240 — restore light-green accent chips/timeline labels on source pages
   Some source-page helper markers looked better with the original pale green accent.
   ====================================================================== */

html body.theme-dark main.source-playbook-page :is(
  .guide-v101-timeline time,
  .playbook-method > div > span,
  .playbook-infrastructure > div > span,
  .guide-v101-flow small,
  .guide-v101-diagnostics span,
  .guide-v101-scale span,
  .guide-v101-next span,
  .source-facts dt,
  .playbook-facts dt,
  .source-journey-card small,
  .source-tool-card small,
  .guide-v101-code dt,
  .ref-source-funnel span,
  .ref-format-card span,
  .ref-track-card span,
  .ref-metrics-card span
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .guide-v101-timeline time,
  .playbook-method > div > span,
  .playbook-infrastructure > div > span,
  .guide-v101-flow small,
  .guide-v101-diagnostics span,
  .guide-v101-scale span,
  .guide-v101-next span,
  .source-facts dt,
  .playbook-facts dt,
  .source-journey-card small,
  .source-tool-card small,
  .guide-v101-code dt,
  .ref-source-funnel span,
  .ref-format-card span,
  .ref-track-card span,
  .ref-metrics-card span
){
  color:#8FD1B8!important;
}

html body.theme-dark main.source-playbook-page :is(
  .playbook-steps > li > span:first-child,
  .playbook-steps li > span,
  .guide-v101-steps li > span,
  .ref-source-funnel i,
  .ref-track-card i,
  .ref-metrics-card i
),
html body.reference-ui-v99.theme-dark main.source-playbook-page :is(
  .playbook-steps > li > span:first-child,
  .playbook-steps li > span,
  .guide-v101-steps li > span,
  .ref-source-funnel i,
  .ref-track-card i,
  .ref-metrics-card i
){
  background:rgba(68,184,146,.18)!important;
  border:1px solid rgba(99,198,165,.42)!important;
  color:#D9F3E8!important;
  box-shadow:none!important;
}

/* ======================================================================
   v241 — center feedback block cleanly without pushing buttons too low
   ====================================================================== */

html body .article-aside.enhanced-rail .rail-feedback,
html body.reference-ui-v99 .article-aside.enhanced-rail .rail-feedback{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  padding-left:4px!important;
  padding-right:4px!important;
}

html body .article-aside.enhanced-rail .rail-feedback > b,
html body.reference-ui-v99 .article-aside.enhanced-rail .rail-feedback > b{
  width:100%!important;
  margin:0!important;
  text-align:center!important;
}

html body .article-aside.enhanced-rail .rail-feedback-actions,
html body.reference-ui-v99 .article-aside.enhanced-rail .rail-feedback-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  gap:10px!important;
  margin:0!important;
}


/* ======================================================================
   v242 — comparison note: keep text away from the frame
   ====================================================================== */
html body .source-compare-note,
html body.reference-ui-v99 .source-compare-note,
html body.content-system-v103 main.compact-main-v103 .wrap.source-compare-note,
html body.content-system-v103 main.compact-main-v103 > .wrap.source-compare-note{
  box-sizing:border-box!important;
  padding:20px 24px!important;
}
html body .source-compare-note > :first-child,
html body.reference-ui-v99 .source-compare-note > :first-child{
  margin-top:0!important;
}
html body .source-compare-note > :last-child,
html body.reference-ui-v99 .source-compare-note > :last-child{
  margin-bottom:0!important;
}
@media (max-width:650px){
  html body .source-compare-note,
  html body.reference-ui-v99 .source-compare-note,
  html body.content-system-v103 main.compact-main-v103 .wrap.source-compare-note,
  html body.content-system-v103 main.compact-main-v103 > .wrap.source-compare-note{
    padding:17px 18px!important;
  }
}

/* ======================================================================
   v243 — actually redesign the visible header controls used by Reference UI
   ====================================================================== */

@media (min-width:901px){
  html body.reference-ui-v99 .ref-topbar-actions{
    gap:8px!important;
  }

  html body.reference-ui-v99 .ref-top-search{
    height:40px!important;
    border-radius:11px!important;
  }

  html body.reference-ui-v99 .ref-theme-button{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:11px!important;
    transition:background .16s ease,border-color .16s ease,transform .16s ease!important;
  }

  html body.reference-ui-v99 .ref-theme-button .theme-toggle-icon{
    display:grid!important;
    place-items:center!important;
    width:22px!important;
    height:22px!important;
    font-size:16px!important;
    line-height:1!important;
    color:#64c7a6!important;
  }

  html body.reference-ui-v99 .ref-top-favorite{
    min-width:122px!important;
    height:40px!important;
    padding:0 14px!important;
    border-radius:11px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    font-size:11.5px!important;
    font-weight:750!important;
    letter-spacing:.005em!important;
    transition:background .16s ease,border-color .16s ease,transform .16s ease!important;
  }

  html body.reference-ui-v99 .ref-top-favorite svg{
    width:16px!important;
    height:16px!important;
    color:#d9b768!important;
    stroke-width:1.8!important;
  }

  html body.reference-ui-v99 :is(.ref-theme-button,.ref-top-favorite):hover{
    transform:translateY(-1px)!important;
  }

  html body.reference-ui-v99:not(.theme-dark) .ref-theme-button{
    background:linear-gradient(180deg,#ffffff 0%,#f5f8f6 100%)!important;
    border:1px solid #cad7d1!important;
    box-shadow:0 2px 8px rgba(35,65,54,.07)!important;
    color:#244c40!important;
  }
  html body.reference-ui-v99:not(.theme-dark) .ref-top-favorite{
    background:linear-gradient(180deg,#fffdf8 0%,#f8f4eb 100%)!important;
    border:1px solid #d7c8aa!important;
    box-shadow:0 2px 8px rgba(61,50,31,.06)!important;
    color:#3d473f!important;
  }
  html body.reference-ui-v99:not(.theme-dark) .ref-theme-button:hover{
    background:#edf6f2!important;
    border-color:#82bba5!important;
  }
  html body.reference-ui-v99:not(.theme-dark) .ref-top-favorite:hover{
    background:#fbf4e5!important;
    border-color:#c2a56f!important;
    color:#2f3933!important;
  }

  html body.reference-ui-v99.theme-dark .ref-theme-button{
    background:linear-gradient(180deg,#18212a 0%,#131b23 100%)!important;
    border:1px solid #354452!important;
    box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
    color:#edf2f5!important;
  }
  html body.reference-ui-v99.theme-dark .ref-top-favorite{
    background:linear-gradient(180deg,#1b2229 0%,#161c22 100%)!important;
    border:1px solid #4a4437!important;
    box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
    color:#edf2f5!important;
  }
  html body.reference-ui-v99.theme-dark .ref-theme-button:hover{
    background:#1d2932!important;
    border-color:#4f927c!important;
  }
  html body.reference-ui-v99.theme-dark .ref-top-favorite:hover{
    background:#24231f!important;
    border-color:#8d7448!important;
  }
}

@media (max-width:900px){
  html body.reference-ui-v99 .ref-theme-button{
    border-radius:11px!important;
  }
  html body.reference-ui-v99 .ref-theme-button .theme-toggle-icon{
    color:#64c7a6!important;
    font-size:17px!important;
  }
}

/* ======================================================================
   v244 — final mobile drawer contract
   ====================================================================== */
@media (max-width:900px){
  html body .site-header,
  html body.reference-ui-v99 .site-header{z-index:320!important}

  html body .global-sidebar,
  html body.reference-ui-v99 .global-sidebar{
    display:block!important;
    position:fixed!important;
    left:0!important;
    top:var(--v110-mobile-header,64px)!important;
    bottom:0!important;
    z-index:310!important;
    visibility:hidden!important;
    opacity:1!important;
    pointer-events:none!important;
    transform:translate3d(-105%,0,0)!important;
    transition:transform .2s ease,visibility 0s linear .2s!important;
  }

  html body.mobile-nav-open .global-sidebar,
  html body.reference-ui-v99.mobile-nav-open .global-sidebar{
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
    transition:transform .2s ease,visibility 0s!important;
  }

  html body .mobile-nav-overlay{
    display:block!important;
    position:fixed!important;
    inset:var(--v110-mobile-header,64px) 0 0 0!important;
    z-index:300!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  html body.mobile-nav-open .mobile-nav-overlay{
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  html body.reference-ui-v99 .ref-mobile-menu,
  html body .site-header .mobile-nav-toggle{
    position:relative!important;
    z-index:1!important;
    cursor:pointer!important;
    pointer-events:auto!important;
  }
}


/* ======================================================================
   v245 — thinner focus frame for inputs and search fields
   Do not let focus rings overlap adjacent buttons or cling too aggressively.
   ====================================================================== */

html body :is(input, textarea, select):focus,
html body :is(input, textarea, select):focus-visible,
html body.reference-ui-v99 :is(input, textarea, select):focus,
html body.reference-ui-v99 :is(input, textarea, select):focus-visible{
  outline:1px solid rgba(68,184,146,.58)!important;
  outline-offset:-1px!important;
  box-shadow:none!important;
}

/* Keep grouped search fields neat: the frame ends before the action button. */
html body :is(.home-main-search,.sidebar-search,.ref-search,.searchbox>div,.compare-side-field,.tool-form-row,.notes-composer-field):focus-within,
html body.reference-ui-v99 :is(.home-main-search,.sidebar-search,.ref-search,.searchbox>div,.compare-side-field,.tool-form-row,.notes-composer-field):focus-within{
  box-shadow:none!important;
}

html body .home-main-search input:focus,
html body .home-main-search input:focus-visible,
html body .sidebar-search input:focus,
html body .sidebar-search input:focus-visible,
html body .ref-search input:focus,
html body .ref-search input:focus-visible,
html body .searchbox input:focus,
html body .searchbox input:focus-visible,
html body.reference-ui-v99 .home-main-search input:focus,
html body.reference-ui-v99 .home-main-search input:focus-visible,
html body.reference-ui-v99 .sidebar-search input:focus,
html body.reference-ui-v99 .sidebar-search input:focus-visible,
html body.reference-ui-v99 .ref-search input:focus,
html body.reference-ui-v99 .ref-search input:focus-visible,
html body.reference-ui-v99 .searchbox input:focus,
html body.reference-ui-v99 .searchbox input:focus-visible{
  position:relative!important;
  z-index:1!important;
}


/* ======================================================================
   v246 — library meta areas refined, neutralized, and de-greened
   Make the right-side meta zone look intentional and harmonious.
   ====================================================================== */

html body .library-row{
  align-items:stretch!important;
}

html body .library-meta,
html body.reference-ui-v99 .library-meta{
  align-self:stretch!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:stretch!important;
  gap:6px!important;
  min-height:100%!important;
  padding:14px 16px!important;
  border-left:1px solid #ddd4c6!important;
  border-radius:12px!important;
  background:linear-gradient(180deg, rgba(250,247,241,.96) 0%, rgba(243,238,231,.92) 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78)!important;
  color:#6f6b63!important;
}

html body .library-meta span,
html body.reference-ui-v99 .library-meta span{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  min-height:20px!important;
  text-align:right!important;
  line-height:1.35!important;
}

html body .library-meta span + span,
html body.reference-ui-v99 .library-meta span + span{
  padding-top:6px!important;
  border-top:1px solid rgba(210,201,188,.7)!important;
}

html body .library-meta .level-badge,
html body .library-meta .reading-state-badge,
html body.reference-ui-v99 .library-meta .level-badge,
html body.reference-ui-v99 .library-meta .reading-state-badge{
  width:max-content!important;
  margin-left:auto!important;
  padding:4px 9px!important;
  border:1px solid #d8cfbf!important;
  border-radius:999px!important;
  background:#f6f1e8!important;
  color:#6b6257!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.03em!important;
  text-transform:none!important;
}

html body .library-meta .level-beginner,
html body .library-meta .level-advanced,
html body .library-meta .reading-state-badge,
html body.reference-ui-v99 .library-meta .level-beginner,
html body.reference-ui-v99 .library-meta .level-advanced,
html body.reference-ui-v99 .library-meta .reading-state-badge{
  color:#6b6257!important;
}

html body .library-meta .reading-state-badge.started:before,
html body.reference-ui-v99 .library-meta .reading-state-badge.started:before{
  color:#8f877b!important;
}

html body.theme-dark .library-meta,
html body.reference-ui-v99.theme-dark .library-meta{
  border-left:1px solid #313b46!important;
  background:linear-gradient(180deg, rgba(22,29,37,.98) 0%, rgba(18,24,31,.95) 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
  color:#bcc6cf!important;
}

html body.theme-dark .library-meta span,
html body.reference-ui-v99.theme-dark .library-meta span{
  color:#bcc6cf!important;
}

html body.theme-dark .library-meta span + span,
html body.reference-ui-v99.theme-dark .library-meta span + span{
  border-top:1px solid rgba(53,64,76,.9)!important;
}

html body.theme-dark .library-meta .level-badge,
html body.theme-dark .library-meta .reading-state-badge,
html body.reference-ui-v99.theme-dark .library-meta .level-badge,
html body.reference-ui-v99.theme-dark .library-meta .reading-state-badge{
  background:#202832!important;
  border:1px solid #3a4551!important;
  color:#dbe2e8!important;
}

html body.theme-dark .library-meta .level-beginner,
html body.theme-dark .library-meta .level-advanced,
html body.theme-dark .library-meta .reading-state-badge,
html body.reference-ui-v99.theme-dark .library-meta .level-beginner,
html body.reference-ui-v99.theme-dark .library-meta .level-advanced,
html body.reference-ui-v99.theme-dark .library-meta .reading-state-badge{
  color:#dbe2e8!important;
}

html body.theme-dark .library-meta .reading-state-badge.started:before,
html body.reference-ui-v99.theme-dark .library-meta .reading-state-badge.started:before{
  color:#94a0ab!important;
}

@media (max-width:920px){
  html body .library-meta,
  html body.reference-ui-v99 .library-meta{
    min-height:auto!important;
    width:100%!important;
    flex-direction:row!important;
    flex-wrap:wrap!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:8px!important;
    padding:10px 12px!important;
    border-left:0!important;
  }
  html body .library-meta span,
  html body.reference-ui-v99 .library-meta span{
    justify-content:flex-start!important;
    text-align:left!important;
    min-height:auto!important;
  }
  html body .library-meta span + span,
  html body.reference-ui-v99 .library-meta span + span{
    padding-top:0!important;
    border-top:0!important;
  }
  html body .library-meta .level-badge,
  html body .library-meta .reading-state-badge,
  html body.reference-ui-v99 .library-meta .level-badge,
  html body.reference-ui-v99 .library-meta .reading-state-badge{
    margin-left:0!important;
  }
}


/* ======================================================================
   v247 — remove remaining green from library heading / topic label in dark theme
   ====================================================================== */
html body.theme-dark .page-head h1,
html body.reference-ui-v99.theme-dark .page-head h1,
html body.theme-dark .catalog-bar #activeTopicLabel,
html body.reference-ui-v99.theme-dark .catalog-bar #activeTopicLabel{
  color:#dfe5ea!important;
}


/* ======================================================================
   v248 — subtle inline affiliate mentions; no branded promo blocks
   ====================================================================== */
html body .affiliate-inline-mention,
html body.reference-ui-v99 .affiliate-inline-mention{
  margin:16px 0 20px!important;
  padding:0!important;
  max-width:820px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:inherit!important;
  font-size:14px!important;
  line-height:1.65!important;
}
html body .affiliate-inline-mention a,
html body.reference-ui-v99 .affiliate-inline-mention a{
  color:inherit!important;
  font-weight:700!important;
  text-decoration:underline!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:3px!important;
}
html body.theme-dark .affiliate-inline-mention,
html body.reference-ui-v99.theme-dark .affiliate-inline-mention{
  color:#b8c1ca!important;
}
html body.theme-dark .affiliate-inline-mention a,
html body.reference-ui-v99.theme-dark .affiliate-inline-mention a{
  color:#dfe5ea!important;
}


/* ======================================================================
   v249 — restore source illustrations in dark theme reliably
   Some source icons could end up blank after theme overrides.
   Render the artwork through ::before so the icon always stays visible.
   ====================================================================== */

html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art,
html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
}

html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art{
  background-image:none!important;
}

html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  background-image:none!important;
}

html body .playbook-card-top .playbook-hero-art::before,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before,
html body main.source-playbook-page .source-hero-icon::before,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before{
  content:""!important;
  display:block!important;
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-size:contain!important;
  flex:none!important;
}

html body .playbook-card-top .playbook-hero-art::before,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before{
  width:54px!important;
  height:54px!important;
}

html body main.source-playbook-page .source-hero-icon::before,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before{
  width:50px!important;
  height:50px!important;
}

@media (max-width:900px){
  html body .playbook-card-top .playbook-hero-art::before,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before{
    width:44px!important;
    height:44px!important;
  }
  html body main.source-playbook-page .source-hero-icon::before,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before{
    width:42px!important;
    height:42px!important;
  }
}

@media (max-width:430px){
  html body .playbook-card-top .playbook-hero-art::before,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before{
    width:40px!important;
    height:40px!important;
  }
  html body main.source-playbook-page .source-hero-icon::before,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before{
    width:38px!important;
    height:38px!important;
  }
}


/* ======================================================================
   v250 — remove leftover dark gradients/fills and flatten the first home block
   ====================================================================== */

/* First block on the homepage: keep the frame, remove the gradient fill. */
html body.theme-dark main.home-page .home-welcome > .wrap,
html body.theme-dark.reference-ui-v99 main.home-page .home-welcome > .wrap{
  background:#121821!important;
  background-image:none!important;
}

html body.theme-dark main.home-page .home-welcome > .wrap::before,
html body.theme-dark main.home-page .home-welcome > .wrap::after,
html body.theme-dark.reference-ui-v99 main.home-page .home-welcome > .wrap::before,
html body.theme-dark.reference-ui-v99 main.home-page .home-welcome > .wrap::after{
  content:none!important;
  background:none!important;
}

/* Helper cards in the first screen: use a calm solid fill with no inner gradient. */
html body.theme-dark .home-search-card,
html body.reference-ui-v99.theme-dark .home-search-card,
html body.theme-dark .home-welcome-summary > div,
html body.reference-ui-v99.theme-dark .home-welcome-summary > div{
  background:#131a22!important;
  background-image:none!important;
}

/* Leftover filled backgrounds in dark theme: preserve the layout and border,
   but disable decorative gradient overlays so cards look uniform. */
html body.theme-dark :is(
  .playbook-card,
  .guide-v101-grid > div,
  .guide-v101-formats > article,
  .guide-v101-media,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .source-journey-card,
  .source-tool-card,
  .section-card,
  .field-case,
  .related-reading,
  .related-primary,
  .related-secondary,
  .diagnostic-card,
  .tool-panel,
  .calc-card,
  .notes-card,
  .article-figure,
  .playbook-faq details,
  .comparison-note,
  .playbook-risk,
  .home-entry-grid > a,
  .home-source-grid > a
),
html body.reference-ui-v99.theme-dark :is(
  .playbook-card,
  .guide-v101-grid > div,
  .guide-v101-formats > article,
  .guide-v101-media,
  .guide-v101-flow,
  .guide-v101-verdict,
  .guide-v101-code,
  .source-journey-card,
  .source-tool-card,
  .section-card,
  .field-case,
  .related-reading,
  .related-primary,
  .related-secondary,
  .diagnostic-card,
  .tool-panel,
  .calc-card,
  .notes-card,
  .article-figure,
  .playbook-faq details,
  .comparison-note,
  .playbook-risk,
  .home-entry-grid > a,
  .home-source-grid > a
){
  background-image:none!important;
}


/* ======================================================================
   v251 — homepage lab-style background + cleanup of leftover dark fills
   ====================================================================== */

/* Give the homepage its own textured background with a subtle lab feel. */
html body.theme-dark main.home-page,
html body.theme-dark.reference-ui-v99 main.home-page{
  position:relative!important;
  isolation:isolate!important;
  background:
    radial-gradient(circle at 16% 9%, rgba(84,172,144,.10) 0, transparent 22%),
    radial-gradient(circle at 84% 15%, rgba(189,157,108,.08) 0, transparent 18%),
    linear-gradient(180deg, #0b1015 0%, #0c1218 46%, #0b1116 100%)!important;
}

html body.theme-dark main.home-page::before,
html body.theme-dark.reference-ui-v99 main.home-page::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  z-index:0!important;
  opacity:.34!important;
  background:
    linear-gradient(transparent calc(100% - 1px), rgba(104,125,140,.11) 0),
    linear-gradient(90deg, transparent calc(100% - 1px), rgba(104,125,140,.08) 0);
  background-size: 100% 72px, 72px 100%!important;
  mask-image: linear-gradient(180deg, rgba(0,0,0,.86) 0%, rgba(0,0,0,.55) 48%, rgba(0,0,0,.12) 100%)!important;
}

html body.theme-dark main.home-page::after,
html body.theme-dark.reference-ui-v99 main.home-page::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  z-index:0!important;
  opacity:.26!important;
  background:
    radial-gradient(circle 80px at 14% 22%, rgba(165,197,187,.22) 0 1px, transparent 2px),
    radial-gradient(circle 106px at 18% 26%, transparent 0 77px, rgba(144,166,175,.16) 78px 79px, transparent 80px),
    linear-gradient(90deg, transparent 23.8%, rgba(144,166,175,.14) 23.8% 24%, transparent 24.2%),
    linear-gradient(180deg, transparent 31.8%, rgba(144,166,175,.12) 31.8% 32%, transparent 32.2%),
    radial-gradient(circle 56px at 82% 18%, transparent 0 41px, rgba(172,147,109,.14) 42px 43px, transparent 44px),
    radial-gradient(circle at 82% 18%, rgba(196,170,129,.12) 0 1px, transparent 2px),
    linear-gradient(90deg, transparent 77.8%, rgba(172,147,109,.11) 77.8% 78%, transparent 78.2%),
    linear-gradient(180deg, transparent 16.8%, rgba(172,147,109,.10) 16.8% 17%, transparent 17.2%);
  background-repeat:no-repeat!important;
}

html body.theme-dark main.home-page > section,
html body.theme-dark.reference-ui-v99 main.home-page > section,
html body.theme-dark main.home-page > section > .wrap,
html body.theme-dark.reference-ui-v99 main.home-page > section > .wrap{
  position:relative!important;
  z-index:1!important;
}

/* First block stays calm and solid, without inner gradient. */
html body.theme-dark main.home-page .home-welcome > .wrap,
html body.theme-dark.reference-ui-v99 main.home-page .home-welcome > .wrap{
  background:#121821!important;
  background-image:none!important;
}

/* Hero summary cards and similar blocks: remove any leftover decorative fill. */
html body.theme-dark .home-welcome-summary > div,
html body.reference-ui-v99.theme-dark .home-welcome-summary > div,
html body.theme-dark .playbook-card,
html body.reference-ui-v99.theme-dark .playbook-card,
html body.theme-dark .source-tool-card,
html body.reference-ui-v99.theme-dark .source-tool-card,
html body.theme-dark .source-journey-card,
html body.reference-ui-v99.theme-dark .source-journey-card,
html body.theme-dark .guide-v101-grid > div,
html body.reference-ui-v99.theme-dark .guide-v101-grid > div{
  background:#131a22!important;
  background-image:none!important;
}

html body.theme-dark :is(.home-welcome-summary > div,.playbook-card,.source-tool-card,.source-journey-card,.guide-v101-grid > div)::before,
html body.theme-dark.reference-ui-v99 :is(.home-welcome-summary > div,.playbook-card,.source-tool-card,.source-journey-card,.guide-v101-grid > div)::before,
html body.theme-dark :is(.home-welcome-summary > div,.playbook-card,.source-tool-card,.source-journey-card,.guide-v101-grid > div)::after,
html body.theme-dark.reference-ui-v99 :is(.home-welcome-summary > div,.playbook-card,.source-tool-card,.source-journey-card,.guide-v101-grid > div)::after{
  background-image:none!important;
}

@media (max-width:900px){
  html body.theme-dark main.home-page::before,
  html body.theme-dark.reference-ui-v99 main.home-page::before{
    opacity:.24!important;
    background-size:100% 64px, 64px 100%!important;
  }
  html body.theme-dark main.home-page::after,
  html body.theme-dark.reference-ui-v99 main.home-page::after{
    opacity:.18!important;
  }
}

/* ======================================================================
   v253 — TrafficLab flask logo
   ====================================================================== */
html body .brand-logo,
html body .sidebar-brand-logo,
html body .ref-sidebar-brand img,
html body .ref-mobile-brand img{
  object-fit:contain!important;
  filter:none!important;
}

html body .site-header .brand-logo{
  width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
}

html body .global-sidebar .sidebar-brand-logo{
  width:44px!important;
  height:44px!important;
}

html body .ref-sidebar-brand img{
  width:42px!important;
  height:42px!important;
}

html body .ref-mobile-brand img{
  width:32px!important;
  height:32px!important;
}

@media (max-width:650px){
  html body .site-header .brand-logo{
    width:31px!important;
    height:31px!important;
    flex-basis:31px!important;
  }
}


/* ======================================================================
   v254 — restore compact Beginner / Advanced mode switch
   Matches the lab mockup: small switch + current mode + short explanation.
   Existing audience-mode logic remains unchanged.
   ====================================================================== */

html body .global-sidebar > .sidebar-mode-compact.sidebar-mode-switch-v254,
html body.reference-ui-v99 .global-sidebar > .sidebar-mode-compact.sidebar-mode-switch-v254{
  display:block!important;
  margin:8px 4px 10px!important;
  padding:11px 3px 10px!important;
  border:0!important;
  border-top:1px solid rgba(255,255,255,.11)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#dce7e3!important;
}

html body .sidebar-mode-switch-v254 .sidebar-mode-options-legacy-v254{
  display:none!important;
}

html body .sidebar-mode-switch-v254 .audience-mode-toggle-v254{
  width:100%!important;
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  padding:4px 3px!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#eef4f1!important;
  text-align:left!important;
  box-shadow:none!important;
  cursor:pointer!important;
}

html body .sidebar-mode-switch-v254 .audience-mode-toggle-v254:hover{
  background:rgba(255,255,255,.045)!important;
}

html body .sidebar-mode-switch-v254 .audience-mode-track-v254{
  position:relative!important;
  flex:0 0 30px!important;
  width:30px!important;
  height:17px!important;
  border:1px solid rgba(179,204,195,.35)!important;
  border-radius:999px!important;
  background:#10181d!important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.34)!important;
}

html body .sidebar-mode-switch-v254 .audience-mode-track-v254 i{
  position:absolute!important;
  left:3px!important;
  top:3px!important;
  width:9px!important;
  height:9px!important;
  border-radius:50%!important;
  background:#c8d6d1!important;
  box-shadow:0 1px 4px rgba(0,0,0,.34)!important;
  transition:transform .18s ease,background .18s ease!important;
}

html body .sidebar-mode-switch-v254 .audience-mode-toggle-v254[aria-pressed="true"] .audience-mode-track-v254{
  border-color:rgba(91,190,154,.52)!important;
  background:rgba(44,118,91,.28)!important;
}

html body .sidebar-mode-switch-v254 .audience-mode-toggle-v254[aria-pressed="true"] .audience-mode-track-v254 i{
  transform:translateX(14px)!important;
  background:#75d2b0!important;
}

html body .sidebar-mode-switch-v254 .audience-mode-copy-v254{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
}

html body .sidebar-mode-switch-v254 .audience-mode-copy-v254 b{
  color:#eef4f1!important;
  font:700 12.5px/1.25 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  letter-spacing:0!important;
}

html body .sidebar-mode-switch-v254 .audience-mode-copy-v254 small{
  color:#91a59e!important;
  font:500 9.5px/1.25 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
}

html body .sidebar-mode-switch-v254 .sidebar-hints-toggle-v254{
  min-height:27px!important;
  width:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  margin:5px 0 0 40px!important;
  padding:3px 0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#8da099!important;
  font-size:9.5px!important;
}

html body .sidebar-mode-switch-v254 .sidebar-hints-toggle-v254 span{
  color:#8da099!important;
}

html body .sidebar-mode-switch-v254 .sidebar-hints-toggle-v254 b{
  color:#b8c7c1!important;
  font-size:9px!important;
}

html body .sidebar-mode-switch-v254 .sidebar-hints-toggle-v254:hover span,
html body .sidebar-mode-switch-v254 .sidebar-hints-toggle-v254:hover b{
  color:#dfe9e5!important;
}

/* Keep it available in the mobile drawer as well. */
@media (max-width:900px){
  html body .global-sidebar > .sidebar-mode-compact.sidebar-mode-switch-v254,
  html body.reference-ui-v99 .global-sidebar > .sidebar-mode-compact.sidebar-mode-switch-v254{
    display:block!important;
    margin-top:10px!important;
    padding-top:12px!important;
  }
}
\n\n/* v255 — adaptive site progress */\nhtml body .ref-top-progress em{transition:width .28s ease!important;}\nhtml body .ref-top-progress i{position:relative!important;}\n
/* ======================================================================
   v256 — homepage rebuilt to match the approved laboratory mockup
   ====================================================================== */

/* Home-only shell: quieter sidebar, no promo card, compact mode at the bottom. */
@media (min-width:901px){
  html body.home-shell-v256{
    --sidebar-width:224px!important;
  }
  html body.home-shell-v256 .global-sidebar{
    width:224px!important;
    padding:18px 14px 16px!important;
    background:#0a0f14!important;
    border-right:1px solid #26313a!important;
    box-shadow:none!important;
  }
  html body.home-shell-v256 main,
  html body.home-shell-v256 .site-footer{
    margin-left:224px!important;
  }
  html body.home-shell-v256 .sidebar-brand{
    min-height:56px!important;
    margin:0 4px 16px!important;
    padding:0!important;
    border:0!important;
  }
  html body.home-shell-v256 .global-sidebar .sidebar-brand-logo{
    width:34px!important;
    height:34px!important;
    flex:0 0 34px!important;
  }
  html body.home-shell-v256 .global-sidebar .sidebar-brand b{
    font-size:16px!important;
    font-weight:720!important;
    color:#f1f5f3!important;
  }
  html body.home-shell-v256 .global-sidebar .sidebar-brand small{
    display:none!important;
  }
  html body.home-shell-v256 .sidebar-search,
  html body.home-shell-v256 .sidebar-group-title,
  html body.home-shell-v256 .sidebar-group-toggle,
  html body.home-shell-v256 .sidebar-partner-cta{
    display:none!important;
  }
  html body.home-shell-v256 .sidebar-group{
    margin:0!important;
    padding:0!important;
  }
  html body.home-shell-v256 .sidebar-menu{
    gap:3px!important;
  }
  html body.home-shell-v256 .sidebar-menu a{
    min-height:36px!important;
    padding:7px 10px!important;
    border-radius:7px!important;
    color:#b8c4ca!important;
    font-size:12.5px!important;
    font-weight:560!important;
  }
  html body.home-shell-v256 .sidebar-menu a:hover{
    background:#121a21!important;
    color:#eef4f1!important;
  }
  html body.home-shell-v256 .sidebar-menu a.active,
  html body.home-shell-v256 .sidebar-menu a[aria-current="page"]{
    background:#182128!important;
    color:#f1f5f3!important;
    box-shadow:inset 2px 0 0 #44b892!important;
  }
  html body.home-shell-v256 .sidebar-mode-switch-v254{
    margin-top:auto!important;
    margin-bottom:5px!important;
  }
  html body.home-shell-v256 .sidebar-bottom{
    display:none!important;
  }
}

/* The mockup has one continuous dark laboratory surface, not a giant hero card. */
html body.theme-dark.home-shell-v256 main.home-page,
html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page{
  min-height:100vh!important;
  background-color:#0d1319!important;
  background-image:
    linear-gradient(180deg,rgba(8,13,18,.18),rgba(8,13,18,.46)),
    url('/assets/home-lab-blueprint.svg')!important;
  background-position:top center!important;
  background-size:auto,1600px auto!important;
  background-repeat:repeat-y,no-repeat!important;
}
html body.theme-dark.home-shell-v256 main.home-page::before,
html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page::before,
html body.theme-dark.home-shell-v256 main.home-page::after,
html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page::after{
  content:none!important;
  display:none!important;
}

html body.home-shell-v256 main.home-page .home-welcome,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome{
  padding:72px 0 64px!important;
  background:transparent!important;
  border:0!important;
}
html body.home-shell-v256 main.home-page .home-welcome > .wrap,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome > .wrap,
html body.theme-dark.home-shell-v256 main.home-page .home-welcome > .wrap,
html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page .home-welcome > .wrap{
  width:min(calc(100% - 80px),1120px)!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
html body.home-shell-v256 main.home-page .home-welcome-grid,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-grid{
  display:block!important;
}
html body.home-shell-v256 main.home-page .home-welcome-copy,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy{
  width:min(100%,820px)!important;
  max-width:820px!important;
}
html body.home-shell-v256 main.home-page .home-kicker{
  display:none!important;
}
html body.home-shell-v256 main.home-page .home-welcome h1,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome h1,
html body.theme-dark.home-shell-v256 main.home-page .home-welcome h1{
  max-width:760px!important;
  margin:0!important;
  color:#f1f4f3!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(42px,3.35vw,58px)!important;
  line-height:1.075!important;
  letter-spacing:-.035em!important;
  font-weight:735!important;
  text-wrap:balance!important;
}
html body.home-shell-v256 main.home-page .home-lead,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-lead,
html body.theme-dark.home-shell-v256 main.home-page .home-lead{
  max-width:660px!important;
  margin:22px 0 0!important;
  color:#b3bec4!important;
  font-size:16.5px!important;
  line-height:1.62!important;
}

/* Three simple workflow cards exactly where the mockup puts them. */
html body.home-shell-v256 main.home-page .home-welcome-summary,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary{
  width:min(100%,820px)!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  margin:28px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body.home-shell-v256 main.home-page .home-welcome-summary > div,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary > div,
html body.theme-dark.home-shell-v256 main.home-page .home-welcome-summary > div{
  min-height:132px!important;
  padding:16px 15px!important;
  border:1px solid #2c3944!important;
  border-radius:9px!important;
  background:rgba(14,21,28,.66)!important;
  background-image:none!important;
  box-shadow:none!important;
}
html body.home-shell-v256 main.home-page .home-welcome-summary b{
  margin:0 0 7px!important;
  color:#eef3f1!important;
  font-size:12.5px!important;
  line-height:1.35!important;
  font-weight:720!important;
}
html body.home-shell-v256 main.home-page .home-welcome-summary span{
  color:#b0bcc2!important;
  font-size:12.2px!important;
  line-height:1.52!important;
}

/* Search already lives in the top bar in the approved layout. */
@media (min-width:901px){
  html body.home-shell-v256 main.home-page .home-search-card,
  html body.home-shell-v256 main.home-page .home-actions{
    display:none!important;
  }
}

/* Keep following sections on the same surface instead of switching backgrounds. */
html body.theme-dark.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results),
html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results){
  background:transparent!important;
  border-color:#202a32!important;
}

@media (max-width:1100px) and (min-width:901px){
  html body.home-shell-v256 main.home-page .home-welcome > .wrap,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome > .wrap{
    width:min(calc(100% - 48px),980px)!important;
  }
  html body.home-shell-v256 main.home-page .home-welcome h1{
    font-size:48px!important;
  }
}

@media (max-width:900px){
  html body.home-shell-v256 main.home-page .home-welcome{
    padding:34px 0 38px!important;
  }
  html body.home-shell-v256 main.home-page .home-welcome > .wrap,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome > .wrap{
    width:calc(100% - 30px)!important;
  }
  html body.home-shell-v256 main.home-page .home-welcome h1{
    max-width:680px!important;
    font-size:clamp(34px,8.6vw,46px)!important;
  }
  html body.home-shell-v256 main.home-page .home-welcome-summary{
    grid-template-columns:1fr!important;
    width:100%!important;
  }
  html body.home-shell-v256 main.home-page .home-welcome-summary > div{
    min-height:0!important;
  }
  html body.theme-dark.home-shell-v256 main.home-page{
    background-size:auto,1200px auto!important;
  }
}


/* ======================================================================
   v261 — финальная полировка главной страницы по референсу
   Общая структура, форма карточек, жирность текста, увеличенный отступ
   после вступительного блока и аккуратная адаптация для светлой темы.
   ====================================================================== */

html body.home-shell-v256 main.home-page .home-welcome,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome{
  padding:74px 0 44px!important;
}

html body.home-shell-v256 main.home-page .home-welcome > .wrap,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome > .wrap,
html body.theme-dark.home-shell-v256 main.home-page .home-welcome > .wrap,
html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page .home-welcome > .wrap,
html body.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results) > .wrap,
html body.reference-ui-v99.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results) > .wrap{
  width:min(calc(100% - 88px),1120px)!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0!important;
}

html body.home-shell-v256 main.home-page .home-welcome-copy,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy{
  width:min(100%,860px)!important;
  max-width:860px!important;
}

html body.home-shell-v256 main.home-page .home-welcome h1,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome h1,
html body.theme-dark.home-shell-v256 main.home-page .home-welcome h1{
  max-width:780px!important;
  margin:0!important;
  font-size:clamp(44px,4.15vw,66px)!important;
  line-height:1.01!important;
  letter-spacing:-.048em!important;
  font-weight:820!important;
  text-wrap:balance!important;
}

html body.home-shell-v256 main.home-page .home-lead,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-lead,
html body.theme-dark.home-shell-v256 main.home-page .home-lead{
  max-width:720px!important;
  margin:18px 0 0!important;
  font-size:18px!important;
  line-height:1.64!important;
}

html body.home-shell-v256 main.home-page .home-welcome-summary,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary{
  width:min(100%,860px)!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  margin:34px 0 0!important;
  padding:0!important;
}

html body.home-shell-v256 main.home-page .home-welcome-summary > div,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary > div,
html body.theme-dark.home-shell-v256 main.home-page .home-welcome-summary > div{
  min-height:168px!important;
  padding:22px 21px 20px!important;
  border-radius:16px!important;
  background-image:none!important;
  box-shadow:none!important;
}

html body.home-shell-v256 main.home-page .home-welcome-summary b,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary b{
  display:block!important;
  margin:0 0 8px!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:15px!important;
  line-height:1.32!important;
  font-weight:790!important;
}

html body.home-shell-v256 main.home-page .home-welcome-summary span,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary span{
  display:block!important;
  font-size:13.8px!important;
  line-height:1.64!important;
}

html body.home-shell-v256 main.home-page .home-entry-section,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-entry-section{
  padding:82px 0 54px!important;
  background:transparent!important;
}

html body.home-shell-v256 main.home-page .home-section-title,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-section-title{
  margin-bottom:28px!important;
}

html body.home-shell-v256 main.home-page .home-section-title > p,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-section-title > p{
  margin:0 0 12px!important;
  font-size:11px!important;
  font-weight:820!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

html body.home-shell-v256 main.home-page .home-section-title h2,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-section-title h2{
  margin:0!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:42px!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important;
  font-weight:810!important;
}

html body.home-shell-v256 main.home-page .home-entry-grid,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-entry-grid{
  gap:18px!important;
}

html body.home-shell-v256 main.home-page .home-entry-grid > a,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-entry-grid > a{
  min-height:214px!important;
  padding:26px 24px 22px!important;
  border-radius:18px!important;
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease, background-color .16s ease!important;
}

html body.home-shell-v256 main.home-page .home-entry-grid > a b,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-entry-grid > a b{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:16px!important;
  line-height:1.35!important;
  font-weight:780!important;
}

html body.home-shell-v256 main.home-page .home-entry-grid > a p,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-entry-grid > a p{
  margin:12px 0 0!important;
  font-size:14.5px!important;
  line-height:1.68!important;
}

html body.home-shell-v256 main.home-page .home-entry-grid > a span,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-entry-grid > a span{
  margin-top:auto!important;
  padding-top:24px!important;
  font-size:13px!important;
  font-weight:760!important;
}

html body.home-shell-v256 main.home-page .home-results,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-results{
  padding:70px 0 72px!important;
  background:transparent!important;
}

html body.home-shell-v256 main.home-page .home-results .home-results-inner,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-results .home-results-inner{
  border-radius:20px!important;
  padding:34px 34px!important;
  gap:28px!important;
}

html body.home-shell-v256 main.home-page .home-results .home-results-inner h2,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-results .home-results-inner h2{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:32px!important;
  line-height:1.08!important;
  letter-spacing:-.03em!important;
  font-weight:790!important;
}

html body.home-shell-v256 main.home-page .home-results .home-results-inner > div > span,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-results .home-results-inner > div > span{
  font-size:14px!important;
  line-height:1.64!important;
}

html body.home-shell-v256 main.home-page .home-results nav{gap:10px!important}
html body.home-shell-v256 main.home-page .home-results nav a{padding:12px 14px!important;border-radius:10px!important;font-size:13px!important;font-weight:760!important}

/* Light theme */
html body:not(.theme-dark).home-shell-v256 main.home-page{
  background:linear-gradient(180deg,#f7f6f1 0%,#f9faf8 58%,#f4f6f3 100%)!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome{
  background:radial-gradient(circle at 82% 12%,rgba(176,190,167,.16),transparent 23%),transparent!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome h1{color:#16392f!important}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-lead{color:#5a6561!important}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome-summary > div{
  border:1px solid #d9e1dd!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 10px 28px rgba(28,49,42,.05)!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome-summary b{color:#173d32!important}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome-summary span{color:#5b6762!important}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-section-title > p{color:#8b6848!important}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-section-title h2{color:#173d32!important}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-entry-grid > a{
  border:1px solid #d9e1dd!important;
  background:#ffffff!important;
  box-shadow:0 12px 28px rgba(28,49,42,.05)!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-entry-grid > a:hover{
  border-color:#c3d1ca!important;
  box-shadow:0 16px 34px rgba(28,49,42,.08)!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-entry-grid > a b{color:#173d32!important}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-entry-grid > a p{color:#5d6764!important}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-entry-grid > a span{color:#7a5c3f!important}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-results .home-results-inner{
  background:#23453a!important;
  border:1px solid #2f5a4b!important;
  box-shadow:0 16px 36px rgba(24,39,34,.10)!important;
}

/* Dark theme */
html body.theme-dark.home-shell-v256 main.home-page .home-lead{color:#afbbc1!important}
html body.theme-dark.home-shell-v256 main.home-page .home-welcome-summary > div{
  border:1px solid #2f3b46!important;
  background:#121920!important;
}
html body.theme-dark.home-shell-v256 main.home-page .home-entry-grid > a{
  border:1px solid #2f3a45!important;
  background:#10171d!important;
  box-shadow:none!important;
}
html body.theme-dark.home-shell-v256 main.home-page .home-entry-grid > a:hover{
  border-color:#43515f!important;
  background:#121a21!important;
  box-shadow:0 14px 28px rgba(0,0,0,.18)!important;
  transform:translateY(-2px)!important;
}
html body.theme-dark.home-shell-v256 main.home-page .home-entry-grid > a b{color:#f3f6f5!important}
html body.theme-dark.home-shell-v256 main.home-page .home-entry-grid > a p{color:#b2bec3!important}
html body.theme-dark.home-shell-v256 main.home-page .home-entry-grid > a span{color:#c59a6a!important}
html body.theme-dark.home-shell-v256 main.home-page .home-section-title > p{color:#a78158!important}
html body.theme-dark.home-shell-v256 main.home-page .home-section-title h2{color:#f0f4f3!important}
html body.theme-dark.home-shell-v256 main.home-page .home-results .home-results-inner{
  background:#17362f!important;
  border:1px solid #2d594b!important;
}

@media (max-width:1100px){
  html body.home-shell-v256 main.home-page .home-welcome > .wrap,
  html body.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results) > .wrap{
    width:min(calc(100% - 52px),1000px)!important;
  }
  html body.home-shell-v256 main.home-page .home-entry-grid > a{min-height:0!important}
}

@media (max-width:900px){
  html body.home-shell-v256 main.home-page .home-welcome{padding:38px 0 30px!important}
  html body.home-shell-v256 main.home-page .home-welcome > .wrap,
  html body.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results) > .wrap{
    width:calc(100% - 32px)!important;
  }
  html body.home-shell-v256 main.home-page .home-welcome h1{
    max-width:12ch!important;
    font-size:clamp(36px,9.3vw,47px)!important;
  }
  html body.home-shell-v256 main.home-page .home-lead{font-size:15.5px!important;line-height:1.62!important}
  html body.home-shell-v256 main.home-page .home-welcome-summary{grid-template-columns:1fr!important;gap:12px!important;margin-top:24px!important;width:100%!important}
  html body.home-shell-v256 main.home-page .home-welcome-summary > div{min-height:0!important;padding:18px 17px!important;border-radius:14px!important}
  html body.home-shell-v256 main.home-page .home-welcome-summary b{font-size:14.5px!important}
  html body.home-shell-v256 main.home-page .home-welcome-summary span{font-size:13.4px!important}
  html body.home-shell-v256 main.home-page .home-entry-section{padding:56px 0 40px!important}
  html body.home-shell-v256 main.home-page .home-section-title{margin-bottom:20px!important}
  html body.home-shell-v256 main.home-page .home-section-title h2{font-size:34px!important}
  html body.home-shell-v256 main.home-page .home-entry-grid{grid-template-columns:1fr!important;gap:14px!important}
  html body.home-shell-v256 main.home-page .home-entry-grid > a{padding:21px 18px 18px!important;border-radius:15px!important}
  html body.home-shell-v256 main.home-page .home-entry-grid > a b{font-size:15px!important}
  html body.home-shell-v256 main.home-page .home-entry-grid > a p{font-size:14px!important}
  html body.home-shell-v256 main.home-page .home-entry-grid > a span{padding-top:16px!important}
  html body.home-shell-v256 main.home-page .home-results{padding:52px 0 54px!important}
  html body.home-shell-v256 main.home-page .home-results .home-results-inner{padding:24px 20px!important;border-radius:16px!important;gap:20px!important}
  html body.home-shell-v256 main.home-page .home-results .home-results-inner h2{font-size:26px!important}
}

@media (max-width:640px){
  html body.home-shell-v256 main.home-page .home-welcome > .wrap,
  html body.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results) > .wrap{
    width:calc(100% - 24px)!important;
  }
  html body.home-shell-v256 main.home-page .home-welcome h1{font-size:clamp(32px,10vw,41px)!important}
  html body.home-shell-v256 main.home-page .home-results .home-results-inner{padding:22px 17px!important}
}


/* ======================================================================
   v262 — restore hero search panel + make laboratory background visible
   ====================================================================== */

/* The lab blueprint now has enough contrast to be visible without competing
   with text. Keep it attached to the full homepage surface. */
html body.theme-dark.home-shell-v256 main.home-page,
html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page{
  background-color:#0b1117!important;
  background-image:
    linear-gradient(90deg,rgba(9,14,19,.20) 0%,rgba(9,14,19,.08) 48%,rgba(9,14,19,.12) 100%),
    linear-gradient(180deg,rgba(7,12,17,.05) 0%,rgba(7,12,17,.28) 100%),
    url('/assets/home-lab-blueprint.svg')!important;
  background-position:center top,center top,center top!important;
  background-size:auto,auto,1600px auto!important;
  background-repeat:repeat,repeat,no-repeat!important;
  background-attachment:scroll!important;
}

/* Restore the old search card on the right side of the introduction. */
@media (min-width:901px){
  html body.home-shell-v256 main.home-page .home-welcome-grid,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 320px!important;
    gap:54px!important;
    align-items:start!important;
  }

  html body.home-shell-v256 main.home-page .home-welcome-copy,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy{
    width:100%!important;
    max-width:860px!important;
  }

  html body.home-shell-v256 main.home-page .home-search-card,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-search-card{
    display:block!important;
    width:320px!important;
    max-width:320px!important;
    margin:34px 0 0!important;
    padding:22px 20px 20px!important;
    border-radius:16px!important;
    box-shadow:none!important;
  }

  html body.home-shell-v256 main.home-page .home-actions,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-actions{
    display:none!important;
  }
}

/* Search panel typography and controls. */
html body.home-shell-v256 main.home-page .home-search-card .home-search-label,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-search-card .home-search-label{
  margin:0 0 10px!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:820!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}

html body.home-shell-v256 main.home-page .home-search-card h2,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-search-card h2{
  margin:0 0 8px!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:22px!important;
  line-height:1.15!important;
  letter-spacing:-.025em!important;
  font-weight:780!important;
}

html body.home-shell-v256 main.home-page .home-search-card > p:not(.home-search-label),
html body.reference-ui-v99.home-shell-v256 main.home-page .home-search-card > p:not(.home-search-label){
  margin:0 0 16px!important;
  font-size:13px!important;
  line-height:1.55!important;
}

html body.home-shell-v256 main.home-page .home-main-search,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-main-search{
  margin:0!important;
}

html body.home-shell-v256 main.home-page .home-main-search > div,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-main-search > div{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:0!important;
  width:100%!important;
  border-radius:10px!important;
  overflow:hidden!important;
}

html body.home-shell-v256 main.home-page .home-main-search input,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-main-search input{
  min-width:0!important;
  height:43px!important;
  padding:0 12px!important;
  border-radius:0!important;
  font-size:12.5px!important;
}

html body.home-shell-v256 main.home-page .home-main-search button,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-main-search button{
  min-width:70px!important;
  height:43px!important;
  padding:0 14px!important;
  border-radius:0!important;
  font-size:12px!important;
  font-weight:780!important;
}

html body.home-shell-v256 main.home-page .home-search-links,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-search-links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin-top:15px!important;
  padding-top:14px!important;
  border-top:1px solid currentColor!important;
  border-top-color:rgba(127,145,154,.18)!important;
}

html body.home-shell-v256 main.home-page .home-search-links a,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-search-links a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:0 9px!important;
  border-radius:999px!important;
  font-size:10.5px!important;
  line-height:1!important;
  font-weight:610!important;
  text-decoration:none!important;
}

/* Dark search panel. */
html body.theme-dark.home-shell-v256 main.home-page .home-search-card,
html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page .home-search-card{
  background:rgba(16,23,30,.90)!important;
  border:1px solid #303c47!important;
  color:#eff4f2!important;
  backdrop-filter:blur(4px)!important;
}

html body.theme-dark.home-shell-v256 main.home-page .home-search-card .home-search-label{
  color:#9babb2!important;
}

html body.theme-dark.home-shell-v256 main.home-page .home-search-card h2{
  color:#eef3f2!important;
}

html body.theme-dark.home-shell-v256 main.home-page .home-search-card > p:not(.home-search-label){
  color:#aeb9bf!important;
}

html body.theme-dark.home-shell-v256 main.home-page .home-main-search > div{
  border:1px solid #34424e!important;
  background:#0d141a!important;
}

html body.theme-dark.home-shell-v256 main.home-page .home-main-search input{
  background:#0d141a!important;
  border:0!important;
  color:#dbe3e6!important;
}

html body.theme-dark.home-shell-v256 main.home-page .home-main-search button{
  background:#151e26!important;
  border:0!important;
  border-left:1px solid #34424e!important;
  color:#f1f4f3!important;
}

html body.theme-dark.home-shell-v256 main.home-page .home-search-links a{
  background:#151e26!important;
  border:1px solid #35424d!important;
  color:#b9c6ca!important;
}

html body.theme-dark.home-shell-v256 main.home-page .home-search-links a:hover{
  border-color:#4a5a67!important;
  color:#f2f6f5!important;
}

/* Light theme gets the same composition rather than a dark-theme-only feature. */
html body:not(.theme-dark).home-shell-v256 main.home-page{
  background:
    linear-gradient(180deg,rgba(248,248,244,.88),rgba(244,247,244,.94)),
    url('/assets/home-lab-blueprint.svg') center top / 1600px auto no-repeat!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-search-card,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page .home-search-card{
  background:rgba(255,255,255,.94)!important;
  border:1px solid #d5ded9!important;
  color:#193d33!important;
  box-shadow:0 12px 30px rgba(30,50,43,.055)!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-search-card .home-search-label{
  color:#75847e!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-search-card h2{
  color:#173d32!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-search-card > p:not(.home-search-label){
  color:#5d6964!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-main-search > div{
  border:1px solid #d3ddd8!important;
  background:#fbfcfb!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-main-search input{
  background:#fbfcfb!important;
  border:0!important;
  color:#243f37!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-main-search button{
  background:#edf3f0!important;
  border:0!important;
  border-left:1px solid #d3ddd8!important;
  color:#21463b!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-search-links a{
  background:#f6f8f6!important;
  border:1px solid #d5ded9!important;
  color:#53645d!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-search-links a:hover{
  background:#eef4f1!important;
  border-color:#bdcec6!important;
  color:#1d4b3d!important;
}

/* Mobile: search card follows the intro cards naturally and stays usable. */
@media (max-width:900px){
  html body.home-shell-v256 main.home-page .home-welcome-grid,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-grid{
    display:block!important;
  }

  html body.home-shell-v256 main.home-page .home-search-card,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-search-card{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:20px 0 0!important;
    padding:18px 16px 17px!important;
    border-radius:14px!important;
  }

  html body.theme-dark.home-shell-v256 main.home-page,
  html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page,
  html body:not(.theme-dark).home-shell-v256 main.home-page{
    background-size:auto,auto,1200px auto!important;
  }
}


/* v263 — intro sentence now directly introduces the three learning cards. */
html body.home-shell-v256 main.home-page .home-lead,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-lead{
  margin-bottom:0!important;
}

html body.home-shell-v256 main.home-page .home-welcome-summary,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary{
  margin-top:18px!important;
}


/* v264 — extra welcoming copy between hero heading and learning cards */
html body.home-shell-v256 main.home-page .home-intro-copy,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-intro-copy{
  max-width:760px!important;
  margin:22px 0 0!important;
  font-size:17px!important;
  line-height:1.68!important;
}
html body.theme-dark.home-shell-v256 main.home-page .home-intro-copy{
  color:#b7c1c6!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-intro-copy{
  color:#5d6964!important;
}
html body.home-shell-v256 main.home-page .home-lead,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-lead{
  margin-top:18px!important;
}
@media (max-width:900px){
  html body.home-shell-v256 main.home-page .home-intro-copy{
    max-width:100%!important;
    margin-top:18px!important;
    font-size:15.5px!important;
    line-height:1.62!important;
  }
  html body.home-shell-v256 main.home-page .home-lead{
    margin-top:14px!important;
  }
}


/* ======================================================================
   v265 — traffic source header progress alignment
   Source article topbars used a centered max-width container, leaving the
   progress indicator floating away from the right edge. Keep breadcrumbs
   and actions in one full-width topbar with normal edge padding.
   ====================================================================== */
@media (min-width:901px){
  html body.reference-ui-v99.article-page:not(.content-system-v103) .ref-topbar{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:14px!important;
    padding-right:14px!important;
    box-sizing:border-box!important;
  }

  html body.reference-ui-v99.article-page:not(.content-system-v103) .ref-topbar-crumbs{
    min-width:0!important;
    flex:1 1 auto!important;
  }

  html body.reference-ui-v99.article-page:not(.content-system-v103) .ref-topbar-actions{
    margin-left:auto!important;
    flex:0 0 auto!important;
  }

  html body.reference-ui-v99.article-page:not(.content-system-v103) .ref-top-progress{
    margin-right:0!important;
  }
}


/* ======================================================================
   v266 — real homepage laboratory background layer
   ====================================================================== */
html body.home-shell-v256 main.home-page{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
}
html body.home-shell-v256 main.home-page > .home-lab-background-v266{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  background-color:#0b1117!important;
  background-image:url('/assets/home-lab-blueprint.svg')!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-size:1800px auto!important;
  opacity:1!important;
}
html body.home-shell-v256 main.home-page > :not(.home-lab-background-v266){
  position:relative!important;
  z-index:1!important;
}
html body.home-shell-v256 main.home-page > section,
html body.reference-ui-v99.home-shell-v256 main.home-page > section,
html body.theme-dark.home-shell-v256 main.home-page > section,
html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page > section{
  background:transparent!important;
  background-image:none!important;
}
html body.theme-dark.home-shell-v256 main.home-page .home-welcome-summary > div,
html body.theme-dark.home-shell-v256 main.home-page .home-entry-grid > a,
html body.theme-dark.home-shell-v256 main.home-page .home-search-card{
  background-color:rgba(16,23,30,.92)!important;
  backdrop-filter:blur(2px)!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266{
  background-color:#f4f6f3!important;
  opacity:.28!important;
}
@media (max-width:1100px){html body.home-shell-v256 main.home-page > .home-lab-background-v266{background-position:62% top!important;background-size:1500px auto!important}}
@media (max-width:900px){html body.home-shell-v256 main.home-page > .home-lab-background-v266{background-position:68% top!important;background-size:1250px auto!important;opacity:.66!important}}

/* v267: remove meaningless framed windows in traffic-source intros */
html body .source-playbook-page .source-playbook-article,
html body.reference-ui-v99 .source-playbook-page .source-playbook-article{
  background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;
}
html body .source-playbook-page .source-hero-shell,
html body.reference-ui-v99 .source-playbook-page .source-hero-shell{
  margin:0 0 18px!important;
  padding:0 0 18px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
html body .source-playbook-page .source-hero-shell > .lead,
html body.reference-ui-v99 .source-playbook-page .source-hero-shell > .lead{
  margin:0 0 14px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
html body .source-playbook-page .playbook-risk,
html body.reference-ui-v99 .source-playbook-page .playbook-risk{
  margin:14px 0 16px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
html body .source-playbook-page .playbook-risk b,
html body.reference-ui-v99 .source-playbook-page .playbook-risk b{
  display:block!important;
  margin:0 0 7px!important;
}
html body .source-playbook-page .playbook-risk p,
html body.reference-ui-v99 .source-playbook-page .playbook-risk p{
  display:block!important;
  margin:0!important;
}
html body .source-playbook-page .source-section-tabs,
html body.reference-ui-v99 .source-playbook-page .source-section-tabs{
  margin:16px 0 8px!important;
  padding:0 0 8px!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid var(--academy-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
}
html body.theme-dark .source-playbook-page .source-section-tabs,
html body.reference-ui-v99.theme-dark .source-playbook-page .source-section-tabs{
  border-bottom-color:#2b333d!important;
}


/* v268 — home background toned down to match the approved reference more closely */
html body.theme-dark.home-shell-v256 main.home-page,
html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page{
  background-color:#0c1117!important;
  background-image:
    radial-gradient(circle at 18% 14%,rgba(67,92,108,.08),transparent 26%),
    linear-gradient(180deg,rgba(5,9,13,.18),rgba(5,9,13,.52) 46%,rgba(5,9,13,.7) 100%),
    url('/assets/home-lab-blueprint.svg')!important;
  background-position:left top,top center,right top!important;
  background-size:100% 100%,100% 100%,1760px auto!important;
  background-repeat:no-repeat,no-repeat,repeat-y!important;
}
@media (max-width:900px){
  html body.theme-dark.home-shell-v256 main.home-page,
  html body.theme-dark.reference-ui-v99.home-shell-v256 main.home-page{
    background-size:100% 100%,100% 100%,1320px auto!important;
    background-position:left top,top center,62% top!important;
  }
}


/* v269 — source compare note: extra inner spacing so text never sticks to edges */
html body .source-compare-note.compact-block-v103,
html body .wrap.source-compare-note.compact-block-v103,
html body.content-system-v103 main.compact-main-v103 .wrap.source-compare-note.compact-block-v103,
html body.content-system-v103 main.compact-main-v103 > .wrap.source-compare-note.compact-block-v103{
  box-sizing:border-box!important;
  padding:24px 28px!important;
}
html body .source-compare-note.compact-block-v103 strong,
html body .wrap.source-compare-note.compact-block-v103 strong{
  display:block!important;
  margin:0 0 12px!important;
}
html body .source-compare-note.compact-block-v103 p,
html body .wrap.source-compare-note.compact-block-v103 p{
  margin:0!important;
  line-height:1.7!important;
}
@media (max-width:650px){
  html body .source-compare-note.compact-block-v103,
  html body .wrap.source-compare-note.compact-block-v103,
  html body.content-system-v103 main.compact-main-v103 .wrap.source-compare-note.compact-block-v103,
  html body.content-system-v103 main.compact-main-v103 > .wrap.source-compare-note.compact-block-v103{
    padding:18px 20px!important;
  }
}


/* v270 — library category pills should not stretch into giant ovals */
html body #libraryRows .library-row{
  align-items:center!important;
}
html body #libraryRows .library-row > :nth-child(2){
  align-self:stretch!important;
}
html body #libraryRows .library-type,
html body.reference-ui-v99 #libraryRows .library-type,
html body.theme-dark #libraryRows .library-type,
html body.reference-ui-v99.theme-dark #libraryRows .library-type{
  align-self:center!important;
  justify-self:start!important;
  display:inline-flex!important;
  width:auto!important;
  max-width:170px!important;
  min-height:0!important;
  height:auto!important;
  padding:10px 14px!important;
  line-height:1.15!important;
  white-space:normal!important;
  text-align:center!important;
  word-break:keep-all!important;
  overflow-wrap:anywhere!important;
  box-sizing:border-box!important;
}
@media (max-width:920px){
  html body #libraryRows .library-row{
    align-items:stretch!important;
  }
  html body #libraryRows .library-type,
  html body.reference-ui-v99 #libraryRows .library-type,
  html body.theme-dark #libraryRows .library-type,
  html body.reference-ui-v99.theme-dark #libraryRows .library-type{
    align-self:flex-start!important;
    max-width:100%!important;
  }
}


/* v273 — sidebar nav icons should be clean, with no boxed background */
html body.reference-ui-v99 .global-sidebar .ref-nav-icon,
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-icon{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
}
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a:hover .ref-nav-icon,
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a.is-active .ref-nav-icon,
html body.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"] .ref-nav-icon,
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-group nav a:hover .ref-nav-icon,
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-group nav a.is-active .ref-nav-icon,
html body.theme-dark.reference-ui-v99 .global-sidebar .ref-nav-group nav a[aria-current="page"] .ref-nav-icon{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}


/* v274 — simplify palette: remove blue/pink tints, keep warm neutral + green accents */
:root{
  --wine:#8a6538;
}

html body:not(.theme-dark),
html body.reference-ui-v99:not(.theme-dark){
  --v109-bg:#f3efe6!important;
  --v109-bg-soft:#f7f3eb!important;
  --v109-surface:#fffdf8!important;
  --v109-surface-warm:#f6efe4!important;
  --v109-ink:#1f2723!important;
  --v109-copy:#5f645f!important;
  --v109-muted:#7a766e!important;
  --v109-line:#ddd3c6!important;
  --v109-line-strong:#d1c6b7!important;
  --v109-green:#29584c!important;
  --v109-green-dark:#1d443a!important;
  --v109-green-soft:#eef3ee!important;
  --v109-warm:#8a6538!important;
  --v109-warm-soft:#f3eadc!important;
  --v109-warning:#9b713f!important;
  --v109-warning-soft:#fbf4e8!important;
}

html body:not(.theme-dark) .page-head:after,
html body.reference-ui-v99:not(.theme-dark) .page-head:after{
  background:linear-gradient(90deg,var(--v109-green) 0 42%,var(--v109-warm) 42% 74%,#c7b08f 74% 100%)!important;
}

html body:not(.theme-dark) .knowledge-map>div:nth-child(4):before,
html body.reference-ui-v99:not(.theme-dark) .knowledge-map>div:nth-child(4):before{
  background:var(--v109-warm)!important;
}

html body:not(.theme-dark) :is(.traffic-principle,.source-compare-note,.logic-analysis-v103,.logic-explain-v103,.logic-section-v103,.academy-content-section,.inline-note,.partner-next-step,.service-inline,.service-review-note,.playbook-tips,.hero-note,.hero-route,.related-primary,.handbook-intro,.traffic-cost-note,.source-cost-box,.author-note,.tool-source-note,.warning-note,.guide-v101-callout,.playbook-risk,.compact-block-v103),
html body.reference-ui-v99:not(.theme-dark) :is(.traffic-principle,.source-compare-note,.logic-analysis-v103,.logic-explain-v103,.logic-section-v103,.academy-content-section,.inline-note,.partner-next-step,.service-inline,.service-review-note,.playbook-tips,.hero-note,.hero-route,.related-primary,.handbook-intro,.traffic-cost-note,.source-cost-box,.author-note,.tool-source-note,.warning-note,.guide-v101-callout,.playbook-risk,.compact-block-v103){
  background:var(--v109-surface-warm)!important;
  border-color:var(--v109-line)!important;
  box-shadow:none!important;
}

html body:not(.theme-dark) :is(.inline-note,.source-compare-note,.traffic-principle,.playbook-risk,.guide-v101-callout.warning,.warning-note,.logic-warning-v103),
html body.reference-ui-v99:not(.theme-dark) :is(.inline-note,.source-compare-note,.traffic-principle,.playbook-risk,.guide-v101-callout.warning,.warning-note,.logic-warning-v103){
  border-left-color:var(--v109-warm)!important;
}

html body:not(.theme-dark) :is(.logic-action-v103,.partner-specific-box,.rules-action-box),
html body.reference-ui-v99:not(.theme-dark) :is(.logic-action-v103,.partner-specific-box,.rules-action-box){
  background:var(--v109-green-soft)!important;
  border-color:#d8e4dc!important;
  border-left-color:var(--v109-green)!important;
}

html body:not(.theme-dark) :is(.article th,.source-compare-row.source-compare-head>div,.source-compare-row>div:first-child,.catalog-search-head,.index-title),
html body.reference-ui-v99:not(.theme-dark) :is(.article th,.source-compare-row.source-compare-head>div,.source-compare-row>div:first-child,.catalog-search-head,.index-title){
  background:#efe8da!important;
  color:var(--v109-ink)!important;
}

html body:not(.theme-dark) :is(.source-compare-picker,.source-compare-table,.source-compare-row>div,.source-compare-actions a,.library-row,.library-card,.service-card,.service-tool,.tool-card,.about-card,.section-card,.home-entry-grid>a,.home-source-grid>a,.section-entry,.section-outcome,.article-page .article,.source-playbook-article,.article-aside.enhanced-rail .aside-block,.notes-panel,.journal-reading-grid > .saved-block),
html body.reference-ui-v99:not(.theme-dark) :is(.source-compare-picker,.source-compare-table,.source-compare-row>div,.source-compare-actions a,.library-row,.library-card,.service-card,.service-tool,.tool-card,.about-card,.section-card,.home-entry-grid>a,.home-source-grid>a,.section-entry,.section-outcome,.article-page .article,.source-playbook-article,.article-aside.enhanced-rail .aside-block,.notes-panel,.journal-reading-grid > .saved-block){
  border-color:var(--v109-line)!important;
}

html body.theme-dark,
html body.reference-ui-v99.theme-dark{
  --v109-bg:#0f1114!important;
  --v109-bg-soft:#13161b!important;
  --v109-surface:#171b20!important;
  --v109-surface-warm:#1a1d21!important;
  --v109-ink:#edf1f3!important;
  --v109-copy:#b8beb9!important;
  --v109-muted:#949b96!important;
  --v109-line:#2f353b!important;
  --v109-line-strong:#3a4148!important;
  --v109-green:#86cdb3!important;
  --v109-green-dark:#6db89d!important;
  --v109-green-soft:#1a2622!important;
  --v109-warm:#c09b6c!important;
  --v109-warm-soft:#26211b!important;
  --v109-warning:#c8a06a!important;
  --v109-warning-soft:#25201b!important;
}

html body.theme-dark :is(.logic-analysis-v103,.logic-explain-v103,.source-compare-note,.traffic-principle,.inline-note,.guide-v101-callout,.playbook-risk,.warning-note,.service-inline,.partner-next-step,.playbook-tips,.hero-note,.hero-route,.related-primary),
html body.reference-ui-v99.theme-dark :is(.logic-analysis-v103,.logic-explain-v103,.source-compare-note,.traffic-principle,.inline-note,.guide-v101-callout,.playbook-risk,.warning-note,.service-inline,.partner-next-step,.playbook-tips,.hero-note,.hero-route,.related-primary){
  background:#1a1d21!important;
  border-color:#31373d!important;
}

html body.theme-dark :is(.inline-note,.source-compare-note,.traffic-principle,.playbook-risk,.guide-v101-callout.warning,.warning-note,.logic-warning-v103),
html body.reference-ui-v99.theme-dark :is(.inline-note,.source-compare-note,.traffic-principle,.playbook-risk,.guide-v101-callout.warning,.warning-note,.logic-warning-v103){
  border-left-color:var(--v109-warm)!important;
}

html body.theme-dark .page-head:after,
html body.reference-ui-v99.theme-dark .page-head:after{
  background:linear-gradient(90deg,var(--v109-green) 0 42%,var(--v109-warm) 42% 74%,#6f675a 74% 100%)!important;
}


/* v275 — larger copy in image+text figure blocks */
html body .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body.reference-ui-v99 .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body.reference-ui-v99 .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption,
html body .source-wizard-card figcaption,
html body.reference-ui-v99 .source-wizard-card figcaption,
html body .source-visual-pair figcaption,
html body.reference-ui-v99 .source-visual-pair figcaption,
html body .source-visual-wide figcaption,
html body.reference-ui-v99 .source-visual-wide figcaption{
  font-size:15.6px!important;
  line-height:1.75!important;
  padding:20px 22px!important;
}

html body .article-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
html body.reference-ui-v99 .article-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
html body .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
html body.reference-ui-v99 .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
html body .source-wizard-card figcaption strong,
html body.reference-ui-v99 .source-wizard-card figcaption strong,
html body .source-visual-pair figcaption strong,
html body.reference-ui-v99 .source-visual-pair figcaption strong,
html body .source-visual-wide figcaption strong,
html body.reference-ui-v99 .source-visual-wide figcaption strong{
  display:block!important;
  margin-bottom:8px!important;
  font-size:19px!important;
  line-height:1.35!important;
  font-weight:800!important;
}

html body .article-page .article-figure.compact.user-shot>figcaption,
html body.reference-ui-v99 .article-page .article-figure.compact.user-shot>figcaption,
html body .source-playbook-page .article-figure.compact.user-shot>figcaption,
html body.reference-ui-v99 .source-playbook-page .article-figure.compact.user-shot>figcaption{
  align-self:stretch!important;
}

@media(max-width:900px){
  html body .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
  html body.reference-ui-v99 .article-page .article-figure.compact:not(.source-journey-card)>figcaption,
  html body .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption,
  html body.reference-ui-v99 .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption,
  html body .source-wizard-card figcaption,
  html body.reference-ui-v99 .source-wizard-card figcaption,
  html body .source-visual-pair figcaption,
  html body.reference-ui-v99 .source-visual-pair figcaption,
  html body .source-visual-wide figcaption,
  html body.reference-ui-v99 .source-visual-wide figcaption{
    font-size:14.6px!important;
    line-height:1.68!important;
    padding:16px 17px!important;
  }

  html body .article-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
  html body.reference-ui-v99 .article-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
  html body .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
  html body.reference-ui-v99 .source-playbook-page .article-figure.compact:not(.source-journey-card)>figcaption strong,
  html body .source-wizard-card figcaption strong,
  html body.reference-ui-v99 .source-wizard-card figcaption strong,
  html body .source-visual-pair figcaption strong,
  html body.reference-ui-v99 .source-visual-pair figcaption strong,
  html body .source-visual-wide figcaption strong,
  html body.reference-ui-v99 .source-visual-wide figcaption strong{
    font-size:17px!important;
  }
}

/* ======================================================================
   v276 — final mobile normalization
   One content width for every page and both themes; remove accumulated
   mobile-width conflicts and common horizontal-overflow problems.
   ====================================================================== */
@media (max-width:900px){
  :root{
    --tl-mobile-gutter:14px;
    --tl-mobile-width:calc(100% - (var(--tl-mobile-gutter) * 2));
  }

  html,
  html body,
  html body.reference-ui-v99,
  html body.theme-dark,
  html body.reference-ui-v99.theme-dark{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:clip!important;
  }

  html body :is(main,.compact-main-v103,.home-page,.article-page,.source-playbook-page,.traffic-hub-page,.services-page,.about-main-v114),
  html body.reference-ui-v99 :is(main,.compact-main-v103,.home-page,.article-page,.source-playbook-page,.traffic-hub-page,.services-page,.about-main-v114),
  html body.theme-dark :is(main,.compact-main-v103,.home-page,.article-page,.source-playbook-page,.traffic-hub-page,.services-page,.about-main-v114){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;
  }

  /* Canonical mobile content gutter. This deliberately ignores theme. */
  html body main > .wrap,
  html body main > section.wrap,
  html body main > aside.wrap,
  html body main > div.wrap,
  html body main > section > .wrap,
  html body main > div > .wrap,
  html body.reference-ui-v99 main > .wrap,
  html body.reference-ui-v99 main > section.wrap,
  html body.reference-ui-v99 main > aside.wrap,
  html body.reference-ui-v99 main > div.wrap,
  html body.reference-ui-v99 main > section > .wrap,
  html body.reference-ui-v99 main > div > .wrap,
  html body.theme-dark main > .wrap,
  html body.theme-dark main > section.wrap,
  html body.theme-dark main > aside.wrap,
  html body.theme-dark main > div.wrap,
  html body.theme-dark main > section > .wrap,
  html body.theme-dark main > div > .wrap{
    width:var(--tl-mobile-width)!important;
    max-width:none!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;
  }

  /* Article workspaces use the same gutter as every landing page. */
  html body .article-layout,
  html body.reference-ui-v99 .article-layout,
  html body .source-playbook-page .article-layout,
  html body.reference-ui-v99 .source-playbook-page .article-layout{
    display:block!important;
    width:var(--tl-mobile-width)!important;
    max-width:none!important;
    min-width:0!important;
    margin:0 auto!important;
    padding:18px 0 54px!important;
    box-sizing:border-box!important;
  }

  html body :is(.article,.structured-article-v103,.source-playbook-article),
  html body.reference-ui-v99 :is(.article,.structured-article-v103,.source-playbook-article){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  html body :is(.article-aside,.article-aside.enhanced-rail,.playbook-aside){
    display:none!important;
  }

  /* Header also shares the same visual gutter and never changes with theme. */
  html body .site-header,
  html body.reference-ui-v99 .site-header,
  html body.theme-dark .site-header,
  html body.reference-ui-v99.theme-dark .site-header{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    left:0!important;
    right:0!important;
    margin:0!important;
    overflow:hidden!important;
  }

  html body .site-header .header-inner,
  html body.reference-ui-v99 .ref-topbar{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding-left:var(--tl-mobile-gutter)!important;
    padding-right:var(--tl-mobile-gutter)!important;
    box-sizing:border-box!important;
  }

  html body.reference-ui-v99 .ref-topbar-crumbs{
    min-width:0!important;
    overflow:hidden!important;
  }

  html body.reference-ui-v99 .ref-mobile-brand,
  html body .site-header .brand{
    min-width:0!important;
    max-width:calc(100% - 92px)!important;
    overflow:hidden!important;
  }

  html body.reference-ui-v99 .ref-mobile-brand b,
  html body .site-header .brand-text b{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body .global-sidebar,
  html body.reference-ui-v99 .global-sidebar{
    max-width:calc(100vw - 20px)!important;
    box-sizing:border-box!important;
  }

  html body .site-footer,
  html body.reference-ui-v99 .site-footer{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    overflow:hidden!important;
  }
  html body .site-footer > .wrap,
  html body.reference-ui-v99 .site-footer > .wrap{
    width:var(--tl-mobile-width)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  /* Typography: no oversized desktop display type on narrow screens. */
  html body :is(.page-head h1,.article-page .article h1,.source-playbook-article h1,.about-hero-v114 h1),
  html body.reference-ui-v99 :is(.page-head h1,.article-page .article h1,.source-playbook-article h1,.about-hero-v114 h1){
    max-width:100%!important;
    font-size:clamp(29px,8.2vw,36px)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
    overflow-wrap:anywhere!important;
  }
  html body :is(.article h2,.source-playbook-article h2,.section-heading h2,.home-section-title h2),
  html body.reference-ui-v99 :is(.article h2,.source-playbook-article h2,.section-heading h2,.home-section-title h2){
    max-width:100%!important;
    font-size:clamp(22px,6.2vw,28px)!important;
    line-height:1.16!important;
    overflow-wrap:anywhere!important;
  }
  html body :is(p,li,dd,figcaption),
  html body.reference-ui-v99 :is(p,li,dd,figcaption){
    overflow-wrap:break-word!important;
  }

  /* Home: same width as every other page; no desktop grid survives. */
  html body.home-shell-v256 main.home-page .home-welcome > .wrap,
  html body.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results) > .wrap,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome > .wrap,
  html body.reference-ui-v99.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results) > .wrap{
    width:var(--tl-mobile-width)!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  html body.home-shell-v256 main.home-page .home-welcome-grid,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-grid{
    display:block!important;
    width:100%!important;
  }
  html body.home-shell-v256 main.home-page .home-welcome-copy,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy,
  html body.home-shell-v256 main.home-page .home-search-card,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-search-card{
    width:100%!important;
    max-width:100%!important;
  }
  html body.home-shell-v256 main.home-page .home-welcome h1,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome h1{
    max-width:100%!important;
    font-size:clamp(34px,9.8vw,45px)!important;
    line-height:1.02!important;
  }
  html body.home-shell-v256 main.home-page :is(.home-welcome-summary,.home-entry-grid,.home-source-grid),
  html body.reference-ui-v99.home-shell-v256 main.home-page :is(.home-welcome-summary,.home-entry-grid,.home-source-grid){
    width:100%!important;
    max-width:100%!important;
    grid-template-columns:1fr!important;
  }

  /* Library cards: clean vertical mobile layout; compact category chip. */
  html body #libraryRows,
  html body.reference-ui-v99 #libraryRows{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  html body #libraryRows .library-row,
  html body.reference-ui-v99 #libraryRows .library-row{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    gap:11px!important;
    padding:16px!important;
    border-radius:12px!important;
    box-sizing:border-box!important;
    clip-path:none!important;
  }
  html body #libraryRows .library-row:after{display:none!important}
  html body #libraryRows .library-row > *{width:100%!important;max-width:100%!important;min-width:0!important}
  html body #libraryRows .library-type,
  html body.reference-ui-v99 #libraryRows .library-type{
    align-self:flex-start!important;
    width:auto!important;
    max-width:100%!important;
    padding:7px 10px!important;
    border-radius:999px!important;
    white-space:normal!important;
  }
  html body #libraryRows .library-meta,
  html body.reference-ui-v99 #libraryRows .library-meta{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:wrap!important;
    width:100%!important;
    min-height:0!important;
    gap:7px 10px!important;
    padding:10px 0 0!important;
    border-left:0!important;
    border-top:1px solid var(--v109-line)!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  html body #libraryRows .library-meta span,
  html body.reference-ui-v99 #libraryRows .library-meta span{
    width:auto!important;
    min-height:0!important;
    justify-content:flex-start!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    text-align:left!important;
  }
  html body #libraryRows .library-meta :is(.level-badge,.reading-state-badge),
  html body.reference-ui-v99 #libraryRows .library-meta :is(.level-badge,.reading-state-badge){
    padding:4px 8px!important;
  }

  /* Grids/cards collapse consistently instead of retaining mixed widths. */
  html body :is(
    .service-tool-grid,.service-grid,.service-use-grid,.tools-grid,.tool-form-grid,
    .saved-grid,.recent-home-grid,.related-grid,.compare-grid,.problem-options,
    .rules-summary-grid,.rules-model-grid,.geo-chip-grid,.traffic-source-grid,
    .source-toolkit-grid,.source-journey-grid.four,.source-journey-grid.three,
    .source-visual-pair,.playbook-checklist,.platform-setup,.playbook-format-list,
    .playbook-steps,.traffic-diagnostic-list,.guide-v101-grid.five,.guide-v101-grid.four,
    .guide-v101-grid.three,.guide-v101-formats,.guide-v101-funnel-table,
    .guide-v101-diagnostics,.guide-v101-scale,.guide-v101-next>div,
    .knowledge-map,.split-section,.about-grid,.path-dashboard,.ref-summary-grid,
    .ref-connected-tools>div
  ),
  html body.reference-ui-v99 :is(
    .service-tool-grid,.service-grid,.service-use-grid,.tools-grid,.tool-form-grid,
    .saved-grid,.recent-home-grid,.related-grid,.compare-grid,.problem-options,
    .rules-summary-grid,.rules-model-grid,.geo-chip-grid,.traffic-source-grid,
    .source-toolkit-grid,.source-journey-grid.four,.source-journey-grid.three,
    .source-visual-pair,.playbook-checklist,.platform-setup,.playbook-format-list,
    .playbook-steps,.traffic-diagnostic-list,.guide-v101-grid.five,.guide-v101-grid.four,
    .guide-v101-grid.three,.guide-v101-formats,.guide-v101-funnel-table,
    .guide-v101-diagnostics,.guide-v101-scale,.guide-v101-next>div,
    .knowledge-map,.split-section,.about-grid,.path-dashboard,.ref-summary-grid,
    .ref-connected-tools>div
  ){
    grid-template-columns:1fr!important;
    max-width:100%!important;
  }

  html body :is(.service-tool,.service-card,.tool-card,.about-card,.section-card,.source-tool-card,.source-journey-card,.playbook-card,.calc-card,.diagnostic-card,.notes-card,.field-case),
  html body.reference-ui-v99 :is(.service-tool,.service-card,.tool-card,.about-card,.section-card,.source-tool-card,.source-journey-card,.playbook-card,.calc-card,.diagnostic-card,.notes-card,.field-case){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  /* Image/caption blocks never create a second-width system on mobile. */
  html body :is(.article-figure,.guide-v101-media,.source-visual-wide,.source-visual-pair .article-figure,.source-journey-card.article-figure),
  html body.reference-ui-v99 :is(.article-figure,.guide-v101-media,.source-visual-wide,.source-visual-pair .article-figure,.source-journey-card.article-figure){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }
  html body :is(.article-figure img,.guide-v101-media img,.source-visual-pair img,.source-visual-wide img,.source-journey-card img),
  html body.reference-ui-v99 :is(.article-figure img,.guide-v101-media img,.source-visual-pair img,.source-visual-wide img,.source-journey-card img){
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-width:0!important;
    object-fit:contain!important;
    box-sizing:border-box!important;
  }
  html body .article-page .article-figure.compact:not(.source-journey-card),
  html body.reference-ui-v99 .article-page .article-figure.compact:not(.source-journey-card),
  html body .source-playbook-page .article-figure.compact:not(.source-journey-card),
  html body.reference-ui-v99 .source-playbook-page .article-figure.compact:not(.source-journey-card){
    display:flex!important;
    flex-direction:column!important;
  }

  /* Tabs, breadcrumbs and action rows scroll/wrap internally rather than widening the page. */
  html body :is(.source-section-tabs,.breadcrumbs,.article-actions,.article-actions-unified,.source-compare-actions,.service-tool-actions,.home-actions),
  html body.reference-ui-v99 :is(.source-section-tabs,.breadcrumbs,.article-actions,.article-actions-unified,.source-compare-actions,.service-tool-actions,.home-actions){
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  html body .source-section-tabs,
  html body.reference-ui-v99 .source-section-tabs{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    overflow-x:auto!important;
    overscroll-behavior-inline:contain!important;
  }
  html body :is(.article-actions,.article-actions-unified,.source-compare-actions,.service-tool-actions,.home-actions),
  html body.reference-ui-v99 :is(.article-actions,.article-actions-unified,.source-compare-actions,.service-tool-actions,.home-actions){
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
  }

  /* Wide data stays scrollable inside its own box; it no longer stretches the page. */
  html body :is(.article table,.rules-table,.compare-table,.source-compare-table),
  html body.reference-ui-v99 :is(.article table,.rules-table,.compare-table,.source-compare-table){
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body .article table,
  html body.reference-ui-v99 .article table{
    display:block!important;
    width:100%!important;
  }
  html body .source-compare-table,
  html body.reference-ui-v99 .source-compare-table{
    display:block!important;
    width:100%!important;
  }
  html body .source-compare-row,
  html body.reference-ui-v99 .source-compare-row{
    min-width:620px!important;
    grid-template-columns:160px 1fr 1fr!important;
  }

  /* Forms: no fixed widths and no iOS zoom caused by tiny inputs. */
  html body :is(input,select,textarea,button),
  html body.reference-ui-v99 :is(input,select,textarea,button){
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  html body :is(input,select,textarea),
  html body.reference-ui-v99 :is(input,select,textarea){
    font-size:16px!important;
  }
  html body :is(.searchbox>div,.home-main-search>div,.library-search,.source-compare-picker,.source-wizard-card),
  html body.reference-ui-v99 :is(.searchbox>div,.home-main-search>div,.library-search,.source-compare-picker,.source-wizard-card){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  html body .source-compare-picker,
  html body.reference-ui-v99 .source-compare-picker,
  html body .source-wizard-card,
  html body.reference-ui-v99 .source-wizard-card{
    grid-template-columns:1fr!important;
  }

  /* Long technical strings and code wrap/scroll without pushing the viewport. */
  html body :is(pre,code,.guide-v101-code,.guide-v101-code code),
  html body.reference-ui-v99 :is(pre,code,.guide-v101-code,.guide-v101-code code){
    max-width:100%!important;
    min-width:0!important;
  }
  html body pre,
  html body.reference-ui-v99 pre{
    overflow-x:auto!important;
    white-space:pre!important;
  }

  /* Remove old negative-edge tricks left by desktop-to-mobile conversions. */
  html body :is(.source-section-tabs,.ref-source-funnel,.article-figure,.home-welcome-summary,.library-shell,.service-workflow,.section-bottom-links),
  html body.reference-ui-v99 :is(.source-section-tabs,.ref-source-funnel,.article-figure,.home-welcome-summary,.library-shell,.service-workflow,.section-bottom-links){
    transform:none!important;
  }
}

@media (max-width:420px){
  :root{--tl-mobile-gutter:12px;}

  html body :is(.page-head h1,.article-page .article h1,.source-playbook-article h1,.about-hero-v114 h1),
  html body.reference-ui-v99 :is(.page-head h1,.article-page .article h1,.source-playbook-article h1,.about-hero-v114 h1){
    font-size:clamp(27px,8.8vw,33px)!important;
  }

  html body.home-shell-v256 main.home-page .home-welcome h1,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome h1{
    font-size:clamp(31px,10.2vw,40px)!important;
  }

  html body #libraryRows .library-row,
  html body.reference-ui-v99 #libraryRows .library-row{
    padding:14px!important;
  }
}

/* ======================================================================
   v277 — approved chalk-lab background across the entire homepage
   Small white hand-drawn sketches + erased chalk traces. Background stays
   peripheral and quiet so it supports the interface instead of competing.
   ====================================================================== */
html body.home-shell-v256 main.home-page,
html body.reference-ui-v99.home-shell-v256 main.home-page{
  background:#0b1015!important;
  background-image:none!important;
}

html body.home-shell-v256 main.home-page > .home-lab-background-v266,
html body.reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  background:#0b1015!important;
  background-image:none!important;
  opacity:1!important;
}

html body.home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body.reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background-image:url('/assets/home-lab-blueprint.svg?v=20260824-2780')!important;
  background-repeat:repeat-y!important;
  background-position:center top!important;
  background-size:1660px auto!important;
  opacity:.54!important;
}

/* Chalkboard wear: broad erased patches rather than a decorative gradient. */
html body.home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body.reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(ellipse at 17% 9%,rgba(255,255,255,.018),transparent 24%),
    radial-gradient(ellipse at 84% 22%,rgba(255,255,255,.014),transparent 20%),
    radial-gradient(ellipse at 23% 48%,rgba(255,255,255,.012),transparent 25%),
    radial-gradient(ellipse at 82% 67%,rgba(255,255,255,.014),transparent 22%),
    radial-gradient(ellipse at 18% 88%,rgba(255,255,255,.011),transparent 21%),
    linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.09))!important;
}

/* The actual content remains above the chalk layer. */
html body.home-shell-v256 main.home-page > :not(.home-lab-background-v266),
html body.reference-ui-v99.home-shell-v256 main.home-page > :not(.home-lab-background-v266){
  position:relative!important;
  z-index:1!important;
}

/* Cards stay opaque enough that sketches never interfere with reading. */
html body.theme-dark.home-shell-v256 main.home-page :is(
  .home-welcome-summary>div,.home-entry-grid>a,.home-source-grid>a,.home-search-card,
  .home-results-inner,.section-entry,.section-outcome,.playbook-card
),
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page :is(
  .home-welcome-summary>div,.home-entry-grid>a,.home-source-grid>a,.home-search-card,
  .home-results-inner,.section-entry,.section-outcome,.playbook-card
){
  background-color:rgba(15,22,29,.94)!important;
  backdrop-filter:none!important;
}

/* Light theme uses the same drawings as faint graphite/pencil marks. */
html body:not(.theme-dark).home-shell-v256 main.home-page,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page{
  background:#f5f1e8!important;
  background-image:none!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266{
  background:#f5f1e8!important;
  opacity:1!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  filter:invert(1) grayscale(1)!important;
  opacity:.16!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  background:
    radial-gradient(ellipse at 17% 9%,rgba(40,48,44,.022),transparent 24%),
    radial-gradient(ellipse at 84% 22%,rgba(40,48,44,.018),transparent 20%),
    radial-gradient(ellipse at 23% 48%,rgba(40,48,44,.016),transparent 25%),
    radial-gradient(ellipse at 82% 67%,rgba(40,48,44,.018),transparent 22%)!important;
}

@media (max-width:1100px){
  html body.home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body.reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    background-size:1480px auto!important;
    background-position:54% top!important;
    opacity:.46!important;
  }
}

@media (max-width:900px){
  html body.home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body.reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    background-size:1180px auto!important;
    background-position:56% top!important;
    opacity:.33!important;
  }
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    opacity:.10!important;
  }
}

/* ======================================================================
   v340 — full visual rollback to v279.
   Only exception: keep the current high-quality homepage chalk background.
   ====================================================================== */
html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background-image:
    linear-gradient(rgba(8,14,20,.30),rgba(8,14,20,.30)),
    url('/assets/home-chalk-reference-soft-tall-hq.webp?v=20260826-3401')!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-size:min(100%,1672px) auto!important;
  opacity:.9!important;
  filter:none!important;
}
html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266{
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background-image:
    linear-gradient(rgba(8,14,20,.22),rgba(8,14,20,.22)),
    url('/assets/home-chalk-reference-soft-hq.webp?v=20260826-3401')!important;
  background-repeat:repeat!important;
  background-position:center top!important;
  background-size:1300px 1300px!important;
  opacity:.9!important;
}
html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  content:none!important;
  display:none!important;
}
@media(max-width:900px){
  html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266{
    background-size:1040px 1040px!important;
  }
  html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    background-size:min(100%,1080px) auto!important;
  }
}
@media(max-width:680px){
  html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266{
    background-size:820px 820px!important;
  }
  html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    background-size:min(100%,820px) auto!important;
  }
}


/* ======================================================================
   v341 — homepage: illustrations only in the upper zone.
   Lower part keeps the same chalk texture without repeating drawings.
   ====================================================================== */
html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  inset:auto!important;
  left:0!important;
  right:0!important;
  top:0!important;
  height:clamp(340px,52vw,880px)!important;
  overflow:hidden!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
}

/* The base layer is texture only and may continue down the whole homepage. */
html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266{
  background-image:
    linear-gradient(rgba(8,14,20,.22),rgba(8,14,20,.22)),
    url('/assets/home-chalk-reference-soft-hq.webp?v=20260826-3411')!important;
  background-repeat:repeat!important;
}

/* Desktop home control is a text button, not a lone house icon. */
html body.reference-ui-v99 .ref-top-home{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  padding:0 12px!important;
  border:1px solid #34414a!important;
  border-radius:7px!important;
  background:#161d23!important;
  color:#eef4f2!important;
  font-size:10.5px!important;
  font-weight:650!important;
  text-decoration:none!important;
  flex:0 0 auto!important;
}
html body.reference-ui-v99:not(.theme-dark) .ref-top-home{
  background:#fffdf9!important;
  border-color:#d8d1c5!important;
  color:#24483d!important;
}
html body.reference-ui-v99 .ref-top-home:hover{
  filter:brightness(1.06);
}


/* ======================================================================
   v342 — light theme follows the same design logic as dark theme.
   Layout, framing, hierarchy, paddings and card treatment stay the same;
   only the palette changes.
   ====================================================================== */
html body:not(.theme-dark){
  --tl-light-bg:#f3efe7;
  --tl-light-bg-2:#f7f4ed;
  --tl-light-surface:#fcfaf6;
  --tl-light-surface-2:#f6f1e9;
  --tl-light-ink:#1f2d29;
  --tl-light-copy:#576760;
  --tl-light-muted:#7a867f;
  --tl-light-line:#d8d0c3;
  --tl-light-line-strong:#c7bcad;
  --tl-light-green:#2e6758;
  --tl-light-green-2:#245245;
  --tl-light-green-soft:#e3eee9;
  --tl-light-warm:#9a7751;
  --tl-light-warm-soft:#f4e9da;
  --tl-light-shadow:0 8px 22px rgba(34,42,38,.045);
}

html body:not(.theme-dark){
  background:var(--tl-light-bg)!important;
  color:var(--tl-light-copy)!important;
}
html body:not(.theme-dark) :is(main,.article-page,.source-playbook-page,.traffic-hub-page,.services-page,.section-page,.notes-page){
  color:var(--tl-light-copy)!important;
}
html body:not(.theme-dark) :is(h1,h2,h3,h4,strong,b,.article-title){color:var(--tl-light-ink)!important}
html body:not(.theme-dark) :is(p,li,dd,dt,small,.lead,figcaption){color:var(--tl-light-copy)!important}

/* top bar and breadcrumb/search shell */
html body:not(.theme-dark) .site-header,
html body.reference-ui-v99:not(.theme-dark) .site-header{
  background:var(--tl-light-bg-2)!important;
  border-bottom:1px solid var(--tl-light-line)!important;
  box-shadow:none!important;
}
html body.reference-ui-v99:not(.theme-dark) .ref-topbar,
html body:not(.theme-dark) .header-inner{
  background:transparent!important;
}
html body.reference-ui-v99:not(.theme-dark) :is(.ref-top-home,.ref-top-favorite,.ref-theme-button,.ref-mobile-menu,.ref-top-search, .header-about-link, .theme-toggle){
  background:var(--tl-light-surface)!important;
  border:1px solid var(--tl-light-line)!important;
  color:var(--tl-light-green)!important;
  box-shadow:none!important;
}
html body.reference-ui-v99:not(.theme-dark) :is(.ref-top-home,.ref-top-favorite,.ref-theme-button,.ref-mobile-menu,.ref-top-search):hover,
html body:not(.theme-dark) :is(.header-about-link,.theme-toggle):hover{
  background:var(--tl-light-surface-2)!important;
  border-color:var(--tl-light-line-strong)!important;
}
html body.reference-ui-v99:not(.theme-dark) :is(.ref-top-search input,.ref-top-search, .ref-topbar-crumbs, .breadcrumbs a, .breadcrumbs span){
  color:var(--tl-light-copy)!important;
}
html body.reference-ui-v99:not(.theme-dark) .ref-top-progress span,
html body:not(.theme-dark) .progress-label{color:var(--tl-light-muted)!important}

/* sidebar and footer keep the same frame logic as dark mode, only recolored */
html body:not(.theme-dark) .global-sidebar,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar{
  background:#1f5c4d!important;
  border-right:1px solid rgba(255,255,255,.10)!important;
  box-shadow:none!important;
  scrollbar-color:#6ea28d transparent!important;
}
html body:not(.theme-dark) .global-sidebar :is(.sidebar-brand,b,strong,.ref-sidebar-brand b,.ref-nav-heading,.sidebar-menu a,.sidebar-secondary a,.sidebar-foot span,.sidebar-partner-card b,.ref-partner-card b,.sidebar-mode>span){
  color:#f4faf7!important;
}
html body:not(.theme-dark) .global-sidebar :is(.sidebar-brand small,.ref-sidebar-brand small,.sidebar-secondary a,.sidebar-foot small,.sidebar-partner-card p,.ref-partner-card p){
  color:#cde2d9!important;
}
html body:not(.theme-dark) .global-sidebar :is(.sidebar-rule,.ref-sidebar-groups){border-color:rgba(255,255,255,.10)!important}
html body:not(.theme-dark) .global-sidebar :is(.sidebar-menu a,.ref-nav-group nav a){
  background:transparent!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) .global-sidebar :is(.sidebar-menu a:hover,.ref-nav-group nav a:hover){
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(255,255,255,.08)!important;
  color:#fff!important;
}
html body:not(.theme-dark) .global-sidebar :is(.sidebar-menu a.active,.sidebar-menu a.is-active,.sidebar-menu a[aria-current="page"],.ref-nav-group nav a.active,.ref-nav-group nav a[aria-current="page"]){
  background:rgba(130,216,181,.15)!important;
  border-color:rgba(130,216,181,.18)!important;
  color:#ffffff!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a:before,
html body:not(.theme-dark) .global-sidebar .nav-icon{
  background:rgba(255,255,255,.06)!important;
  color:#cfe6dd!important;
  border-color:rgba(255,255,255,.08)!important;
}
html body:not(.theme-dark) .global-sidebar>.sidebar-search input,
html body:not(.theme-dark) .global-sidebar .sidebar-search input{
  background:rgba(7,24,19,.26)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  color:#fff!important;
}
html body:not(.theme-dark) .global-sidebar>.sidebar-search input::placeholder,
html body:not(.theme-dark) .global-sidebar .sidebar-search input::placeholder{color:#c2dbd1!important}
html body:not(.theme-dark) .global-sidebar :is(.sidebar-partner-cta,.sidebar-partner-rules,.ref-partner-card){
  background:rgba(255,255,255,.04)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  color:#d5e6df!important;
}
html body:not(.theme-dark) .site-footer,
html body.reference-ui-v99:not(.theme-dark) .site-footer{
  background:#1f5c4d!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
}
html body:not(.theme-dark) .site-footer :is(h2,h3,b,strong,a,span){color:#f4faf7!important}
html body:not(.theme-dark) .site-footer :is(p,small,li){color:#cfe2db!important}

/* page areas */
html body:not(.theme-dark) main,
html body.reference-ui-v99:not(.theme-dark) main,
html body.reference-ui-v99:not(.theme-dark) :is(.source-playbook-page, main.article-page){
  background:var(--tl-light-bg)!important;
}
html body:not(.theme-dark) :is(.page-head,.section-landing-head,.home-entry-section,.home-sources-v51,.home-results,.home-welcome){
  background:var(--tl-light-bg)!important;
  border-color:var(--tl-light-line)!important;
  box-shadow:none!important;
}

/* unified surface system */
html body:not(.theme-dark) :is(
  .playbook-card,.home-source-grid>a,.home-entry-grid>a,.section-entry,.section-outcome,
  .knowledge-map>div,.library-row,.tool-card,.about-card,.service-card,.service-tool,
  .source-tool-card,.traffic-hub-basics>div,.traffic-next a,.section-feature>div,
  .section-feature>aside,.article-aside.enhanced-rail .aside-block,
  .article-aside.enhanced-rail .rail-card,.article-aside.enhanced-rail .rail-cover-card,
  .article-aside.enhanced-rail .rail-partner-card,.article-aside.enhanced-rail .rail-path-card,
  .saved-card,.related-card,.recent-home-card,.compare-card,.diagnostic-wizard-card,
  .wizard-result-card,.path-card,.audience-mode-card,.preset-card,.hero-card,
  .continue-card,.playbook-summary-card,.catalog-search,.index-panel,.tool-preview,
  .term-preview,.foundation-list,.source-wizard-card,.problem-result-links a
){
  background:var(--tl-light-surface)!important;
  border:1px solid var(--tl-light-line)!important;
  border-radius:11px!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) :is(
  .playbook-card:hover,.home-source-grid>a:hover,.home-entry-grid>a:hover,.section-entry:hover,
  .library-row:hover,.tool-card:hover,.service-card:hover,.service-tool:hover,.source-tool-card:hover,
  .traffic-next a:hover,.related-card:hover,.saved-card:hover,.recent-home-card:hover
){
  border-color:var(--tl-light-line-strong)!important;
  box-shadow:var(--tl-light-shadow)!important;
}
html body:not(.theme-dark) :is(.playbook-card,.home-source-grid>a,.home-entry-grid>a,.section-entry,.knowledge-map>div,.library-row,.service-tool,.source-tool-card,.traffic-next a):before,
html body:not(.theme-dark) .playbook-card:after,
html body:not(.theme-dark) .section-feature aside:before,
html body:not(.theme-dark) .page-head:after{display:none!important}

/* article structure mirrors dark mode */
html body:not(.theme-dark) .source-playbook-article>section,
html body:not(.theme-dark) .article-page .article>section,
html body:not(.theme-dark) .structured-article-v103>section{
  padding:18px 0!important;
  margin:0!important;
  border-top:1px solid var(--tl-light-line)!important;
  background:transparent!important;
}
html body:not(.theme-dark) .source-playbook-article>section:first-of-type,
html body:not(.theme-dark) .article-page .article>section:first-of-type{border-top:0!important}

html body:not(.theme-dark).content-system-v103 .structured-article-v103 :is(.logic-section-v103,.logic-explain-v103,.logic-action-v103,.logic-analysis-v103){
  background:var(--tl-light-surface)!important;
  border:1px solid var(--tl-light-line)!important;
  border-left-width:1px!important;
  border-radius:11px!important;
  box-shadow:none!important;
}
html body:not(.theme-dark).content-system-v103 .structured-article-v103 .logic-warning-v103{
  background:var(--tl-light-warm-soft)!important;
  border:1px solid #ddc9ab!important;
}
html body:not(.theme-dark).content-system-v103 .structured-article-v103 .logic-index-v103{
  background:var(--tl-light-green-soft)!important;
  border:1px solid #cadcd4!important;
  color:var(--tl-light-green)!important;
}

html body:not(.theme-dark) :is(.handbook-intro,.inline-note,.traffic-principle,.traffic-cost-note,.source-cost-box,.author-note,.tool-source-note,.service-inline,.service-review-note,.partner-next-step,.playbook-tips,.hero-note,.hero-route,.related-primary){
  background:var(--tl-light-surface-2)!important;
  border:1px solid var(--tl-light-line)!important;
  border-left-width:1px!important;
  border-radius:10px!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) :is(.playbook-risk,.guide-v101-callout.warning,.service-warning,.warning-note){
  background:var(--tl-light-warm-soft)!important;
  border:1px solid #ddc9ab!important;
}

/* facts, tabs, pills and forms */
html body:not(.theme-dark) .playbook-card-top{background:transparent!important;color:var(--tl-light-muted)!important}
html body:not(.theme-dark) .playbook-card-top>span:not(.playbook-hero-art){color:var(--tl-light-warm)!important}
html body:not(.theme-dark) .playbook-card-top .playbook-hero-art{
  background-color:var(--tl-light-surface-2)!important;
  border:1px solid var(--tl-light-line)!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) .playbook-card .playbook-facts>div,
html body:not(.theme-dark) .playbook-facts>div,
html body:not(.theme-dark) .source-playbook-article>.playbook-facts>div,
html body:not(.theme-dark) .source-hero-shell>.playbook-facts>div{
  background:var(--tl-light-surface-2)!important;
  border:1px solid var(--tl-light-line)!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) :is(.playbook-facts dd,.source-playbook-article>.playbook-facts dd,.source-hero-shell>.playbook-facts dd,.source-section-tabs a:first-child,.source-playbook-article a,.article-page .article a,.related-card>b,.saved-card-main>b){
  color:var(--tl-light-green)!important;
}
html body:not(.theme-dark) .source-section-tabs{border-bottom:1px solid var(--tl-light-line)!important;background:transparent!important}
html body:not(.theme-dark) .source-section-tabs a{color:var(--tl-light-copy)!important}
html body:not(.theme-dark) .source-section-tabs a span{background:var(--tl-light-surface)!important;border:1px solid var(--tl-light-line)!important;color:var(--tl-light-muted)!important}
html body:not(.theme-dark) :is(input,select,textarea,.wizard-options button,.problem-options button,.audience-mode-buttons button,.path-mode-switch button,.sidebar-mode button){
  background:var(--tl-light-surface)!important;
  border:1px solid var(--tl-light-line)!important;
  color:var(--tl-light-ink)!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) :is(input,select,textarea)::placeholder{color:var(--tl-light-muted)!important}
html body:not(.theme-dark) :is(.home-actions a,.service-tool-actions a,.service-open-link,.home-results nav a,.guide-v101-inline-link a,.problem-result-links a,.text-button){
  border-radius:8px!important;
}
html body:not(.theme-dark) :is(.home-action-primary,.ref-top-home.primary,.button-primary,.wizard-next,.problem-result-links a.primary){
  background:var(--tl-light-green)!important;
  border-color:var(--tl-light-green)!important;
  color:#fff!important;
}
html body:not(.theme-dark) :is(.home-action-partner,.button-secondary,.problem-result-links a){
  background:var(--tl-light-surface-2)!important;
  border-color:var(--tl-light-line)!important;
  color:var(--tl-light-green)!important;
}

/* tables */
html body:not(.theme-dark) .article th{background:var(--tl-light-surface-2)!important;color:var(--tl-light-ink)!important;border-color:var(--tl-light-line)!important}
html body:not(.theme-dark) .article td{background:var(--tl-light-surface)!important;border-color:var(--tl-light-line)!important;color:var(--tl-light-copy)!important}

/* home summary / search cards */
html body:not(.theme-dark) .home-welcome-summary>div{
  background:rgba(252,250,246,.94)!important;
  border:1px solid var(--tl-light-line)!important;
  border-top-width:1px!important;
}
html body:not(.theme-dark) .home-search-card{
  background:var(--tl-light-surface)!important;
  border:1px solid var(--tl-light-line-strong)!important;
  box-shadow:var(--tl-light-shadow)!important;
}
html body:not(.theme-dark) .home-source-grid small{border-top-color:var(--tl-light-line)!important;color:var(--tl-light-green)!important}

/* reference-ui article rail and content area */
html body.reference-ui-v99:not(.theme-dark) .article-layout{
  background:transparent!important;
}
html body.reference-ui-v99:not(.theme-dark) .source-playbook-article,
html body.reference-ui-v99:not(.theme-dark) .article-page .article{
  background:transparent!important;
  color:var(--tl-light-copy)!important;
}
html body.reference-ui-v99:not(.theme-dark) .source-title-copy h1,
html body.reference-ui-v99:not(.theme-dark) .source-playbook-article h2,
html body.reference-ui-v99:not(.theme-dark) .article-page .article h2{color:var(--tl-light-ink)!important}
html body.reference-ui-v99:not(.theme-dark) .source-hero-shell>.lead,
html body.reference-ui-v99:not(.theme-dark) .source-playbook-article :is(p,li,dd),
html body.reference-ui-v99:not(.theme-dark) .article-page .article :is(p,li,dd){color:var(--tl-light-copy)!important}

/* mobile keeps identical rhythm */
@media(max-width:1050px){
  html body:not(.theme-dark) .global-sidebar{box-shadow:16px 0 38px rgba(16,34,28,.22)!important}
  html body:not(.theme-dark) .playbook-card,
  html body:not(.theme-dark) .section-entry,
  html body:not(.theme-dark) .service-card{padding:17px!important}
}


/* ======================================================================
   v343 — finish the light-theme transfer:
   restore wrapper outlines/radius and roll the sidebar back one step.
   ====================================================================== */

/* Light sidebar/footer: rollback to the previous calmer version. */
html body:not(.theme-dark) .global-sidebar,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar{
  width:var(--sidebar-width)!important;
  padding:21px 16px 18px!important;
  background:#fbfaf6!important;
  border-right:1px solid #d9d4ca!important;
  box-shadow:3px 0 18px rgba(30,41,36,.025)!important;
  scrollbar-color:#d3d0c8 transparent!important;
}
html body:not(.theme-dark) .global-sidebar :is(.sidebar-brand b,.sidebar-brand span b,.sidebar-menu a,.sidebar-bottom a,.sidebar-group-title,.sidebar-partner-cta b,.sidebar-partner-cta span),
html body.reference-ui-v99:not(.theme-dark) .global-sidebar :is(.sidebar-brand b,.sidebar-brand span b,.sidebar-menu a,.sidebar-bottom a,.sidebar-group-title,.sidebar-partner-cta b,.sidebar-partner-cta span){
  color:#2f3d38!important;
}
html body:not(.theme-dark) .global-sidebar :is(.sidebar-brand small,.sidebar-bottom small,.sidebar-partner-cta small),
html body.reference-ui-v99:not(.theme-dark) .global-sidebar :is(.sidebar-brand small,.sidebar-bottom small,.sidebar-partner-cta small){
  color:#81877f!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-search input,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-search input{
  background:#fff!important;
  border:1px solid #cec8bd!important;
  color:#26342f!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-search input::placeholder,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-search input::placeholder{color:#858982!important}
html body:not(.theme-dark) .global-sidebar .sidebar-menu,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-menu{gap:2px!important}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-menu a{
  min-height:38px!important;
  padding:7px 10px!important;
  border-radius:6px!important;
  background:transparent!important;
  border:0!important;
  color:#414b46!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a:hover,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-menu a:hover{
  background:#f0eee8!important;
  color:#173f34!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a.active,
html body:not(.theme-dark) .global-sidebar .sidebar-menu a[aria-current="page"],
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-menu a.active,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-menu a[aria-current="page"]{
  background:#e8ede8!important;
  color:#173f34!important;
  font-weight:700!important;
  box-shadow:inset 3px 0 0 #315447!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a:before,
html body:not(.theme-dark) .global-sidebar .sidebar-menu a:after,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-menu a:before,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-menu a:after{display:none!important}
html body:not(.theme-dark) .global-sidebar .nav-icon,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .nav-icon{display:none!important}
html body:not(.theme-dark) .global-sidebar .sidebar-bottom,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-bottom{
  margin-top:auto!important;
  padding:16px 9px 3px!important;
  border-top:1px solid #ded9cf!important;
}
html body:not(.theme-dark) .global-sidebar :is(.sidebar-partner-cta,.sidebar-partner-rules,.ref-partner-card),
html body.reference-ui-v99:not(.theme-dark) .global-sidebar :is(.sidebar-partner-cta,.sidebar-partner-rules,.ref-partner-card){
  background:#f6f2ea!important;
  border:1px solid #ddd4c7!important;
  color:#4d5954!important;
}
html body:not(.theme-dark) .site-footer,
html body.reference-ui-v99:not(.theme-dark) .site-footer{
  background:#fbfaf6!important;
  border-top:1px solid #d9d4ca!important;
}
html body:not(.theme-dark) .site-footer :is(h2,h3,b,strong,a,span,.footer-brand),
html body.reference-ui-v99:not(.theme-dark) .site-footer :is(h2,h3,b,strong,a,span,.footer-brand){color:#2f3d38!important}
html body:not(.theme-dark) .site-footer :is(p,small,li),
html body.reference-ui-v99:not(.theme-dark) .site-footer :is(p,small,li){color:#7b817b!important}

/* Restore the wrapper frame logic in light theme. */
html body:not(.theme-dark) :is(.beginner-term-note.compact-block-v103,.section-feature.compact-block-v103,.section-outcome.compact-block-v103,.section-groups.compact-block-v103,.section-bottom-links.compact-block-v103,.source-compare-note.compact-block-v103),
html body.reference-ui-v99:not(.theme-dark) :is(.beginner-term-note.compact-block-v103,.section-feature.compact-block-v103,.section-outcome.compact-block-v103,.section-groups.compact-block-v103,.section-bottom-links.compact-block-v103,.source-compare-note.compact-block-v103){
  background:var(--tl-light-surface)!important;
  border:1px solid var(--tl-light-line)!important;
  border-radius:14px!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103{
  padding:18px 18px 22px!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group{
  padding:18px 0 0!important;
  margin:18px 0 0!important;
  border-top:1px solid var(--tl-light-line)!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group:first-child,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group:first-child{
  padding-top:0!important;
  margin-top:0!important;
  border-top:0!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group-head,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group-head{
  margin-bottom:16px!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group-head h2,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group-head h2{
  margin:0!important;
  color:var(--tl-light-ink)!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-entry,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-entry{
  border-radius:12px!important;
}
html body:not(.theme-dark) .section-bottom-links.compact-block-v103,
html body.reference-ui-v99:not(.theme-dark) .section-bottom-links.compact-block-v103{
  padding:18px!important;
}
html body:not(.theme-dark) .section-bottom-links.compact-block-v103 a,
html body.reference-ui-v99:not(.theme-dark) .section-bottom-links.compact-block-v103 a{
  background:var(--tl-light-surface)!important;
  border:1px solid var(--tl-light-line)!important;
  border-radius:10px!important;
}

/* Page head should keep the same rounded shell, not sharp edges. */
html body:not(.theme-dark) main.compact-main-v103 > section.page-head.compact-block-v103,
html body.reference-ui-v99:not(.theme-dark) main.compact-main-v103 > section.page-head.compact-block-v103{
  border:1px solid var(--tl-light-line)!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:var(--tl-light-bg)!important;
}


/* v344 — remove the inner oval from the top search field. */
html body.reference-ui-v99:not(.theme-dark) .ref-top-search input{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  padding:0!important;
}
html body.reference-ui-v99:not(.theme-dark) .ref-top-search input::-webkit-search-decoration,
html body.reference-ui-v99:not(.theme-dark) .ref-top-search input::-webkit-search-cancel-button,
html body.reference-ui-v99:not(.theme-dark) .ref-top-search input::-webkit-search-results-button,
html body.reference-ui-v99:not(.theme-dark) .ref-top-search input::-webkit-search-results-decoration{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:none!important;
}


/* v345 — remove empty desktop space inside article tables */
@media (min-width: 901px){
  html body .article table,
  html body .compare-table,
  html body .rules-table,
  html body .source-compare-table{
    display:table!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    table-layout:fixed!important;
    overflow:visible!important;
  }
  html body .article table tr,
  html body .article table thead,
  html body .article table tbody{
    width:100%!important;
  }
  html body .article table th,
  html body .article table td{
    word-break:break-word!important;
  }
  html body .article table th:first-child,
  html body .article table td:first-child{
    width:28%!important;
  }
  html body .article table th:last-child,
  html body .article table td:last-child{
    width:72%!important;
  }
}


/* v346 — light theme article layout mirrors dark theme */
html body:not(.theme-dark) :is(.article-page .article,.source-playbook-page .source-playbook-article),
html body.reference-ui-v99:not(.theme-dark) :is(.article-page .article,.source-playbook-page .source-playbook-article){
  background:var(--tl-light-surface)!important;
  background-image:none!important;
  border:1px solid var(--tl-light-line)!important;
  border-radius:14px!important;
  color:var(--tl-light-copy)!important;
  box-shadow:none!important;
  padding:28px!important;
  overflow:hidden!important;
}

html body:not(.theme-dark) :is(.article-page .article,.source-playbook-page .source-playbook-article) > :is(.academy-article-hero,.academy-content-section,.logic-section-v103,.article-depth,.related-reading,.article-exit-nav,.next-reading,.article-author),
html body.reference-ui-v99:not(.theme-dark) :is(.article-page .article,.source-playbook-page .source-playbook-article) > :is(.academy-article-hero,.academy-content-section,.logic-section-v103,.article-depth,.related-reading,.article-exit-nav,.next-reading,.article-author){
  margin-left:0!important;
  margin-right:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

html body:not(.theme-dark) :is(.source-playbook-page .source-playbook-article>section,.article-page .article>section:not(.related-reading),.academy-content-section,.logic-section-v103,.article-depth,.related-reading),
html body.reference-ui-v99:not(.theme-dark) :is(.source-playbook-page .source-playbook-article>section,.article-page .article>section:not(.related-reading),.academy-content-section,.logic-section-v103,.article-depth,.related-reading){
  background:transparent!important;
  background-image:none!important;
  margin:0!important;
  padding:24px 0!important;
  border-top:1px solid var(--tl-light-line)!important;
  border-bottom:0!important;
  border-left:0!important;
  border-right:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

html body:not(.theme-dark) :is(.source-playbook-page .source-playbook-article>section:first-of-type,.article-page .article>section:first-of-type,.article-page .article>.academy-article-hero:first-child),
html body.reference-ui-v99:not(.theme-dark) :is(.source-playbook-page .source-playbook-article>section:first-of-type,.article-page .article>section:first-of-type,.article-page .article>.academy-article-hero:first-child){
  border-top:0!important;
  padding-top:0!important;
}

/* remove per-section card styling in light article theme */
html body:not(.theme-dark).content-system-v103 .structured-article-v103 :is(.logic-section-v103,.logic-explain-v103,.logic-action-v103,.logic-analysis-v103),
html body.reference-ui-v99:not(.theme-dark).content-system-v103 .structured-article-v103 :is(.logic-section-v103,.logic-explain-v103,.logic-action-v103,.logic-analysis-v103){
  background:transparent!important;
  border:0!important;
  border-top:1px solid var(--tl-light-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:24px 0!important;
  margin:0!important;
}

html body:not(.theme-dark).content-system-v103 .structured-article-v103 > :is(.logic-section-v103,.logic-explain-v103,.logic-action-v103,.logic-analysis-v103):first-of-type,
html body.reference-ui-v99:not(.theme-dark).content-system-v103 .structured-article-v103 > :is(.logic-section-v103,.logic-explain-v103,.logic-action-v103,.logic-analysis-v103):first-of-type{
  border-top:0!important;
  padding-top:0!important;
}

/* warnings and callouts stay visually boxed, like in dark theme's logic */
html body:not(.theme-dark).content-system-v103 .structured-article-v103 .logic-warning-v103,
html body.reference-ui-v99:not(.theme-dark).content-system-v103 .structured-article-v103 .logic-warning-v103{
  margin:20px 0!important;
  padding:20px 22px!important;
  border:1px solid #ddc9ab!important;
  border-radius:12px!important;
  background:var(--tl-light-warm-soft)!important;
}

/* preserve the numbered heading badge, but without boxed section cards */
html body:not(.theme-dark).content-system-v103 .structured-article-v103 .logic-index-v103,
html body.reference-ui-v99:not(.theme-dark).content-system-v103 .structured-article-v103 .logic-index-v103{
  background:var(--tl-light-green-soft)!important;
  border:1px solid #cadcd4!important;
  border-radius:999px!important;
  color:var(--tl-light-green)!important;
}

/* inner cards inside sections still keep a subtle frame */
html body:not(.theme-dark) :is(.playbook-card,.section-entry,.section-outcome,.source-tool-card,.tool-card,.related-card,.saved-card,.library-row,.compare-card,.article-aside.enhanced-rail .aside-block),
html body.reference-ui-v99:not(.theme-dark) :is(.playbook-card,.section-entry,.section-outcome,.source-tool-card,.tool-card,.related-card,.saved-card,.library-row,.compare-card,.article-aside.enhanced-rail .aside-block){
  border-radius:12px!important;
}


/* v347 — refine pre-launch warning block in both themes */
body .playbook-risk,
body .guide-v101-callout.warning,
body .warning-note,
body .service-warning{
  display:block!important;
  margin:14px 0 18px!important;
  padding:16px 18px!important;
  border-radius:12px!important;
  border-width:1px!important;
  border-style:solid!important;
  box-shadow:none!important;
}
body .playbook-risk b,
body .guide-v101-callout.warning b,
body .warning-note b,
body .service-warning b{
  display:block!important;
  margin:0 0 8px!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body .playbook-risk p,
body .guide-v101-callout.warning p,
body .warning-note p,
body .service-warning p{
  display:block!important;
  margin:0!important;
  font-size:14px!important;
  line-height:1.62!important;
  max-width:none!important;
}

html body:not(.theme-dark) :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning){
  background:#f7f1e6!important;
  border-color:#d8c3a1!important;
}
html body:not(.theme-dark) :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) b{
  color:#8a6531!important;
}
html body:not(.theme-dark) :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) p{
  color:#4f5853!important;
}

html body.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning),
html body.reference-ui-v99.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning){
  background:#1f231f!important;
  border-color:#4d5a50!important;
}
html body.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) b,
html body.reference-ui-v99.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) b{
  color:#a6d7c6!important;
}
html body.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) p,
html body.reference-ui-v99.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) p{
  color:#c9d4ce!important;
}


/* v348 — keep hero stat blocks in one row on desktop */
@media (min-width: 901px){
  .playbook-facts,
  .source-playbook-article>.playbook-facts,
  .source-overview-metrics,
  .source-hero-stats,
  .source-summary-grid{
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(0,1fr)!important;
    grid-template-columns:none!important;
    gap:0!important;
    align-items:stretch!important;
  }
  .playbook-facts>div,
  .source-playbook-article>.playbook-facts>div,
  .source-overview-metrics>div,
  .source-hero-stats>div,
  .source-summary-grid>div{
    min-width:0!important;
    width:auto!important;
    height:100%!important;
  }
}
@media (max-width: 900px){
  .playbook-facts,
  .source-playbook-article>.playbook-facts,
  .source-overview-metrics,
  .source-hero-stats,
  .source-summary-grid{
    grid-auto-flow:row!important;
    grid-template-columns:1fr!important;
  }
}


/* v349 — unify section-group article blocks across both themes */
html body.theme-dark{
  --tl349-frame-bg:#10161d;
  --tl349-frame-line:#2b3440;
  --tl349-card-bg:#121922;
  --tl349-card-line:#30404d;
}
html body:not(.theme-dark){
  --tl349-frame-bg:#f6f2ea;
  --tl349-frame-line:#d8d0c3;
  --tl349-card-bg:#fffdf9;
  --tl349-card-line:#ddd5c8;
}
html body :is(.section-groups.compact-block-v103,.section-bottom-links.compact-block-v103,.section-feature.compact-block-v103,.section-outcome.compact-block-v103,.beginner-term-note.compact-block-v103,.source-compare-note.compact-block-v103),
html body.reference-ui-v99 :is(.section-groups.compact-block-v103,.section-bottom-links.compact-block-v103,.section-feature.compact-block-v103,.section-outcome.compact-block-v103,.beginner-term-note.compact-block-v103,.source-compare-note.compact-block-v103){
  background:var(--tl349-frame-bg)!important;
  border:1px solid var(--tl349-frame-line)!important;
  border-radius:18px!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
html body .section-groups.compact-block-v103,
html body.reference-ui-v99 .section-groups.compact-block-v103{
  padding:22px!important;
}
html body .section-bottom-links.compact-block-v103,
html body.reference-ui-v99 .section-bottom-links.compact-block-v103{
  padding:18px!important;
}
html body .section-groups.compact-block-v103 .section-group,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:22px 0 0!important;
  margin:22px 0 0!important;
  border-top:1px solid var(--tl349-frame-line)!important;
}
html body .section-groups.compact-block-v103 .section-group:first-child,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group:first-child{
  padding-top:0!important;
  margin-top:0!important;
  border-top:0!important;
}
html body .section-groups.compact-block-v103 .section-group-head,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group-head{
  margin:0 0 16px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
html body .section-groups.compact-block-v103 .section-group-head h2,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group-head h2{
  margin:0!important;
}
html body .section-groups.compact-block-v103 .section-entry-grid,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:start!important;
}
html body .section-groups.compact-block-v103 .section-entry,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry{
  background:var(--tl349-card-bg)!important;
  border:1px solid var(--tl349-card-line)!important;
  border-radius:14px!important;
  box-shadow:none!important;
  min-height:158px!important;
  padding:20px 22px!important;
  align-self:start!important;
}
html body .section-groups.compact-block-v103 .section-entry:hover,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry:hover{
  box-shadow:none!important;
  transform:none!important;
}
html body .section-groups.compact-block-v103 .section-entry b,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry b{
  display:block!important;
  margin:0 0 10px!important;
}
html body .section-groups.compact-block-v103 .section-entry p,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry p{
  margin:0 0 12px!important;
}
html body .section-groups.compact-block-v103 .section-entry span,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry span{
  display:inline-flex!important;
  align-items:center!important;
  margin-top:auto!important;
}
@media (max-width: 900px){
  html body .section-groups.compact-block-v103,
  html body.reference-ui-v99 .section-groups.compact-block-v103{padding:18px!important}
  html body .section-groups.compact-block-v103 .section-group,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{padding-top:18px!important;margin-top:18px!important}
  html body .section-groups.compact-block-v103 .section-entry-grid,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry-grid{grid-template-columns:1fr!important}
  html body .section-groups.compact-block-v103 .section-entry,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry{min-height:0!important}
}


/* v350 — align traffic hub partner note and action row */
html body.content-system-v103 .traffic-partner-step{
  margin-top:14px!important;
  margin-bottom:18px!important;
}
html body.content-system-v103 .traffic-partner-step > span,
html body.content-system-v103 .traffic-partner-step > p,
html body.content-system-v103 .traffic-partner-step > a{
  display:block!important;
}
html body.content-system-v103 .traffic-partner-step > p{
  margin:8px 0 14px!important;
}
html body.content-system-v103 .traffic-next{
  box-sizing:border-box!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  align-items:center!important;
  margin-top:0!important;
  padding:0 22px 80px!important;
}
html body.content-system-v103 .traffic-next a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  margin:0!important;
}
@media(max-width:650px){
  html body.content-system-v103 .traffic-next{
    padding:0 16px 56px!important;
  }
}

/* ======================================================================
   v351 — full Traffic Hub alignment pass + exact v279 sidebar/footer palette
   Applies to both themes; only colors differ.
   ====================================================================== */

/* ----- v279 sidebar palette: light theme ----- */
html body:not(.theme-dark) .global-sidebar,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar{
  background:#17382f!important;
  border-right:1px solid rgba(255,255,255,.08)!important;
  box-shadow:8px 0 26px rgba(18,42,35,.09)!important;
  scrollbar-color:#54786d transparent!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-brand,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-brand{
  border-bottom-color:rgba(255,255,255,.10)!important;
  color:#fff!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-brand :is(b,strong),
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-brand :is(b,strong){color:#fff!important}
html body:not(.theme-dark) .global-sidebar .sidebar-brand small,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-brand small{color:#9fbdb2!important}
html body:not(.theme-dark) .global-sidebar .sidebar-group-title,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-group-title{color:#b9d0c7!important}
html body:not(.theme-dark) .global-sidebar>.sidebar-search input,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar>.sidebar-search input{
  background:rgba(7,24,19,.28)!important;
  border-color:rgba(255,255,255,.13)!important;
  color:#fff!important;
}
html body:not(.theme-dark) .global-sidebar>.sidebar-search input::placeholder,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar>.sidebar-search input::placeholder{color:#9fb9b0!important}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-menu a{
  color:#cfe0da!important;
  background:transparent!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a:hover,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-menu a:hover{
  background:rgba(255,255,255,.07)!important;
  color:#fff!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a:is(.active,.is-active,[aria-current="page"]),
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-menu a:is(.active,.is-active,[aria-current="page"]){
  background:rgba(117,201,169,.14)!important;
  color:#fff!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) .global-sidebar>.sidebar-partner-cta,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar>.sidebar-partner-cta{
  background:rgba(86,176,141,.10)!important;
  border-color:rgba(113,208,171,.25)!important;
  color:#eaf5f0!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-bottom :is(a,small),
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-bottom :is(a,small){color:#bfd4cc!important}

/* ----- v279 sidebar palette: dark theme ----- */
html body.theme-dark .global-sidebar,
html body.reference-ui-v99.theme-dark .global-sidebar{
  background:#0B1015!important;
  border-right:1px solid #303B46!important;
  box-shadow:none!important;
  scrollbar-color:#303B46 transparent!important;
}
html body.theme-dark .global-sidebar .sidebar-brand :is(b,strong),
html body.reference-ui-v99.theme-dark .global-sidebar .sidebar-brand :is(b,strong){color:#EDF2F5!important}
html body.theme-dark .global-sidebar .sidebar-brand small,
html body.reference-ui-v99.theme-dark .global-sidebar .sidebar-brand small{color:#85939D!important}
html body.theme-dark .global-sidebar .sidebar-group-title,
html body.reference-ui-v99.theme-dark .global-sidebar .sidebar-group-title{color:#85939D!important}
html body.theme-dark .global-sidebar .sidebar-menu a,
html body.reference-ui-v99.theme-dark .global-sidebar .sidebar-menu a{color:#dce3e8!important;background:transparent!important}
html body.theme-dark .global-sidebar .sidebar-menu a:hover,
html body.reference-ui-v99.theme-dark .global-sidebar .sidebar-menu a:hover{
  background:#171E26!important;
  color:#f2f5f7!important;
}
html body.theme-dark .global-sidebar .sidebar-menu a:is(.active,.is-active,[aria-current="page"]),
html body.reference-ui-v99.theme-dark .global-sidebar .sidebar-menu a:is(.active,.is-active,[aria-current="page"]){
  background:#1C252E!important;
  color:#EDF2F5!important;
  box-shadow:inset 2px 0 0 #44B892!important;
}
html body.theme-dark .global-sidebar>.sidebar-search input,
html body.reference-ui-v99.theme-dark .global-sidebar>.sidebar-search input{
  background:#111820!important;
  border-color:#303B46!important;
  color:#EDF2F5!important;
}
html body.theme-dark .global-sidebar>.sidebar-search input::placeholder,
html body.reference-ui-v99.theme-dark .global-sidebar>.sidebar-search input::placeholder{color:#85939D!important}

/* ----- v279 footer palette ----- */
html body:not(.theme-dark) .site-footer,
html body.reference-ui-v99:not(.theme-dark) .site-footer{
  background:#0d241e!important;
  background-image:none!important;
  border-top:1px solid #23443a!important;
  color:#dce9e4!important;
}
html body.theme-dark .site-footer,
html body.reference-ui-v99.theme-dark .site-footer{
  background:#0B1015!important;
  background-image:none!important;
  border-top:1px solid #303B46!important;
  color:#B8C3CA!important;
}
html body:not(.theme-dark) .site-footer :is(.footer-brand,h2,h3,h4,b,strong){color:#f2f7f5!important}
html body:not(.theme-dark) .site-footer :is(p,span,small,li){color:#aebfba!important}
html body:not(.theme-dark) .site-footer a{color:#d6e6e0!important}
html body:not(.theme-dark) .site-footer a:hover{color:#fff!important}
html body:not(.theme-dark) .site-footer :is(.footer-bottom,.disclosure){border-color:#29483f!important}
html body.theme-dark .site-footer :is(.footer-brand,h2,h3,h4,b,strong){color:#EDF2F5!important}
html body.theme-dark .site-footer :is(p,span,small,li){color:#85939D!important}
html body.theme-dark .site-footer a{color:#B8C3CA!important}
html body.theme-dark .site-footer a:hover{color:#63C6A5!important}
html body.theme-dark .site-footer :is(.footer-bottom,.disclosure){border-color:#303B46!important}

/* ----- Traffic Hub: one geometry for both themes ----- */
html body .traffic-hub-page{
  --tl351-hub-width:1180px;
  --tl351-hub-gutter:24px;
}
html body .traffic-hub-page > .wrap,
html body .traffic-hub-page > aside.wrap,
html body .traffic-hub-page > section.wrap,
html body .traffic-hub-page > .page-head > .wrap,
html body.reference-ui-v99 .traffic-hub-page > .wrap,
html body.reference-ui-v99 .traffic-hub-page > aside.wrap,
html body.reference-ui-v99 .traffic-hub-page > section.wrap,
html body.reference-ui-v99 .traffic-hub-page > .page-head > .wrap{
  width:min(calc(100% - (var(--tl351-hub-gutter) * 2)),var(--tl351-hub-width))!important;
  max-width:var(--tl351-hub-width)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
html body .traffic-hub-page .traffic-hub-head,
html body.reference-ui-v99 .traffic-hub-page .traffic-hub-head{
  padding-top:42px!important;
  padding-bottom:34px!important;
}
html body .traffic-hub-page .traffic-hub-head > .wrap,
html body.reference-ui-v99 .traffic-hub-page .traffic-hub-head > .wrap{
  padding-left:0!important;
  padding-right:0!important;
}
html body .traffic-hub-page .traffic-hub-head h1,
html body.reference-ui-v99 .traffic-hub-page .traffic-hub-head h1{
  max-width:820px!important;
  margin-top:8px!important;
  margin-bottom:12px!important;
}
html body .traffic-hub-page .traffic-hub-head p,
html body.reference-ui-v99 .traffic-hub-page .traffic-hub-head p{
  max-width:850px!important;
  margin-bottom:0!important;
}
html body .traffic-hub-page .traffic-hub-main,
html body.reference-ui-v99 .traffic-hub-page .traffic-hub-main{
  padding:34px 0 24px!important;
}
html body .traffic-hub-page .traffic-hub-title,
html body.reference-ui-v99 .traffic-hub-page .traffic-hub-title{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:24px!important;
  margin:0 0 20px!important;
}
html body .traffic-hub-page .traffic-hub-title h2,
html body.reference-ui-v99 .traffic-hub-page .traffic-hub-title h2{
  margin:6px 0 0!important;
}
html body .traffic-hub-page .playbook-catalog-grid,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-rows:1fr!important;
  gap:16px!important;
  align-items:stretch!important;
}
html body .traffic-hub-page .playbook-card,
html body.reference-ui-v99 .traffic-hub-page .playbook-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  height:100%!important;
  padding:20px!important;
  border-radius:14px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
html body .traffic-hub-page .playbook-card > h2,
html body.reference-ui-v99 .traffic-hub-page .playbook-card > h2{
  margin-top:12px!important;
  margin-bottom:8px!important;
}
html body .traffic-hub-page .playbook-card > p,
html body.reference-ui-v99 .traffic-hub-page .playbook-card > p{
  margin:0 0 14px!important;
}
html body .traffic-hub-page .playbook-card .playbook-facts,
html body.reference-ui-v99 .traffic-hub-page .playbook-card .playbook-facts{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  margin:0 0 14px!important;
  width:100%!important;
}
html body .traffic-hub-page .playbook-card .playbook-facts > div,
html body.reference-ui-v99 .traffic-hub-page .playbook-card .playbook-facts > div{
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  padding:10px!important;
  border-radius:10px!important;
  box-sizing:border-box!important;
}
html body .traffic-hub-page .playbook-card > a:last-child,
html body.reference-ui-v99 .traffic-hub-page .playbook-card > a:last-child{
  margin-top:auto!important;
  padding-top:12px!important;
}
html body .traffic-hub-page .traffic-hub-basics,
html body.reference-ui-v99 .traffic-hub-page .traffic-hub-basics{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  padding-top:18px!important;
  padding-bottom:18px!important;
}
html body .traffic-hub-page .traffic-hub-basics > div,
html body.reference-ui-v99 .traffic-hub-page .traffic-hub-basics > div{
  min-height:104px!important;
  height:100%!important;
  padding:16px 18px!important;
  border-radius:12px!important;
  box-sizing:border-box!important;
}
html body.content-system-v103 .traffic-hub-page .traffic-partner-step,
html body.reference-ui-v99.content-system-v103 .traffic-hub-page .traffic-partner-step{
  margin-top:4px!important;
  margin-bottom:18px!important;
  padding:20px 22px!important;
  border-radius:14px!important;
  box-sizing:border-box!important;
}
html body.content-system-v103 .traffic-hub-page .traffic-partner-step > p,
html body.reference-ui-v99.content-system-v103 .traffic-hub-page .traffic-partner-step > p{
  max-width:900px!important;
  margin:8px 0 14px!important;
}
html body.content-system-v103 .traffic-hub-page .traffic-partner-step > a,
html body.reference-ui-v99.content-system-v103 .traffic-hub-page .traffic-partner-step > a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
}
html body.content-system-v103 .traffic-hub-page .traffic-next,
html body.reference-ui-v99.content-system-v103 .traffic-hub-page .traffic-next{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(180px,220px))!important;
  justify-content:start!important;
  gap:12px!important;
  margin-top:0!important;
  padding:0 22px 72px!important;
  box-sizing:border-box!important;
}
html body.content-system-v103 .traffic-hub-page .traffic-next a,
html body.reference-ui-v99.content-system-v103 .traffic-hub-page .traffic-next a{
  width:100%!important;
  min-height:40px!important;
  justify-content:center!important;
  margin:0!important;
  border-radius:9px!important;
  box-sizing:border-box!important;
}

/* Same component hierarchy, different theme colors only. */
html body:not(.theme-dark) .traffic-hub-page .playbook-card,
html body:not(.theme-dark) .traffic-hub-page .traffic-hub-basics>div,
html body:not(.theme-dark) .traffic-hub-page .traffic-next a{
  background:#fcfaf6!important;
  border-color:#d8d0c3!important;
}
html body:not(.theme-dark) .traffic-hub-page .playbook-card .playbook-facts>div{
  background:#f6f1e9!important;
  border-color:#d8d0c3!important;
}
html body.theme-dark .traffic-hub-page .playbook-card,
html body.reference-ui-v99.theme-dark .traffic-hub-page .playbook-card,
html body.theme-dark .traffic-hub-page .traffic-hub-basics>div,
html body.reference-ui-v99.theme-dark .traffic-hub-page .traffic-hub-basics>div,
html body.theme-dark .traffic-hub-page .traffic-next a,
html body.reference-ui-v99.theme-dark .traffic-hub-page .traffic-next a{
  background:#171E26!important;
  border-color:#303B46!important;
}
html body.theme-dark .traffic-hub-page .playbook-card .playbook-facts>div,
html body.reference-ui-v99.theme-dark .traffic-hub-page .playbook-card .playbook-facts>div{
  background:#111820!important;
  border-color:#303B46!important;
}

@media (max-width:1080px){
  html body .traffic-hub-page .playbook-card .playbook-facts,
  html body.reference-ui-v99 .traffic-hub-page .playbook-card .playbook-facts{
    grid-template-columns:1fr!important;
  }
}
@media (max-width:900px){
  html body .traffic-hub-page{--tl351-hub-gutter:16px}
  html body .traffic-hub-page .traffic-hub-head{padding-top:28px!important;padding-bottom:24px!important}
  html body .traffic-hub-page .traffic-hub-main{padding-top:26px!important}
  html body .traffic-hub-page .traffic-hub-title{align-items:flex-start!important;flex-direction:column!important;gap:10px!important}
  html body .traffic-hub-page .playbook-catalog-grid{grid-template-columns:1fr!important}
  html body .traffic-hub-page .traffic-hub-basics{grid-template-columns:1fr!important}
  html body.content-system-v103 .traffic-hub-page .traffic-next,
  html body.reference-ui-v99.content-system-v103 .traffic-hub-page .traffic-next{
    grid-template-columns:1fr!important;
    padding-left:0!important;
    padding-right:0!important;
    padding-bottom:54px!important;
  }
  html body.content-system-v103 .traffic-hub-page .traffic-partner-step,
  html body.reference-ui-v99.content-system-v103 .traffic-hub-page .traffic-partner-step{
    padding:18px!important;
  }
}

/* v351.1 — reference sidebar elements use the same restored v279 colors. */
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-sidebar-brand,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-sidebar-brand b,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-sidebar-brand strong{color:#fff!important}
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-sidebar-brand small{color:#9fbdb2!important}
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-nav-heading{color:#9fbdb2!important}
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-nav-group nav a{color:#cfe0da!important;background:transparent!important}
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-nav-group nav a:hover{background:rgba(255,255,255,.07)!important;color:#fff!important}
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-nav-group nav a:is(.is-active,[aria-current="page"]){
  background:rgba(117,201,169,.14)!important;
  color:#fff!important;
  box-shadow:inset 2px 0 0 #75c9a9!important;
}
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-nav-icon{color:#a8c5ba!important}
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-nav-group nav a:is(:hover,.is-active,[aria-current="page"]) .ref-nav-icon{color:#91dfc0!important}
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-partner-card{
  background:rgba(86,176,141,.10)!important;
  border-color:rgba(113,208,171,.25)!important;
  color:#fff!important;
}
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .ref-partner-card>span{color:#bfd4cc!important}

html body.reference-ui-v99.theme-dark .global-sidebar .ref-sidebar-brand,
html body.reference-ui-v99.theme-dark .global-sidebar .ref-sidebar-brand b,
html body.reference-ui-v99.theme-dark .global-sidebar .ref-sidebar-brand strong{color:#EDF2F5!important}
html body.reference-ui-v99.theme-dark .global-sidebar .ref-sidebar-brand small{color:#85939D!important}
html body.reference-ui-v99.theme-dark .global-sidebar .ref-nav-heading{color:#85939D!important}
html body.reference-ui-v99.theme-dark .global-sidebar .ref-nav-group nav a{color:#dce3e8!important;background:transparent!important}
html body.reference-ui-v99.theme-dark .global-sidebar .ref-nav-group nav a:hover{background:#171E26!important;color:#f2f5f7!important}
html body.reference-ui-v99.theme-dark .global-sidebar .ref-nav-group nav a:is(.is-active,[aria-current="page"]){
  background:#1C252E!important;
  color:#EDF2F5!important;
  box-shadow:inset 2px 0 0 #44B892!important;
}
html body.reference-ui-v99.theme-dark .global-sidebar .ref-nav-icon{color:#B8C3CA!important}
html body.reference-ui-v99.theme-dark .global-sidebar .ref-nav-group nav a:is(:hover,.is-active,[aria-current="page"]) .ref-nav-icon{color:#63C6A5!important}

/* Rows follow their own content height; no artificial empty space. */
html body .traffic-hub-page .playbook-catalog-grid,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid{grid-auto-rows:auto!important}

/* v352 — footer copy is white in both themes */
html body .site-footer,
html body.reference-ui-v99 .site-footer{
  color:#ffffff!important;
}
html body .site-footer :is(h1,h2,h3,h4,h5,h6,p,span,small,b,strong,a,li,dt,dd,.footer-brand,.footer-links a,.footer-bottom span,.footer-identity p),
html body.reference-ui-v99 .site-footer :is(h1,h2,h3,h4,h5,h6,p,span,small,b,strong,a,li,dt,dd,.footer-brand,.footer-links a,.footer-bottom span,.footer-identity p){
  color:#ffffff!important;
  opacity:1!important;
}
html body .site-footer a:hover,
html body.reference-ui-v99 .site-footer a:hover{
  color:#ffffff!important;
}

/* v353 — add breathing room inside warning/prelaunch blocks in both themes */
html body :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning){
  box-sizing:border-box!important;
  margin:14px 0 18px!important;
  padding:18px 22px!important;
  border-radius:12px!important;
}
html body :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) > :first-child{
  margin-top:0!important;
}
html body :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) > :last-child{
  margin-bottom:0!important;
}
html body :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) b{
  display:block!important;
  margin:0 0 8px!important;
}
html body :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) p,
html body :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) ul,
html body :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) ol,
html body :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning) div{
  margin:0!important;
}
html body:not(.theme-dark) :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning){
  background:#f7f1e6!important;
  border-color:#d8c3a1!important;
}
html body.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning),
html body.reference-ui-v99.theme-dark :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning){
  background:#1f231f!important;
  border-color:#4d5a50!important;
}
@media (max-width: 700px){
  html body :is(.playbook-risk,.guide-v101-callout.warning,.warning-note,.service-warning){
    padding:16px 18px!important;
  }
}

/* ======================================================================
   v141 — readable text inside source format art cards in both themes
   ====================================================================== */
html body .guide-v101-formats .guide-v101-format-art,
html body.reference-ui-v99 .guide-v101-formats .guide-v101-format-art,
html body .source-playbook-article .guide-v101-format-art{
  box-sizing:border-box!important;
  min-height:86px!important;
  height:86px!important;
  padding:14px 16px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:3px!important;
  overflow:hidden!important;
  line-height:1!important;
}
html body .guide-v101-formats .guide-v101-format-art{
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.04em!important;
}
html body .guide-v101-formats .guide-v101-format-art b,
html body.reference-ui-v99 .guide-v101-formats .guide-v101-format-art b{
  display:block!important;
  margin:0!important;
  font-size:clamp(24px,2vw,29px)!important;
  line-height:.95!important;
  letter-spacing:.01em!important;
  color:rgba(255,255,255,.88)!important;
  text-shadow:0 1px 0 rgba(0,0,0,.16)!important;
}
html body .guide-v101-formats .guide-v101-format-art{
  color:rgba(255,255,255,.96)!important;
  text-shadow:0 1px 0 rgba(0,0,0,.16)!important;
}
html body.theme-dark .guide-v101-formats .guide-v101-format-art,
html body.reference-ui-v99.theme-dark .guide-v101-formats .guide-v101-format-art{
  color:rgba(255,255,255,.97)!important;
}
html body.theme-dark .guide-v101-formats .guide-v101-format-art b,
html body.reference-ui-v99.theme-dark .guide-v101-formats .guide-v101-format-art b{
  color:rgba(255,255,255,.9)!important;
}
@media (max-width:900px){
  html body .guide-v101-formats .guide-v101-format-art,
  html body .source-playbook-article .guide-v101-format-art{
    min-height:82px!important;
    height:82px!important;
    padding:13px 14px!important;
  }
  html body .guide-v101-formats .guide-v101-format-art{
    font-size:11px!important;
  }
  html body .guide-v101-formats .guide-v101-format-art b,
  html body.reference-ui-v99 .guide-v101-formats .guide-v101-format-art b{
    font-size:22px!important;
  }
}

/* v142 — first action button in source-next-links uses white text in both themes */
html body .source-next-links a:first-child,
html body.reference-ui-v99 .source-next-links a:first-child,
html body.theme-dark .source-next-links a:first-child,
html body.reference-ui-v99.theme-dark .source-next-links a:first-child{
  color:#fff!important;
}
html body .source-next-links a:first-child:hover,
html body.reference-ui-v99 .source-next-links a:first-child:hover,
html body.theme-dark .source-next-links a:first-child:hover,
html body.reference-ui-v99.theme-dark .source-next-links a:first-child:hover{
  color:#fff!important;
}

/* v143 — remove accidental outer frames around source article hero blocks */
html body .source-playbook-page .article-layout:before,
html body.reference-ui-v99 .source-playbook-page .article-layout:before{
  display:none!important;
}

html body .source-playbook-page .source-playbook-article,
html body.reference-ui-v99 .source-playbook-page .source-playbook-article,
html body .source-playbook-page .source-hero-shell,
html body.reference-ui-v99 .source-playbook-page .source-hero-shell{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

html body .source-playbook-page .source-playbook-article,
html body.reference-ui-v99 .source-playbook-page .source-playbook-article{
  padding:0!important;
}

html body .source-playbook-page .source-hero-shell,
html body.reference-ui-v99 .source-playbook-page .source-hero-shell{
  margin:0 0 10px!important;
  padding:0 0 10px!important;
  border-bottom:0!important;
}

html body .source-playbook-page .source-section-tabs,
html body.reference-ui-v99 .source-playbook-page .source-section-tabs{
  margin-top:14px!important;
  border-top:0!important;
  border-left:0!important;
  border-right:0!important;
  box-shadow:none!important;
  outline:0!important;
}

html body .source-playbook-page .source-section-tabs a,
html body.reference-ui-v99 .source-playbook-page .source-section-tabs a{
  border-top:0!important;
  border-left:0!important;
  border-right:0!important;
  box-shadow:none!important;
}

html body.theme-dark .source-playbook-page .source-playbook-article,
html body.reference-ui-v99.theme-dark .source-playbook-page .source-playbook-article,
html body.theme-dark .source-playbook-page .source-hero-shell,
html body.reference-ui-v99.theme-dark .source-playbook-page .source-hero-shell{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

/* v144 — add a proper sidebar icon for History, matching the existing menu style */
html body .global-sidebar .sidebar-menu a[data-nav="history"]:before,
html body.reference-ui-v99 .global-sidebar .sidebar-menu a[data-nav="history"]:before{
  content:"↺"!important;
  font-size:12px!important;
  font-weight:800!important;
}

/* ======================================================================
   v145 — light theme homepage background: paper-like lab sketches
   ====================================================================== */
html body:not(.theme-dark).home-shell-v256 main.home-page,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page{
  background:#f7f3eb!important;
  background-image:none!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266{
  background:
    radial-gradient(1200px 420px at 50% 0%,rgba(255,255,255,.56),transparent 72%),
    linear-gradient(180deg,rgba(255,255,255,.34),rgba(245,240,231,.12) 24%,rgba(245,240,231,0) 48%),
    #f7f3eb!important;
  opacity:1!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  height:clamp(380px,54vw,960px)!important;
  pointer-events:none!important;
  background-image:url('/assets/home-lab-light-sketches.svg?v=20260826-1451')!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-size:min(100%,1680px) auto!important;
  opacity:.92!important;
  filter:none!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(ellipse at 16% 11%,rgba(122,136,128,.06),transparent 22%),
    radial-gradient(ellipse at 84% 19%,rgba(122,136,128,.05),transparent 19%),
    radial-gradient(ellipse at 18% 54%,rgba(122,136,128,.04),transparent 17%),
    radial-gradient(ellipse at 84% 60%,rgba(122,136,128,.04),transparent 17%),
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 30%,rgba(201,191,176,.03) 100%)!important;
}

@media (max-width:1100px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    background-size:min(100%,1460px) auto!important;
    background-position:54% top!important;
    opacity:.88!important;
  }
}
@media (max-width:900px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:clamp(300px,64vw,620px)!important;
    background-size:min(100%,1160px) auto!important;
    background-position:58% top!important;
    opacity:.78!important;
  }
}
@media (max-width:680px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:300px!important;
    background-size:min(100%,860px) auto!important;
    background-position:62% top!important;
    opacity:.68!important;
  }
}

/* ======================================================================
   v146 — exact light homepage background based on chosen Laboratory Board
   The original artwork is preserved; its center is softened into a reading
   zone so the homepage copy never sits on top of the illustrations.
   ====================================================================== */
html body:not(.theme-dark).home-shell-v256 main.home-page,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page{
  background:#f9f2e5!important;
  background-image:none!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  background:#f9f2e5!important;
  background-image:none!important;
  opacity:1!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  height:clamp(650px,58vw,900px)!important;
  pointer-events:none!important;
  background-image:url('/assets/home-lab-board-light-exact.webp?v=20260826-1461')!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-size:min(100%,1600px) auto!important;
  opacity:1!important;
  filter:none!important;
}

/* Continue the same warm laboratory-paper surface below the illustration. */
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(ellipse at 15% 24%,rgba(113,102,82,.025),transparent 24%),
    radial-gradient(ellipse at 84% 58%,rgba(113,102,82,.02),transparent 22%),
    linear-gradient(180deg,transparent 0 760px,rgba(245,235,218,.20) 1040px,rgba(249,242,229,.34) 100%)!important;
}

@media(max-width:1100px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:780px!important;
    background-size:1450px auto!important;
    background-position:center top!important;
  }
}

@media(max-width:900px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:650px!important;
    background-size:1180px auto!important;
    background-position:center top!important;
  }
}

@media(max-width:680px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:560px!important;
    background-size:1030px auto!important;
    background-position:center top!important;
  }
}

/* v161 — brighter footer text in light theme */
html body:not(.theme-dark) .site-footer,
html body.reference-ui-v99:not(.theme-dark) .site-footer{
  background:#1f5c4d!important;
}
html body:not(.theme-dark) .site-footer .footer-brand,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-brand,
html body:not(.theme-dark) .site-footer .footer-links a,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-links a,
html body:not(.theme-dark) .site-footer .footer-bottom span,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-bottom span,
html body:not(.theme-dark) .site-footer .footer-bottom small,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-bottom small{
  color:#ffffff!important;
  opacity:1!important;
}
html body:not(.theme-dark) .site-footer .footer-identity p,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-identity p{
  color:#eef7f3!important;
  opacity:1!important;
}
html body:not(.theme-dark) .site-footer a:hover,
html body.reference-ui-v99:not(.theme-dark) .site-footer a:hover{
  color:#ffffff!important;
}

/* v162 — force a visible icon for History in the left sidebar */
html body .global-sidebar .sidebar-menu a[data-nav="history"]:before,
html body.reference-ui-v99 .global-sidebar .sidebar-menu a[data-nav="history"]:before{
  content:"↺"!important;
  display:grid!important;
  place-items:center!important;
  color:#a9c7bd!important;
  font:700 11px/1 Inter,"Segoe UI",Arial,sans-serif!important;
  border:1px solid rgba(255,255,255,.14)!important;
  background:rgba(255,255,255,.035)!important;
}
html body .global-sidebar .sidebar-menu a[data-nav="history"].active:before,
html body .global-sidebar .sidebar-menu a[data-nav="history"][aria-current="page"]:before,
html body.reference-ui-v99 .global-sidebar .sidebar-menu a[data-nav="history"].active:before,
html body.reference-ui-v99 .global-sidebar .sidebar-menu a[data-nav="history"][aria-current="page"]:before{
  color:#53d8a4!important;
  background:rgba(83,216,164,.14)!important;
}

/* v163 — clean up source icon holders so logos don't sit inside an awkward inner tile */
html body .playbook-card-top,
html body.reference-ui-v99 .playbook-card-top{
  align-items:flex-start!important;
}

html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art{
  width:76px!important;
  height:76px!important;
  min-width:76px!important;
  padding:0!important;
  border-radius:18px!important;
  background-color:#f6f1e8!important;
  border:1px solid #d8d0c3!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
}

html body .playbook-card-top .playbook-hero-art::before,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before{
  position:static!important;
  inset:auto!important;
  width:48px!important;
  height:48px!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  box-shadow:none!important;
}

html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  width:62px!important;
  height:62px!important;
  min-width:62px!important;
  flex-basis:62px!important;
  border-radius:16px!important;
  background-color:#f6f1e8!important;
  border:1px solid #d8d0c3!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
}
html body main.source-playbook-page .source-hero-icon::before,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before{
  position:static!important;
  inset:auto!important;
  width:44px!important;
  height:44px!important;
  border-radius:0!important;
  background-color:transparent!important;
  box-shadow:none!important;
}
html body .source-playbook-page .source-title-row{
  grid-template-columns:62px minmax(0,1fr)!important;
  gap:14px!important;
}

html body.theme-dark .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99.theme-dark .playbook-card-top .playbook-hero-art,
html body.theme-dark main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon{
  background-color:#1a2027!important;
  border-color:#36414b!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
}

@media (max-width:900px){
  html body .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art{
    width:68px!important;
    height:68px!important;
    min-width:68px!important;
  }
  html body .playbook-card-top .playbook-hero-art::before,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before{
    width:43px!important;
    height:43px!important;
  }
  html body main.source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
    flex-basis:56px!important;
  }
  html body main.source-playbook-page .source-hero-icon::before,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before{
    width:39px!important;
    height:39px!important;
  }
  html body .source-playbook-page .source-title-row{
    grid-template-columns:56px minmax(0,1fr)!important;
    gap:12px!important;
  }
}

/* v363 — unify inner padding so outer article/frame borders do not hug content */
:root{
  --tl363-frame-pad-x:30px;
  --tl363-frame-pad-y:28px;
  --tl363-frame-pad-mobile:18px;
}

/* shared framed shells */
html body :is(.section-groups.compact-block-v103,.section-bottom-links.compact-block-v103,.section-feature.compact-block-v103,.section-outcome.compact-block-v103,.beginner-term-note.compact-block-v103,.source-compare-note.compact-block-v103),
html body.reference-ui-v99 :is(.section-groups.compact-block-v103,.section-bottom-links.compact-block-v103,.section-feature.compact-block-v103,.section-outcome.compact-block-v103,.beginner-term-note.compact-block-v103,.source-compare-note.compact-block-v103){
  padding:var(--tl363-frame-pad-y) var(--tl363-frame-pad-x)!important;
}

/* section-group pages specifically needed more air from the outer frame */
html body .section-groups.compact-block-v103 .section-group,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
  padding-top:24px!important;
  margin-top:24px!important;
}
html body .section-groups.compact-block-v103 .section-group-head,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group-head{
  margin:0 0 18px!important;
}

/* article shells keep the same look but with safer inner spacing */
html body :is(.article-page .article,.source-playbook-page .source-playbook-article),
html body.reference-ui-v99 :is(.article-page .article,.source-playbook-page .source-playbook-article){
  padding:32px!important;
}

/* framed page headers should align with article insets */
html body main.compact-main-v103 > section.page-head.compact-block-v103,
html body.reference-ui-v99 main.compact-main-v103 > section.page-head.compact-block-v103{
  padding-left:0!important;
  padding-right:0!important;
}
html body main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap,
html body.reference-ui-v99 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap{
  width:min(calc(100% - 2 * var(--tl363-frame-pad-x)),var(--content-max))!important;
}

/* generic compact framed sections on phones/tablets */
@media (max-width:900px){
  html body :is(.section-groups.compact-block-v103,.section-bottom-links.compact-block-v103,.section-feature.compact-block-v103,.section-outcome.compact-block-v103,.beginner-term-note.compact-block-v103,.source-compare-note.compact-block-v103),
  html body.reference-ui-v99 :is(.section-groups.compact-block-v103,.section-bottom-links.compact-block-v103,.section-feature.compact-block-v103,.section-outcome.compact-block-v103,.beginner-term-note.compact-block-v103,.source-compare-note.compact-block-v103){
    padding:var(--tl363-frame-pad-mobile)!important;
  }
  html body .section-groups.compact-block-v103 .section-group,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
    padding-top:18px!important;
    margin-top:18px!important;
  }
  html body :is(.article-page .article,.source-playbook-page .source-playbook-article),
  html body.reference-ui-v99 :is(.article-page .article,.source-playbook-page .source-playbook-article){
    padding:20px!important;
  }
  html body main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap,
  html body.reference-ui-v99 main.compact-main-v103 > section.page-head.compact-block-v103 > .wrap{
    width:min(calc(100% - 2 * var(--tl363-frame-pad-mobile)),var(--content-max))!important;
  }
}

/* v364 — light homepage hero fills the first screen and uses a softer, sharper background */
html body:not(.theme-dark).home-shell-v256 main.home-page,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page{
  background:#f2ecdf!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page .home-welcome{
  min-height:calc(100vh - 72px)!important;
  display:flex!important;
  align-items:center!important;
  padding:34px 0 28px!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266{
  background:#f2ecdf!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  top:0!important;
  left:0!important;
  right:0!important;
  height:calc(100vh - 72px)!important;
  min-height:760px!important;
  background-image:url('/assets/home-lab-board-light-exact.webp?v=20260826-3641')!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-size:min(100%,1700px) auto!important;
  opacity:1!important;
  filter:brightness(.9) saturate(.92)!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  background:
    linear-gradient(rgba(244,237,225,.20),rgba(244,237,225,.20)),
    radial-gradient(ellipse at 15% 24%,rgba(113,102,82,.022),transparent 24%),
    radial-gradient(ellipse at 84% 58%,rgba(113,102,82,.018),transparent 22%),
    linear-gradient(180deg,transparent 0 76vh,rgba(244,237,225,.18) calc(76vh + 80px),rgba(242,236,223,.34) 100%)!important;
}

@media (max-width:1100px){
  html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page .home-welcome{
    min-height:calc(100vh - 72px)!important;
    padding:30px 0 22px!important;
  }
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    min-height:720px!important;
    background-size:min(100%,1500px) auto!important;
    background-position:center top!important;
  }
}

@media (max-width:900px){
  html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page .home-welcome{
    min-height:auto!important;
    display:block!important;
    padding:26px 0 24px!important;
  }
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:650px!important;
    min-height:650px!important;
    background-size:1280px auto!important;
    filter:brightness(.91) saturate(.92)!important;
  }
}

@media (max-width:680px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:540px!important;
    min-height:540px!important;
    background-size:1040px auto!important;
  }
}

/* v365 — real fixes: restore footer palette, explicit History icon, and stronger outer spacing */

/* 1) Footer: return the original palette, but keep the text brighter in light theme */
html body:not(.theme-dark) .site-footer,
html body.reference-ui-v99:not(.theme-dark) .site-footer{
  background:#0d241e!important;
  background-image:none!important;
  border-top:1px solid #23443a!important;
}
html body:not(.theme-dark) .site-footer :is(.footer-brand,h2,h3,h4,b,strong,a,span),
html body.reference-ui-v99:not(.theme-dark) .site-footer :is(.footer-brand,h2,h3,h4,b,strong,a,span){
  color:#f5fbf8!important;
  opacity:1!important;
}
html body:not(.theme-dark) .site-footer :is(p,small,li),
html body.reference-ui-v99:not(.theme-dark) .site-footer :is(p,small,li){
  color:#d9eae4!important;
  opacity:1!important;
}
html body:not(.theme-dark) .site-footer a:hover,
html body.reference-ui-v99:not(.theme-dark) .site-footer a:hover{
  color:#ffffff!important;
}
html body:not(.theme-dark) .site-footer :is(.footer-bottom,.disclosure),
html body.reference-ui-v99:not(.theme-dark) .site-footer :is(.footer-bottom,.disclosure){
  border-color:#29483f!important;
}

/* 2) Sidebar History icon: use a real inline icon instead of relying only on pseudo-elements */
html body .global-sidebar .sidebar-menu a[data-nav="history"],
html body.reference-ui-v99 .global-sidebar .sidebar-menu a[data-nav="history"]{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
}
html body .global-sidebar .sidebar-menu a[data-nav="history"]:before,
html body.reference-ui-v99 .global-sidebar .sidebar-menu a[data-nav="history"]:before{
  content:none!important;
  display:none!important;
}
html body .global-sidebar .sidebar-menu a .sidebar-inline-icon-history,
html body.reference-ui-v99 .global-sidebar .sidebar-menu a .sidebar-inline-icon-history{
  flex:0 0 17px!important;
  width:17px!important;
  height:17px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:5px!important;
  background:rgba(255,255,255,.035)!important;
  color:#a9c7bd!important;
  font:700 11px/1 Inter,"Segoe UI",Arial,sans-serif!important;
  box-sizing:border-box!important;
  margin-left:1px!important;
}
html body:not(.theme-dark) .global-sidebar .sidebar-menu a .sidebar-inline-icon-history,
html body.reference-ui-v99:not(.theme-dark) .global-sidebar .sidebar-menu a .sidebar-inline-icon-history{
  border-color:rgba(255,255,255,.16)!important;
  background:rgba(255,255,255,.05)!important;
  color:#c4ded5!important;
}
html body .global-sidebar .sidebar-menu a[data-nav="history"].is-active .sidebar-inline-icon-history,
html body .global-sidebar .sidebar-menu a[data-nav="history"][aria-current="page"] .sidebar-inline-icon-history,
html body.reference-ui-v99 .global-sidebar .sidebar-menu a[data-nav="history"].is-active .sidebar-inline-icon-history,
html body.reference-ui-v99 .global-sidebar .sidebar-menu a[data-nav="history"][aria-current="page"] .sidebar-inline-icon-history{
  color:#53d8a4!important;
  background:rgba(83,216,164,.14)!important;
}

/* 3) Outer framed sections: visibly larger insets, matching article spacing */
html body .section-groups.compact-block-v103,
html body.reference-ui-v99 .section-groups.compact-block-v103,
html body .section-bottom-links.compact-block-v103,
html body.reference-ui-v99 .section-bottom-links.compact-block-v103,
html body .section-feature.compact-block-v103,
html body.reference-ui-v99 .section-feature.compact-block-v103,
html body .section-outcome.compact-block-v103,
html body.reference-ui-v99 .section-outcome.compact-block-v103,
html body .beginner-term-note.compact-block-v103,
html body.reference-ui-v99 .beginner-term-note.compact-block-v103,
html body .source-compare-note.compact-block-v103,
html body.reference-ui-v99 .source-compare-note.compact-block-v103{
  padding:30px 32px 34px!important;
}
html body .section-groups.compact-block-v103 .section-group,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
  padding-top:28px!important;
  margin-top:28px!important;
}
html body .section-groups.compact-block-v103 .section-group:first-child,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group:first-child{
  padding-top:0!important;
  margin-top:0!important;
}
html body .section-groups.compact-block-v103 .section-group-head,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group-head{
  margin:0 0 20px!important;
}
html body :is(.article-page .article,.source-playbook-page .source-playbook-article),
html body.reference-ui-v99 :is(.article-page .article,.source-playbook-page .source-playbook-article){
  padding:34px 36px!important;
}

@media (max-width:900px){
  html body .section-groups.compact-block-v103,
  html body.reference-ui-v99 .section-groups.compact-block-v103,
  html body .section-bottom-links.compact-block-v103,
  html body.reference-ui-v99 .section-bottom-links.compact-block-v103,
  html body .section-feature.compact-block-v103,
  html body.reference-ui-v99 .section-feature.compact-block-v103,
  html body .section-outcome.compact-block-v103,
  html body.reference-ui-v99 .section-outcome.compact-block-v103,
  html body .beginner-term-note.compact-block-v103,
  html body.reference-ui-v99 .beginner-term-note.compact-block-v103,
  html body .source-compare-note.compact-block-v103,
  html body.reference-ui-v99 .source-compare-note.compact-block-v103{
    padding:20px 20px 22px!important;
  }
  html body .section-groups.compact-block-v103 .section-group,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
    padding-top:18px!important;
    margin-top:18px!important;
  }
  html body :is(.article-page .article,.source-playbook-page .source-playbook-article),
  html body.reference-ui-v99 :is(.article-page .article,.source-playbook-page .source-playbook-article){
    padding:22px 20px!important;
  }
}

/* v366 — enlarge light homepage background and add a smoother lower transition */
html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page .home-welcome{
  min-height:calc(100vh - 72px)!important;
  padding:28px 0 22px!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266{
  background:#f1ebde!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  top:0!important;
  left:0!important;
  right:0!important;
  height:calc(100vh - 20px)!important;
  min-height:860px!important;
  background-image:url('/assets/home-lab-board-light-exact.webp?v=20260826-3641')!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-size:min(112%,1920px) auto!important;
  opacity:1!important;
  filter:brightness(.89) saturate(.9)!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(180deg,
      rgba(241,235,222,0) 0%,
      rgba(241,235,222,0) 58%,
      rgba(241,235,222,.10) 68%,
      rgba(241,235,222,.28) 78%,
      rgba(241,235,222,.54) 88%,
      rgba(241,235,222,.82) 95%,
      rgba(241,235,222,1) 100%),
    radial-gradient(ellipse at 15% 24%,rgba(113,102,82,.018),transparent 25%),
    radial-gradient(ellipse at 84% 58%,rgba(113,102,82,.014),transparent 23%)!important;
}

@media (max-width:1100px){
  html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page .home-welcome{
    padding:26px 0 20px!important;
  }
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    min-height:780px!important;
    background-size:min(118%,1720px) auto!important;
  }
}

@media (max-width:900px){
  html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page .home-welcome{
    min-height:auto!important;
    padding:26px 0 22px!important;
  }
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:700px!important;
    min-height:700px!important;
    background-size:1380px auto!important;
    filter:brightness(.9) saturate(.9)!important;
  }
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
    background:
      linear-gradient(180deg,
        rgba(241,235,222,0) 0%,
        rgba(241,235,222,0) 52%,
        rgba(241,235,222,.12) 64%,
        rgba(241,235,222,.34) 78%,
        rgba(241,235,222,.66) 90%,
        rgba(241,235,222,1) 100%)!important;
  }
}

@media (max-width:680px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:590px!important;
    min-height:590px!important;
    background-size:1120px auto!important;
  }
}

/* v367 — dim the light homepage background so it supports the content instead of competing with it */
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266{
  background:#efe8d9!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  filter:brightness(.82) saturate(.82) contrast(.94)!important;
  opacity:.9!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  background:
    linear-gradient(180deg,
      rgba(239,232,217,.18) 0%,
      rgba(239,232,217,.14) 18%,
      rgba(239,232,217,.12) 36%,
      rgba(239,232,217,.18) 58%,
      rgba(239,232,217,.28) 68%,
      rgba(239,232,217,.46) 78%,
      rgba(239,232,217,.68) 88%,
      rgba(239,232,217,.88) 95%,
      rgba(239,232,217,1) 100%),
    radial-gradient(ellipse at 15% 24%,rgba(113,102,82,.012),transparent 25%),
    radial-gradient(ellipse at 84% 58%,rgba(113,102,82,.01),transparent 23%)!important;
}

@media (max-width:900px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    filter:brightness(.84) saturate(.82) contrast(.95)!important;
    opacity:.88!important;
  }
}

/* v368 — section landing groups follow the cleaner logic: no giant outer slab, each logical group is its own block */
html body.theme-dark{
  --tl368-group-bg:#10161d;
  --tl368-group-line:#2b3440;
  --tl368-card-bg:#121922;
  --tl368-card-line:#30404d;
}
html body:not(.theme-dark){
  --tl368-group-bg:#f6f2ea;
  --tl368-group-line:#d8d0c3;
  --tl368-card-bg:#fffdf9;
  --tl368-card-line:#ddd5c8;
}

/* remove the big shared square around all category groups */
html body .section-groups.compact-block-v103,
html body.reference-ui-v99 .section-groups.compact-block-v103{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
  padding:0!important;
  display:grid!important;
  gap:22px!important;
}

/* each logical group becomes its own framed section, like the cleaner reference layout */
html body .section-groups.compact-block-v103 .section-group,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
  background:var(--tl368-group-bg)!important;
  border:1px solid var(--tl368-group-line)!important;
  border-radius:18px!important;
  box-shadow:none!important;
  overflow:hidden!important;
  padding:28px 30px 30px!important;
  margin:0!important;
}
html body .section-groups.compact-block-v103 .section-group:first-child,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group:first-child{
  margin:0!important;
  padding:28px 30px 30px!important;
  border-top:1px solid var(--tl368-group-line)!important;
}
html body .section-groups.compact-block-v103 .section-group + .section-group,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group + .section-group{
  margin:0!important;
}

html body .section-groups.compact-block-v103 .section-group-head,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group-head{
  margin:0 0 18px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
html body .section-groups.compact-block-v103 .section-group-head h2,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group-head h2{
  margin:0!important;
}
html body .section-groups.compact-block-v103 .section-group-head p,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group-head p{
  margin:8px 0 0!important;
}
html body .section-groups.compact-block-v103 .section-entry-grid,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  align-items:start!important;
}
html body .section-groups.compact-block-v103 .section-entry,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry{
  background:var(--tl368-card-bg)!important;
  border:1px solid var(--tl368-card-line)!important;
  border-radius:14px!important;
  box-shadow:none!important;
  min-height:158px!important;
  padding:20px 22px!important;
}
html body .section-groups.compact-block-v103 .section-entry:hover,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry:hover{
  transform:none!important;
  box-shadow:none!important;
}

/* inline note at the top of some pages should not be swallowed by a big box */
html body .section-groups.compact-block-v103 > .affiliate-inline-mention,
html body.reference-ui-v99 .section-groups.compact-block-v103 > .affiliate-inline-mention{
  background:var(--tl368-group-bg)!important;
  border:1px solid var(--tl368-group-line)!important;
  border-radius:16px!important;
  padding:18px 22px!important;
  margin:0!important;
}

@media (max-width:900px){
  html body .section-groups.compact-block-v103,
  html body.reference-ui-v99 .section-groups.compact-block-v103{
    gap:18px!important;
  }
  html body .section-groups.compact-block-v103 .section-group,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group,
  html body .section-groups.compact-block-v103 .section-group:first-child,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group:first-child{
    padding:20px 20px 22px!important;
  }
  html body .section-groups.compact-block-v103 .section-entry-grid,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry-grid{
    grid-template-columns:1fr!important;
  }
  html body .section-groups.compact-block-v103 > .affiliate-inline-mention,
  html body.reference-ui-v99 .section-groups.compact-block-v103 > .affiliate-inline-mention{
    padding:16px 18px!important;
  }
}

/* v369 — make the light homepage background a bit smaller and soften the bottom blend */
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266{
  background:#efe8d9!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  height:calc(100vh - 34px)!important;
  min-height:800px!important;
  background-position:center top!important;
  background-size:min(104%,1760px) auto!important;
  filter:brightness(.82) saturate(.82) contrast(.94)!important;
  opacity:.9!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(180deg,
      rgba(239,232,217,.12) 0%,
      rgba(239,232,217,.10) 18%,
      rgba(239,232,217,.08) 36%,
      rgba(239,232,217,.10) 54%,
      rgba(239,232,217,.18) 64%,
      rgba(239,232,217,.30) 74%,
      rgba(239,232,217,.48) 83%,
      rgba(239,232,217,.68) 90%,
      rgba(239,232,217,.84) 95%,
      rgba(239,232,217,.94) 98%,
      rgba(239,232,217,1) 100%),
    radial-gradient(ellipse at 15% 24%,rgba(113,102,82,.010),transparent 25%),
    radial-gradient(ellipse at 84% 58%,rgba(113,102,82,.008),transparent 23%)!important;
}

@media (max-width:1100px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    min-height:740px!important;
    background-size:min(108%,1600px) auto!important;
  }
}

@media (max-width:900px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:660px!important;
    min-height:660px!important;
    background-size:1280px auto!important;
    filter:brightness(.84) saturate(.82) contrast(.95)!important;
    opacity:.88!important;
  }
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
    background:
      linear-gradient(180deg,
        rgba(239,232,217,.10) 0%,
        rgba(239,232,217,.08) 24%,
        rgba(239,232,217,.08) 46%,
        rgba(239,232,217,.16) 60%,
        rgba(239,232,217,.34) 75%,
        rgba(239,232,217,.60) 88%,
        rgba(239,232,217,.86) 96%,
        rgba(239,232,217,1) 100%)!important;
  }
}

@media (max-width:680px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:560px!important;
    min-height:560px!important;
    background-size:1060px auto!important;
  }
}

/* v370 — remove the seam on the dark homepage, darken both zones, and keep one unified background tone */
html body.theme-dark.home-shell-v256 main.home-page,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page{
  background:#0c1218!important;
}

html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266{
  background:#0c1218!important;
  background-color:#0c1218!important;
}

html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  filter:brightness(.74) saturate(.78) contrast(.96)!important;
  opacity:.9!important;
}

html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(180deg,
      rgba(12,18,24,.10) 0%,
      rgba(12,18,24,.08) 24%,
      rgba(12,18,24,.08) 50%,
      rgba(12,18,24,.12) 66%,
      rgba(12,18,24,.22) 78%,
      rgba(12,18,24,.42) 88%,
      rgba(12,18,24,.72) 95%,
      rgba(12,18,24,.92) 98%,
      rgba(12,18,24,1) 100%),
    radial-gradient(ellipse at 18% 22%,rgba(255,255,255,.018),transparent 26%),
    radial-gradient(ellipse at 82% 58%,rgba(255,255,255,.014),transparent 24%)!important;
}

/* keep the content area itself on the same tone so there is no visible horizontal seam */
html body.theme-dark.home-shell-v256 main.home-page :is(.home-entry-section,.home-results,.home-next,.home-sources-v51),
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page :is(.home-entry-section,.home-results,.home-next,.home-sources-v51){
  background:transparent!important;
}

@media (max-width:900px){
  html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    filter:brightness(.76) saturate(.78) contrast(.96)!important;
    opacity:.88!important;
  }
}

/* v371 — remove the remaining seam on the light homepage while keeping the approved background size */
html body:not(.theme-dark).home-shell-v256 main.home-page,
html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page{
  background:#efe8d9!important;
}

/* keep following homepage sections on the exact same surface so no hard band appears under the hero */
html body:not(.theme-dark).home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results),
html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results){
  background:transparent!important;
  border-color:transparent!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266,
html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266{
  background:#efe8d9!important;
  background-color:#efe8d9!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after{
  background:
    linear-gradient(180deg,
      rgba(239,232,217,.10) 0%,
      rgba(239,232,217,.08) 18%,
      rgba(239,232,217,.07) 38%,
      rgba(239,232,217,.09) 56%,
      rgba(239,232,217,.16) 66%,
      rgba(239,232,217,.28) 76%,
      rgba(239,232,217,.46) 84%,
      rgba(239,232,217,.68) 90%,
      rgba(239,232,217,.86) 95%,
      rgba(239,232,217,.96) 98%,
      rgba(239,232,217,1) 100%),
    radial-gradient(ellipse at 15% 24%,rgba(113,102,82,.009),transparent 25%),
    radial-gradient(ellipse at 84% 58%,rgba(113,102,82,.007),transparent 23%)!important;
}

@media (max-width:900px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
  html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after{
    background:
      linear-gradient(180deg,
        rgba(239,232,217,.09) 0%,
        rgba(239,232,217,.08) 22%,
        rgba(239,232,217,.08) 46%,
        rgba(239,232,217,.14) 62%,
        rgba(239,232,217,.30) 78%,
        rgba(239,232,217,.56) 90%,
        rgba(239,232,217,.84) 97%,
        rgba(239,232,217,1) 100%)!important;
  }
}

/* v372 — restore the dark lower chalk background and blend it seamlessly with the upper artwork */
html body.theme-dark.home-shell-v256 main.home-page,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page{
  background:#0a0f14!important;
}

/* lower/background texture: same tone and darkness as the upper illustration */
html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266{
  background-color:#0a0f14!important;
  background-image:
    linear-gradient(rgba(5,9,13,.42),rgba(5,9,13,.42)),
    url('/assets/home-chalk-reference-soft-hq.webp?v=20260826-3721')!important;
  background-repeat:repeat!important;
  background-position:center top!important;
  background-size:1300px 1300px!important;
  opacity:1!important;
}

/* upper detailed layer: same overlay/tone; fade only the image edge into the lower texture */
html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  background-image:
    linear-gradient(rgba(5,9,13,.42),rgba(5,9,13,.42)),
    url('/assets/home-chalk-reference-soft-tall-hq.webp?v=20260826-3721')!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-size:min(100%,1672px) auto!important;
  filter:none!important;
  opacity:1!important;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 84%,rgba(0,0,0,.92) 88%,rgba(0,0,0,.72) 92%,rgba(0,0,0,.42) 96%,transparent 100%)!important;
  mask-image:linear-gradient(to bottom,#000 0%,#000 84%,rgba(0,0,0,.92) 88%,rgba(0,0,0,.72) 92%,rgba(0,0,0,.42) 96%,transparent 100%)!important;
}

/* no extra full-page gradient changing brightness between upper and lower zones */
html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  content:none!important;
  display:none!important;
}

html body.theme-dark.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results,.home-next),
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results,.home-next){
  background:transparent!important;
  border-color:transparent!important;
}

@media (max-width:900px){
  html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266{
    background-size:1040px 1040px!important;
  }
  html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    background-size:min(100%,1080px) auto!important;
  }
}
@media (max-width:680px){
  html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266{
    background-size:820px 820px!important;
  }
  html body.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    background-size:min(100%,820px) auto!important;
  }
}

/* v373 — improve readability of light-theme hero copy over the laboratory background */
html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome-copy,
html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page .home-welcome-copy{
  position:relative!important;
  z-index:1!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome h1,
html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page .home-welcome h1{
  color:#143228!important;
  text-shadow:0 1px 0 rgba(255,255,255,.42)!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-intro-copy,
html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page .home-intro-copy{
  color:#4c5953!important;
  text-shadow:0 1px 0 rgba(255,255,255,.36)!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page .home-lead,
html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page .home-lead{
  color:#54635c!important;
  text-shadow:0 1px 0 rgba(255,255,255,.34)!important;
}

/* v375 — shift the hero copy and learning cards slightly to the right */
html body.home-shell-v256 main.home-page .home-welcome-copy,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy{
  margin-left:18px!important;
}

@media (max-width:1100px){
  html body.home-shell-v256 main.home-page .home-welcome-copy,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy{
    margin-left:12px!important;
  }
}

@media (max-width:900px){
  html body.home-shell-v256 main.home-page .home-welcome-copy,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy{
    margin-left:0!important;
  }
}

/* v376 — restore the original light-home artwork brightness/colors.
   De-emphasize it by softening fine detail instead of darkening it. */
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266{
  background:#efe8d9!important;
  background-color:#efe8d9!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  /* keep the approved size and the image's native brightness/saturation */
  height:calc(100vh - 34px)!important;
  min-height:800px!important;
  background-position:center top!important;
  background-size:min(104%,1760px) auto!important;
  opacity:1!important;
  filter:blur(1.25px)!important;
  transform:scale(1.004)!important;
  transform-origin:center top!important;
}

/* Do not wash out the whole artwork. Only fade its very bottom into the page tone. */
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,
    rgba(239,232,217,0) 0%,
    rgba(239,232,217,0) 72%,
    rgba(239,232,217,.05) 78%,
    rgba(239,232,217,.16) 84%,
    rgba(239,232,217,.34) 89%,
    rgba(239,232,217,.58) 94%,
    rgba(239,232,217,.82) 97%,
    rgba(239,232,217,1) 100%)!important;
}

@media (max-width:1100px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    min-height:740px!important;
    background-size:min(108%,1600px) auto!important;
    filter:blur(1.1px)!important;
  }
}

@media (max-width:900px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:660px!important;
    min-height:660px!important;
    background-size:1280px auto!important;
    opacity:1!important;
    filter:blur(.9px)!important;
    transform:scale(1.003)!important;
  }
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
    background:linear-gradient(180deg,
      rgba(239,232,217,0) 0%,
      rgba(239,232,217,0) 68%,
      rgba(239,232,217,.08) 76%,
      rgba(239,232,217,.26) 84%,
      rgba(239,232,217,.54) 91%,
      rgba(239,232,217,.82) 96%,
      rgba(239,232,217,1) 100%)!important;
  }
}

@media (max-width:680px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    height:560px!important;
    min-height:560px!important;
    background-size:1060px auto!important;
  }
}

/* v377 — smoother bottom fade for the light homepage artwork */
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  background:linear-gradient(180deg,
    rgba(239,232,217,0) 0%,
    rgba(239,232,217,0) 64%,
    rgba(239,232,217,.02) 70%,
    rgba(239,232,217,.06) 76%,
    rgba(239,232,217,.12) 81%,
    rgba(239,232,217,.22) 86%,
    rgba(239,232,217,.36) 90%,
    rgba(239,232,217,.54) 94%,
    rgba(239,232,217,.74) 97%,
    rgba(239,232,217,.9) 99%,
    rgba(239,232,217,1) 100%)!important;
}

@media (max-width:900px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
    background:linear-gradient(180deg,
      rgba(239,232,217,0) 0%,
      rgba(239,232,217,0) 60%,
      rgba(239,232,217,.03) 68%,
      rgba(239,232,217,.09) 76%,
      rgba(239,232,217,.2) 84%,
      rgba(239,232,217,.38) 90%,
      rgba(239,232,217,.62) 95%,
      rgba(239,232,217,.86) 98%,
      rgba(239,232,217,1) 100%)!important;
  }
}

/* v378 — make the light homepage image dissolve into the page itself.
   The fade is applied to the artwork layer, not painted over it, so no horizontal seam remains. */
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266{
  background:#efe8d9!important;
  background-color:#efe8d9!important;
}

html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
  /* keep the approved size/position, but fade the actual image alpha at the bottom */
  -webkit-mask-image:linear-gradient(to bottom,
    #000 0%,
    #000 66%,
    rgba(0,0,0,.98) 70%,
    rgba(0,0,0,.92) 75%,
    rgba(0,0,0,.82) 80%,
    rgba(0,0,0,.68) 85%,
    rgba(0,0,0,.50) 90%,
    rgba(0,0,0,.30) 94%,
    rgba(0,0,0,.14) 97%,
    rgba(0,0,0,.05) 99%,
    transparent 100%)!important;
  mask-image:linear-gradient(to bottom,
    #000 0%,
    #000 66%,
    rgba(0,0,0,.98) 70%,
    rgba(0,0,0,.92) 75%,
    rgba(0,0,0,.82) 80%,
    rgba(0,0,0,.68) 85%,
    rgba(0,0,0,.50) 90%,
    rgba(0,0,0,.30) 94%,
    rgba(0,0,0,.14) 97%,
    rgba(0,0,0,.05) 99%,
    transparent 100%)!important;
  -webkit-mask-repeat:no-repeat!important;
  mask-repeat:no-repeat!important;
  -webkit-mask-size:100% 100%!important;
  mask-size:100% 100%!important;
}

/* remove the old overlay fade; it was creating a visible band */
html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::after,
html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
  content:none!important;
  display:none!important;
  background:none!important;
}

/* the following homepage sections remain on the same exact base tone */
html body:not(.theme-dark).home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results),
html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results){
  background:transparent!important;
  border-color:transparent!important;
}

@media (max-width:900px){
  html body:not(.theme-dark).home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body:not(.theme-dark).reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before{
    -webkit-mask-image:linear-gradient(to bottom,
      #000 0%,
      #000 60%,
      rgba(0,0,0,.96) 68%,
      rgba(0,0,0,.82) 76%,
      rgba(0,0,0,.60) 84%,
      rgba(0,0,0,.36) 91%,
      rgba(0,0,0,.16) 96%,
      transparent 100%)!important;
    mask-image:linear-gradient(to bottom,
      #000 0%,
      #000 60%,
      rgba(0,0,0,.96) 68%,
      rgba(0,0,0,.82) 76%,
      rgba(0,0,0,.60) 84%,
      rgba(0,0,0,.36) 91%,
      rgba(0,0,0,.16) 96%,
      transparent 100%)!important;
  }
}


/* v379 — restore inner padding in pre-launch warning blocks on source pages */
html body .source-playbook-page .playbook-risk,
html body.reference-ui-v99 .source-playbook-page .playbook-risk{
  margin:14px 0 16px!important;
  padding:18px 22px!important;
  border-radius:12px!important;
  border-width:1px!important;
  border-style:solid!important;
  box-sizing:border-box!important;
}
html body:not(.theme-dark) .source-playbook-page .playbook-risk,
html body.reference-ui-v99:not(.theme-dark) .source-playbook-page .playbook-risk{
  background:#f7f1e6!important;
  border-color:#d8c3a1!important;
}
html body.theme-dark .source-playbook-page .playbook-risk,
html body.reference-ui-v99.theme-dark .source-playbook-page .playbook-risk{
  background:#1f231f!important;
  border-color:#4d5a50!important;
}
html body .source-playbook-page .playbook-risk b,
html body.reference-ui-v99 .source-playbook-page .playbook-risk b{
  display:block!important;
  margin:0 0 8px!important;
}
html body .source-playbook-page .playbook-risk p,
html body.reference-ui-v99 .source-playbook-page .playbook-risk p{
  display:block!important;
  margin:0!important;
}
@media (max-width:700px){
  html body .source-playbook-page .playbook-risk,
  html body.reference-ui-v99 .source-playbook-page .playbook-risk{
    padding:16px 18px!important;
  }
}


/* v380 — remove the leftover outer background layer on grouped section landing blocks */
html body .section-groups.compact-block-v103,
html body.reference-ui-v99 .section-groups.compact-block-v103{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  overflow:visible!important;
  display:grid!important;
  gap:28px!important;
}
html body .section-groups.compact-block-v103 .section-group,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
}
html body .section-groups.compact-block-v103 .section-group:first-child,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group:first-child,
html body .section-groups.compact-block-v103 .section-group + .section-group,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group + .section-group{
  border-top:0!important;
  padding-top:0!important;
  margin-top:0!important;
}
html body .section-groups.compact-block-v103 .section-group-head,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group-head{
  margin:0 0 18px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
html body .section-bottom-links.compact-block-v103,
html body.reference-ui-v99 .section-bottom-links.compact-block-v103{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  margin-top:8px!important;
}
html body .section-bottom-links.compact-block-v103 .section-links,
html body.reference-ui-v99 .section-bottom-links.compact-block-v103 .section-links{
  margin:0!important;
  padding:0!important;
}
@media (max-width:900px){
  html body .section-groups.compact-block-v103,
  html body.reference-ui-v99 .section-groups.compact-block-v103{gap:22px!important;}
}


/* v381 — History uses the same text palette and brightness as the rest of the site */
html body:not(.theme-dark) .history-page .saved-block-head h2,
html body.reference-ui-v99:not(.theme-dark) .history-page .saved-block-head h2,
html body:not(.theme-dark) .history-page .saved-card-main>b,
html body.reference-ui-v99:not(.theme-dark) .history-page .saved-card-main>b,
html body:not(.theme-dark) .history-page .saved-empty b,
html body.reference-ui-v99:not(.theme-dark) .history-page .saved-empty b{
  color:var(--tl-light-ink)!important;
}
html body:not(.theme-dark) .history-page .saved-block-head span,
html body.reference-ui-v99:not(.theme-dark) .history-page .saved-block-head span{
  color:var(--tl-light-muted)!important;
}
html body:not(.theme-dark) .history-page .saved-block-head span b,
html body.reference-ui-v99:not(.theme-dark) .history-page .saved-block-head span b{
  color:var(--tl-light-ink)!important;
}
html body:not(.theme-dark) .history-page .saved-card-main>span,
html body.reference-ui-v99:not(.theme-dark) .history-page .saved-card-main>span,
html body:not(.theme-dark) .history-page .saved-card-main small,
html body.reference-ui-v99:not(.theme-dark) .history-page .saved-card-main small{
  color:var(--tl-light-muted)!important;
}
html body:not(.theme-dark) .history-page .saved-empty p,
html body.reference-ui-v99:not(.theme-dark) .history-page .saved-empty p{
  color:var(--tl-light-copy)!important;
}
html body:not(.theme-dark) .history-page .saved-empty a,
html body.reference-ui-v99:not(.theme-dark) .history-page .saved-empty a{
  color:var(--tl-light-green)!important;
}

html body.theme-dark .history-page .saved-block-head h2,
html body.reference-ui-v99.theme-dark .history-page .saved-block-head h2,
html body.theme-dark .history-page .saved-card-main>b,
html body.reference-ui-v99.theme-dark .history-page .saved-card-main>b,
html body.theme-dark .history-page .saved-empty b,
html body.reference-ui-v99.theme-dark .history-page .saved-empty b{
  color:#edf1f4!important;
}
html body.theme-dark .history-page .saved-block-head span,
html body.reference-ui-v99.theme-dark .history-page .saved-block-head span,
html body.theme-dark .history-page .saved-card-main>span,
html body.reference-ui-v99.theme-dark .history-page .saved-card-main>span,
html body.theme-dark .history-page .saved-card-main small,
html body.reference-ui-v99.theme-dark .history-page .saved-card-main small{
  color:#8995a0!important;
}
html body.theme-dark .history-page .saved-block-head span b,
html body.reference-ui-v99.theme-dark .history-page .saved-block-head span b{
  color:#d6dde4!important;
}
html body.theme-dark .history-page .saved-empty p,
html body.reference-ui-v99.theme-dark .history-page .saved-empty p{
  color:#b8c1c9!important;
}
html body.theme-dark .history-page .saved-empty a,
html body.reference-ui-v99.theme-dark .history-page .saved-empty a{
  color:#d6dde4!important;
}


/* v383 — prettier outlines for source icons */
html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art,
html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  position:relative!important;
  overflow:hidden!important;
}
html body:not(.theme-dark) .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99:not(.theme-dark) .playbook-card-top .playbook-hero-art,
html body:not(.theme-dark) main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99:not(.theme-dark) main.source-playbook-page .source-hero-icon{
  background:linear-gradient(180deg,#fbf7ef 0%,#f3ebdf 100%)!important;
  border:1px solid #d2c4b1!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 6px 14px rgba(62,45,18,.06)!important;
}
html body.theme-dark .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99.theme-dark .playbook-card-top .playbook-hero-art,
html body.theme-dark main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon{
  background:linear-gradient(180deg,#1f2730 0%,#171d24 100%)!important;
  border:1px solid #3c4853!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 18px rgba(0,0,0,.18)!important;
}
html body .playbook-card-top .playbook-hero-art::after,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::after,
html body main.source-playbook-page .source-hero-icon::after,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::after{
  content:""!important;
  position:absolute!important;
  inset:7px!important;
  border-radius:12px!important;
  pointer-events:none!important;
  box-sizing:border-box!important;
}
html body:not(.theme-dark) .playbook-card-top .playbook-hero-art::after,
html body.reference-ui-v99:not(.theme-dark) .playbook-card-top .playbook-hero-art::after,
html body:not(.theme-dark) main.source-playbook-page .source-hero-icon::after,
html body.reference-ui-v99:not(.theme-dark) main.source-playbook-page .source-hero-icon::after{
  border:1px solid rgba(186,168,142,.55)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important;
}
html body.theme-dark .playbook-card-top .playbook-hero-art::after,
html body.reference-ui-v99.theme-dark .playbook-card-top .playbook-hero-art::after,
html body.theme-dark main.source-playbook-page .source-hero-icon::after,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon::after{
  border:1px solid rgba(92,108,121,.48)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
@media (max-width:900px){
  html body .playbook-card-top .playbook-hero-art::after,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::after,
  html body main.source-playbook-page .source-hero-icon::after,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::after{
    inset:6px!important;
    border-radius:10px!important;
  }
}


/* v384 — highlight the hero copy as a separate elegant block */
html body.home-shell-v256 main.home-page .home-welcome-copy,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy{
  position:relative!important;
  z-index:1!important;
  padding:34px 36px 30px!important;
  border-radius:30px!important;
  overflow:hidden!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome-copy,
html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page .home-welcome-copy{
  background:linear-gradient(180deg,rgba(251,248,241,.90) 0%,rgba(246,239,229,.82) 100%)!important;
  border:1px solid rgba(214,201,179,.78)!important;
  box-shadow:0 18px 40px rgba(64,49,22,.08), inset 0 1px 0 rgba(255,255,255,.75)!important;
  backdrop-filter:blur(4px)!important;
}
html body.theme-dark.home-shell-v256 main.home-page .home-welcome-copy,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-welcome-copy{
  background:linear-gradient(180deg,rgba(13,19,26,.78) 0%,rgba(10,16,23,.72) 100%)!important;
  border:1px solid rgba(48,63,75,.92)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.03)!important;
  backdrop-filter:blur(4px)!important;
}
html body.home-shell-v256 main.home-page .home-welcome-copy::before,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:inherit!important;
  pointer-events:none!important;
}
html body:not(.theme-dark).home-shell-v256 main.home-page .home-welcome-copy::before,
html body.reference-ui-v99:not(.theme-dark).home-shell-v256 main.home-page .home-welcome-copy::before{
  background:radial-gradient(circle at top left,rgba(255,255,255,.38),transparent 34%), radial-gradient(circle at bottom right,rgba(214,198,167,.18),transparent 36%)!important;
}
html body.theme-dark.home-shell-v256 main.home-page .home-welcome-copy::before,
html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-welcome-copy::before{
  background:radial-gradient(circle at top left,rgba(255,255,255,.05),transparent 32%), radial-gradient(circle at bottom right,rgba(36,59,71,.22),transparent 38%)!important;
}
html body.home-shell-v256 main.home-page .home-welcome-copy > *,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy > *{
  position:relative!important;
  z-index:1!important;
}
html body.home-shell-v256 main.home-page .home-welcome-summary,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary{
  margin:28px 0 0!important;
}
html body.home-shell-v256 main.home-page .home-welcome h1,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome h1{
  margin:0 0 16px!important;
}
html body.home-shell-v256 main.home-page .home-intro-copy,
html body.reference-ui-v99.home-shell-v256 main.home-page .home-intro-copy{
  margin:0!important;
}
@media (max-width:1100px){
  html body.home-shell-v256 main.home-page .home-welcome-copy,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy{
    padding:30px 30px 26px!important;
    border-radius:26px!important;
  }
}
@media (max-width:900px){
  html body.home-shell-v256 main.home-page .home-welcome-copy,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy{
    padding:22px 20px 20px!important;
    border-radius:22px!important;
  }
}


/* v385 — fix multi-column article tables: no collapsed middle columns or letter-by-letter wrapping */
@media (min-width:901px){
  html body .article table,
  html body.reference-ui-v99 .article table{
    display:table!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    table-layout:fixed!important;
    overflow:visible!important;
  }

  html body .article table :is(th,td),
  html body.reference-ui-v99 .article table :is(th,td){
    min-width:0!important;
    width:auto!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
    white-space:normal!important;
  }

  /* two-column tables */
  html body .article table:not(:has(tr > :nth-child(3))) :is(th,td):first-child,
  html body.reference-ui-v99 .article table:not(:has(tr > :nth-child(3))) :is(th,td):first-child{
    width:32%!important;
  }
  html body .article table:not(:has(tr > :nth-child(3))) :is(th,td):last-child,
  html body.reference-ui-v99 .article table:not(:has(tr > :nth-child(3))) :is(th,td):last-child{
    width:68%!important;
  }

  /* three-column tables */
  html body .article table:has(tr > :nth-child(3)) :is(th,td):nth-child(1),
  html body.reference-ui-v99 .article table:has(tr > :nth-child(3)) :is(th,td):nth-child(1){
    width:28%!important;
  }
  html body .article table:has(tr > :nth-child(3)) :is(th,td):nth-child(2),
  html body.reference-ui-v99 .article table:has(tr > :nth-child(3)) :is(th,td):nth-child(2){
    width:34%!important;
  }
  html body .article table:has(tr > :nth-child(3)) :is(th,td):nth-child(3),
  html body.reference-ui-v99 .article table:has(tr > :nth-child(3)) :is(th,td):nth-child(3){
    width:38%!important;
  }
}

@media (max-width:900px){
  html body .article table,
  html body.reference-ui-v99 .article table{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body .article table :is(th,td),
  html body.reference-ui-v99 .article table :is(th,td){
    min-width:150px!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    white-space:normal!important;
  }
}


/* v386 — clean single-outline source icons without clipping or duplicate layers */
html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art,
html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
html body .playbook-card-top .playbook-hero-art::before,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before,
html body .playbook-card-top .playbook-hero-art::after,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::after,
html body main.source-playbook-page .source-hero-icon::before,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before,
html body main.source-playbook-page .source-hero-icon::after,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::after{
  content:none!important;
  display:none!important;
}
html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art{
  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  padding:12px!important;
  border-radius:16px!important;
  background-color:#fbf7ef!important;
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-size:46px 46px!important;
  border:1px solid #d7c9b6!important;
  box-shadow:0 6px 16px rgba(69,51,20,.06)!important;
}
html body.theme-dark .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99.theme-dark .playbook-card-top .playbook-hero-art{
  background-color:#1a2129!important;
  border-color:#3a4652!important;
  box-shadow:0 8px 18px rgba(0,0,0,.18)!important;
}
html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  text-indent:-9999px!important;
  font-size:0!important;
  color:transparent!important;
  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  flex-basis:72px!important;
  padding:12px!important;
  border-radius:16px!important;
  background-color:#fbf7ef!important;
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-size:46px 46px!important;
  border:1px solid #d7c9b6!important;
  box-shadow:0 6px 16px rgba(69,51,20,.06)!important;
}
html body.theme-dark main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon{
  background-color:#1a2129!important;
  border-color:#3a4652!important;
  box-shadow:0 8px 18px rgba(0,0,0,.18)!important;
}
@media (max-width:900px){
  html body .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art{
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    padding:10px!important;
    border-radius:14px!important;
    background-size:40px 40px!important;
  }
  html body main.source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    flex-basis:64px!important;
    padding:10px!important;
    border-radius:14px!important;
    background-size:40px 40px!important;
  }
  html body main.source-playbook-page .source-title-row,
  html body.reference-ui-v99 main.source-playbook-page .source-title-row{
    grid-template-columns:64px minmax(0,1fr)!important;
    gap:14px!important;
  }
}
@media (max-width:430px){
  html body .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    padding:9px!important;
    border-radius:13px!important;
    background-size:36px 36px!important;
  }
  html body main.source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    flex-basis:58px!important;
    padding:9px!important;
    border-radius:13px!important;
    background-size:36px 36px!important;
  }
  html body main.source-playbook-page .source-title-row,
  html body.reference-ui-v99 main.source-playbook-page .source-title-row{
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:12px!important;
  }
}


/* v387 — restore horizontal breathing room for grouped section landings without bringing back the removed extra slab */
html body .section-groups.compact-block-v103,
html body.reference-ui-v99 .section-groups.compact-block-v103{
  padding-left:18px!important;
  padding-right:18px!important;
  padding-top:0!important;
  padding-bottom:0!important;
}
html body .section-groups.compact-block-v103 .section-group-head,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group-head{
  margin:0 0 18px!important;
}
@media (max-width:900px){
  html body .section-groups.compact-block-v103,
  html body.reference-ui-v99 .section-groups.compact-block-v103{
    padding-left:16px!important;
    padding-right:16px!important;
  }
}
@media (max-width:640px){
  html body .section-groups.compact-block-v103,
  html body.reference-ui-v99 .section-groups.compact-block-v103{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}


/* v388 — widen service/compare canvases and add more breathing room inside the outer frame */
@media (min-width: 901px){
  html body.content-system-v103 main.services-page > .wrap,
  html body.content-system-v103 main.compact-main-v103 > .source-compare-page,
  html body.content-system-v103 main.compact-main-v103 > .wrap.source-compare-explain,
  html body.content-system-v103 main.compact-main-v103 > .wrap.source-compare-note{
    width:min(calc(100% - 40px), 1288px)!important;
    max-width:1288px!important;
  }
  html body .wrap.services-intro.compact-block-v103,
  html body .wrap.service-workflow.compact-block-v103,
  html body .wrap.service-start-kit.compact-block-v103,
  html body .source-compare-page.compact-block-v103,
  html body .wrap.source-compare-explain.compact-block-v103,
  html body .wrap.source-compare-note.compact-block-v103,
  html body.reference-ui-v99 .wrap.services-intro.compact-block-v103,
  html body.reference-ui-v99 .wrap.service-workflow.compact-block-v103,
  html body.reference-ui-v99 .wrap.service-start-kit.compact-block-v103,
  html body.reference-ui-v99 .source-compare-page.compact-block-v103,
  html body.reference-ui-v99 .wrap.source-compare-explain.compact-block-v103,
  html body.reference-ui-v99 .wrap.source-compare-note.compact-block-v103{
    padding-left:34px!important;
    padding-right:34px!important;
  }
  html body .service-tool-grid{max-width:100%!important;}
  html body .source-compare-picker,
  html body .source-compare-table{width:100%!important;}
}
@media (max-width: 900px){
  html body .wrap.services-intro.compact-block-v103,
  html body .wrap.service-workflow.compact-block-v103,
  html body .wrap.service-start-kit.compact-block-v103,
  html body .source-compare-page.compact-block-v103,
  html body .wrap.source-compare-explain.compact-block-v103,
  html body .wrap.source-compare-note.compact-block-v103,
  html body.reference-ui-v99 .wrap.services-intro.compact-block-v103,
  html body.reference-ui-v99 .wrap.service-workflow.compact-block-v103,
  html body.reference-ui-v99 .wrap.service-start-kit.compact-block-v103,
  html body.reference-ui-v99 .source-compare-page.compact-block-v103,
  html body.reference-ui-v99 .wrap.source-compare-explain.compact-block-v103,
  html body.reference-ui-v99 .wrap.source-compare-note.compact-block-v103{
    padding-left:22px!important;
    padding-right:22px!important;
  }
}
@media (max-width: 640px){
  html body .wrap.services-intro.compact-block-v103,
  html body .wrap.service-workflow.compact-block-v103,
  html body .wrap.service-start-kit.compact-block-v103,
  html body .source-compare-page.compact-block-v103,
  html body .wrap.source-compare-explain.compact-block-v103,
  html body .wrap.source-compare-note.compact-block-v103,
  html body.reference-ui-v99 .wrap.services-intro.compact-block-v103,
  html body.reference-ui-v99 .wrap.service-workflow.compact-block-v103,
  html body.reference-ui-v99 .wrap.service-start-kit.compact-block-v103,
  html body.reference-ui-v99 .source-compare-page.compact-block-v103,
  html body.reference-ui-v99 .wrap.source-compare-explain.compact-block-v103,
  html body.reference-ui-v99 .wrap.source-compare-note.compact-block-v103{
    padding-left:16px!important;
    padding-right:16px!important;
  }
}


/* v389 — remove the extra outer frame/background on all traffic-source pages */
html body main.source-playbook-page,
html body.reference-ui-v99 main.source-playbook-page,
html body main.source-playbook-page .article-layout,
html body.reference-ui-v99 main.source-playbook-page .article-layout,
html body main.source-playbook-page .source-playbook-article,
html body.reference-ui-v99 main.source-playbook-page .source-playbook-article,
html body main.source-playbook-page .source-playbook-article > header.source-hero-shell,
html body.reference-ui-v99 main.source-playbook-page .source-playbook-article > header.source-hero-shell{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
html body main.source-playbook-page .article-layout:before,
html body.reference-ui-v99 main.source-playbook-page .article-layout:before,
html body main.source-playbook-page .source-playbook-article:before,
html body main.source-playbook-page .source-playbook-article:after,
html body main.source-playbook-page .source-hero-shell:before,
html body main.source-playbook-page .source-hero-shell:after,
html body.reference-ui-v99 main.source-playbook-page .source-playbook-article:before,
html body.reference-ui-v99 main.source-playbook-page .source-playbook-article:after,
html body.reference-ui-v99 main.source-playbook-page .source-hero-shell:before,
html body.reference-ui-v99 main.source-playbook-page .source-hero-shell:after{
  content:none!important;
  display:none!important;
}
html body main.source-playbook-page .source-playbook-article,
html body.reference-ui-v99 main.source-playbook-page .source-playbook-article{
  padding:0!important;
}
html body main.source-playbook-page .source-hero-shell,
html body.reference-ui-v99 main.source-playbook-page .source-hero-shell{
  margin:0 0 12px!important;
  padding:0 0 12px!important;
  border-bottom:0!important;
}
html body main.source-playbook-page .source-section-tabs,
html body.reference-ui-v99 main.source-playbook-page .source-section-tabs{
  background:transparent!important;
  border-top:0!important;
  border-left:0!important;
  border-right:0!important;
  outline:0!important;
  box-shadow:none!important;
}
html body.theme-dark main.source-playbook-page,
html body.reference-ui-v99.theme-dark main.source-playbook-page,
html body.theme-dark main.source-playbook-page .article-layout,
html body.reference-ui-v99.theme-dark main.source-playbook-page .article-layout,
html body.theme-dark main.source-playbook-page .source-playbook-article,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-playbook-article,
html body.theme-dark main.source-playbook-page .source-playbook-article > header.source-hero-shell,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-playbook-article > header.source-hero-shell{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}


/* v390 — section groups should use outlined blocks, not heavy background slabs */
html body .section-groups.compact-block-v103,
html body.reference-ui-v99 .section-groups.compact-block-v103{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  padding:0!important;
}
html body .section-groups.compact-block-v103 .section-group,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
  background:transparent!important;
  border:1px solid var(--tl349-frame-line,#d8d0c3)!important;
  border-radius:18px!important;
  box-shadow:none!important;
  padding:24px 28px 28px!important;
  margin:0 0 18px!important;
}
html body .section-groups.compact-block-v103 .section-group:last-child,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group:last-child{
  margin-bottom:0!important;
}
html body .section-groups.compact-block-v103 .section-group:first-child,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group:first-child{
  padding-top:24px!important;
  margin-top:0!important;
  border-top:1px solid var(--tl349-frame-line,#d8d0c3)!important;
}
html body .section-groups.compact-block-v103 .section-group + .section-group,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group + .section-group{
  margin-top:18px!important;
}
html body .section-groups.compact-block-v103 .section-group-head,
html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group-head{
  margin:0 0 18px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
html body.theme-dark .section-groups.compact-block-v103 .section-group,
html body.reference-ui-v99.theme-dark .section-groups.compact-block-v103 .section-group{
  background:transparent!important;
  border-color:#2b333d!important;
}
@media (max-width:900px){
  html body .section-groups.compact-block-v103 .section-group,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
    padding:18px 18px 20px!important;
    border-radius:14px!important;
  }
  html body .section-groups.compact-block-v103 .section-group:first-child,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group:first-child{
    padding-top:18px!important;
  }
}


/* v391 — slightly enlarge sidebar brand block */
html body .global-sidebar .sidebar-brand,
html body.reference-ui-v99 .global-sidebar .sidebar-brand{
  gap:10px!important;
  padding:4px 2px 16px!important;
  margin-bottom:18px!important;
}
html body .global-sidebar .sidebar-brand-mark,
html body.reference-ui-v99 .global-sidebar .sidebar-brand-mark{
  width:46px!important;
  height:46px!important;
  border-radius:12px!important;
}
html body .global-sidebar .sidebar-brand span:last-child b,
html body .global-sidebar .sidebar-brand span:last-child strong,
html body.reference-ui-v99 .global-sidebar .sidebar-brand span:last-child b,
html body.reference-ui-v99 .global-sidebar .sidebar-brand span:last-child strong{
  font-size:16.5px!important;
  line-height:1.06!important;
}
html body .global-sidebar .sidebar-brand span:last-child small,
html body.reference-ui-v99 .global-sidebar .sidebar-brand span:last-child small{
  font-size:9.8px!important;
  line-height:1.2!important;
  letter-spacing:.02em!important;
}
@media (max-width:900px){
  html body .global-sidebar .sidebar-brand,
  html body.reference-ui-v99 .global-sidebar .sidebar-brand{
    gap:9px!important;
    padding:3px 2px 14px!important;
  }
  html body .global-sidebar .sidebar-brand-mark,
  html body.reference-ui-v99 .global-sidebar .sidebar-brand-mark{
    width:42px!important;
    height:42px!important;
  }
  html body .global-sidebar .sidebar-brand span:last-child b,
  html body .global-sidebar .sidebar-brand span:last-child strong,
  html body.reference-ui-v99 .global-sidebar .sidebar-brand span:last-child b,
  html body.reference-ui-v99 .global-sidebar .sidebar-brand span:last-child strong{
    font-size:15.6px!important;
  }
}


/* v392 — restore source/service icons, single clean outline, no clipping */
html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art,
html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
}
html body .playbook-card-top .playbook-hero-art::before,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before,
html body .playbook-card-top .playbook-hero-art::after,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::after,
html body main.source-playbook-page .source-hero-icon::before,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before,
html body main.source-playbook-page .source-hero-icon::after,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::after{
  content:none!important;
  display:none!important;
  background:none!important;
}
html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art{
  width:70px!important;
  height:70px!important;
  min-width:70px!important;
  padding:10px!important;
  border-radius:16px!important;
  border:1px solid #d7c9b6!important;
  background-color:#fbf7ef!important;
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
  background-size:44px 44px!important;
  box-shadow:0 6px 16px rgba(69,51,20,.06)!important;
}
html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  text-indent:-9999px!important;
  font-size:0!important;
  color:transparent!important;
  width:70px!important;
  height:70px!important;
  min-width:70px!important;
  flex-basis:70px!important;
  padding:10px!important;
  border-radius:16px!important;
  border:1px solid #d7c9b6!important;
  background-color:#fbf7ef!important;
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
  background-size:44px 44px!important;
  box-shadow:0 6px 16px rgba(69,51,20,.06)!important;
}
html body.theme-dark .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99.theme-dark .playbook-card-top .playbook-hero-art,
html body.theme-dark main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon{
  background-color:#1a2129!important;
  border-color:#3a4652!important;
  box-shadow:0 8px 18px rgba(0,0,0,.18)!important;
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
}
html body main.source-playbook-page .source-title-row,
html body.reference-ui-v99 main.source-playbook-page .source-title-row{
  grid-template-columns:70px minmax(0,1fr) !important;
  gap:16px!important;
}
@media (max-width:900px){
  html body .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art,
  html body main.source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:62px!important; height:62px!important; min-width:62px!important; flex-basis:62px!important;
    padding:9px!important; border-radius:14px!important; background-size:38px 38px!important;
  }
  html body main.source-playbook-page .source-title-row,
  html body.reference-ui-v99 main.source-playbook-page .source-title-row{grid-template-columns:62px minmax(0,1fr)!important; gap:14px!important;}
}
@media (max-width:430px){
  html body .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art,
  html body main.source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:56px!important; height:56px!important; min-width:56px!important; flex-basis:56px!important;
    padding:8px!important; border-radius:13px!important; background-size:34px 34px!important;
  }
  html body main.source-playbook-page .source-title-row,
  html body.reference-ui-v99 main.source-playbook-page .source-title-row{grid-template-columns:56px minmax(0,1fr)!important; gap:12px!important;}
}


/* v393 — more breathing room for history page outer frame */
html body .history-page,
html body.reference-ui-v99 .history-page{
  padding:34px 36px!important;
}
html body .history-page .saved-block + .saved-block,
html body.reference-ui-v99 .history-page .saved-block + .saved-block{
  margin-top:42px!important;
}
@media (max-width:900px){
  html body .history-page,
  html body.reference-ui-v99 .history-page{padding:26px 28px!important;}
}
@media (max-width:650px){
  html body .history-page,
  html body.reference-ui-v99 .history-page{padding:20px 18px!important;}
}


/* v394 — light theme section-group shells need the same visible frame logic */
html body:not(.theme-dark){
  --tl394-light-frame-bg:#fcfaf6;
  --tl394-light-frame-line:#cfc4b4;
  --tl394-light-card-bg:#fffdfa;
}
html body:not(.theme-dark) .section-groups.compact-block-v103,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103{
  background:var(--tl394-light-frame-bg)!important;
  border:1px solid var(--tl394-light-frame-line)!important;
  border-radius:18px!important;
  padding:30px!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group{
  padding-top:24px!important;
  margin-top:24px!important;
  border-top:1px solid #d9cfbf!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group:first-child,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group:first-child{
  padding-top:0!important;
  margin-top:0!important;
  border-top:0!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group-head,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group-head{
  gap:28px!important;
  margin:0 0 18px!important;
  align-items:flex-start!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-entry,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-entry{
  background:var(--tl394-light-card-bg)!important;
  border:1px solid #d8cfc1!important;
}
@media (max-width:900px){
  html body:not(.theme-dark) .section-groups.compact-block-v103,
  html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103{padding:20px!important;}
  html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group,
  html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group{padding-top:18px!important;margin-top:18px!important;}
}


/* v395 — services page uses clean section separators instead of outer framed shells */
html body.services-page :is(.services-intro.compact-block-v103,.service-workflow.compact-block-v103,.service-start-kit.compact-block-v103),
html body.reference-ui-v99.services-page :is(.services-intro.compact-block-v103,.service-workflow.compact-block-v103,.service-start-kit.compact-block-v103){
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
  padding-left:0!important;
  padding-right:0!important;
}
html body.services-page .services-intro.compact-block-v103,
html body.reference-ui-v99.services-page .services-intro.compact-block-v103{
  padding-top:10px!important;
  padding-bottom:20px!important;
  margin-bottom:2px!important;
}
html body.services-page .service-workflow.compact-block-v103,
html body.reference-ui-v99.services-page .service-workflow.compact-block-v103{
  padding-top:28px!important;
  padding-bottom:4px!important;
  margin-top:0!important;
}
html body.services-page .service-start-kit.compact-block-v103,
html body.reference-ui-v99.services-page .service-start-kit.compact-block-v103{
  margin-top:20px!important;
  padding-top:28px!important;
  padding-bottom:10px!important;
  border-top:0!important;
}
html body.services-page :is(.service-workflow.compact-block-v103,.service-start-kit.compact-block-v103)::before,
html body.reference-ui-v99.services-page :is(.service-workflow.compact-block-v103,.service-start-kit.compact-block-v103)::before{
  content:"";
  display:block;
  height:1px;
  width:100%;
  margin:0 0 26px;
}
html body.services-page:not(.theme-dark) :is(.service-workflow.compact-block-v103,.service-start-kit.compact-block-v103)::before,
html body.reference-ui-v99.services-page:not(.theme-dark) :is(.service-workflow.compact-block-v103,.service-start-kit.compact-block-v103)::before{
  background:linear-gradient(90deg,rgba(207,196,180,0) 0%, rgba(207,196,180,.95) 12%, rgba(207,196,180,.95) 88%, rgba(207,196,180,0) 100%)!important;
}
html body.services-page.theme-dark :is(.service-workflow.compact-block-v103,.service-start-kit.compact-block-v103)::before,
html body.reference-ui-v99.services-page.theme-dark :is(.service-workflow.compact-block-v103,.service-start-kit.compact-block-v103)::before{
  background:linear-gradient(90deg,rgba(52,69,88,0) 0%, rgba(52,69,88,.95) 12%, rgba(52,69,88,.95) 88%, rgba(52,69,88,0) 100%)!important;
}
html body.services-page .service-workflow + .service-workflow,
html body.reference-ui-v99.services-page .service-workflow + .service-workflow{
  margin-top:0!important;
  border-top:0!important;
}
html body.services-page .service-notice,
html body.reference-ui-v99.services-page .service-notice{
  margin-bottom:18px!important;
}
@media (max-width:900px){
  html body.services-page .service-workflow.compact-block-v103,
  html body.reference-ui-v99.services-page .service-workflow.compact-block-v103{padding-top:22px!important;}
  html body.services-page :is(.service-workflow.compact-block-v103,.service-start-kit.compact-block-v103)::before,
  html body.reference-ui-v99.services-page :is(.service-workflow.compact-block-v103,.service-start-kit.compact-block-v103)::before{margin:0 0 20px!important;}
}


/* v396 — remove extra light fill from outer section-group shells */
html body:not(.theme-dark) .section-groups.compact-block-v103,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103{
  background:transparent!important;
  box-shadow:none!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group{
  background:transparent!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group-head,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group-head{
  margin-bottom:16px!important;
}


/* v397 — restore missing icons in light theme with explicit pseudo-element rendering */
html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art,
html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  background-image:none!important;
}
html body .playbook-card-top .playbook-hero-art::before,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before,
html body main.source-playbook-page .source-hero-icon::before,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before{
  content:""!important;
  display:block!important;
  width:44px!important;
  height:44px!important;
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-size:contain!important;
  flex:0 0 auto!important;
}
@media (max-width:900px){
  html body .playbook-card-top .playbook-hero-art::before,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before,
  html body main.source-playbook-page .source-hero-icon::before,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before{width:40px!important;height:40px!important;}
}
@media (max-width:430px){
  html body .playbook-card-top .playbook-hero-art::before,
  html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before,
  html body main.source-playbook-page .source-hero-icon::before,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before{width:36px!important;height:36px!important;}
}


/* v398 — remove the decorative desktop top/side stripe behind content. */
@media (min-width:1180px){
  html body::before,
  html body::after,
  html body.theme-dark::before,
  html body.theme-dark::after,
  html body.reference-ui-v99::before,
  html body.reference-ui-v99::after,
  html body.reference-ui-v99.theme-dark::before,
  html body.reference-ui-v99.theme-dark::after{
    content:none!important;
    display:none!important;
    background:none!important;
    border:0!important;
    box-shadow:none!important;
  }
}


/* v399 — light theme: remove the extra shared background slab between grouped sections. */
html body:not(.theme-dark) .section-groups.compact-block-v103,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  overflow:visible!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group{
  background:var(--tl-light-surface)!important;
  border:1px solid var(--tl-light-line)!important;
  border-radius:18px!important;
  box-shadow:none!important;
  padding:30px 30px 28px!important;
  margin:0 0 22px!important;
  border-top:1px solid var(--tl-light-line)!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group:last-child,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group:last-child{
  margin-bottom:0!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group:first-child,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group:first-child{
  padding-top:30px!important;
  margin-top:0!important;
}
html body:not(.theme-dark) .section-groups.compact-block-v103 .section-group-head,
html body.reference-ui-v99:not(.theme-dark) .section-groups.compact-block-v103 .section-group-head{
  margin:0 0 18px!important;
}


/* v400 — light traffic cards: shift icon/title to the right and prevent side clipping. */
html body:not(.theme-dark) .traffic-hub-page .playbook-card,
html body.reference-ui-v99:not(.theme-dark) .traffic-hub-page .playbook-card{
  padding-left:30px!important;
  padding-right:26px!important;
}
html body:not(.theme-dark) .traffic-hub-page .playbook-card-top,
html body.reference-ui-v99:not(.theme-dark) .traffic-hub-page .playbook-card-top{
  justify-content:flex-start!important;
  align-items:center!important;
  gap:18px!important;
  padding-left:8px!important;
}
html body:not(.theme-dark) .traffic-hub-page .playbook-card-top>span:not(.playbook-hero-art),
html body.reference-ui-v99:not(.theme-dark) .traffic-hub-page .playbook-card-top>span:not(.playbook-hero-art){
  display:inline-flex!important;
  align-items:center!important;
  min-height:72px!important;
}
html body:not(.theme-dark) .traffic-hub-page .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99:not(.theme-dark) .traffic-hub-page .playbook-card-top .playbook-hero-art{
  margin-left:2px!important;
  background-position:center center!important;
  overflow:visible!important;
}
@media (max-width:900px){
  html body:not(.theme-dark) .traffic-hub-page .playbook-card,
  html body.reference-ui-v99:not(.theme-dark) .traffic-hub-page .playbook-card{padding-left:22px!important;padding-right:20px!important;}
  html body:not(.theme-dark) .traffic-hub-page .playbook-card-top,
  html body.reference-ui-v99:not(.theme-dark) .traffic-hub-page .playbook-card-top{gap:14px!important;padding-left:4px!important;}
  html body:not(.theme-dark) .traffic-hub-page .playbook-card-top>span:not(.playbook-hero-art),
  html body.reference-ui-v99:not(.theme-dark) .traffic-hub-page .playbook-card-top>span:not(.playbook-hero-art){min-height:64px!important;}
}


/* v401 — traffic cards: keep only one large icon, move icon and label right, no clipping in both themes */
html body .traffic-hub-page .playbook-catalog-grid .playbook-card,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card{
  padding-left:28px!important;
  padding-right:24px!important;
}
html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top{
  display:flex!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  gap:16px!important;
  padding-left:8px!important;
  min-height:84px!important;
}
html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art{
  position:relative!important;
  right:auto!important;
  left:auto!important;
  top:auto!important;
  bottom:auto!important;
  flex:0 0 76px!important;
  width:76px!important;
  height:76px!important;
  min-width:76px!important;
  margin:0!important;
  padding:0!important;
  border-radius:18px!important;
  overflow:visible!important;
  box-sizing:border-box!important;
  background:none!important;
  background-image:none!important;
}
html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::after,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::after{
  content:none!important;
  display:none!important;
  background:none!important;
}
html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::before,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:12px!important;
  width:auto!important;
  height:auto!important;
  border-radius:0!important;
  background-image:var(--tl-v222-source-icon,var(--source-logo))!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-size:contain!important;
}
html body:not(.theme-dark) .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99:not(.theme-dark) .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art{
  background-color:#fbf7ef!important;
  border:1px solid #d8ccb9!important;
  box-shadow:0 6px 16px rgba(69,51,20,.06)!important;
}
html body.theme-dark .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99.theme-dark .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art{
  background-color:#18222d!important;
  border:1px solid #3a4652!important;
  box-shadow:0 8px 18px rgba(0,0,0,.18)!important;
}
html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top > span:not(.playbook-hero-art),
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top > span:not(.playbook-hero-art){
  display:flex!important;
  align-items:center!important;
  min-height:76px!important;
  padding-top:0!important;
}
@media (max-width:900px){
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card{
    padding-left:22px!important;
    padding-right:20px!important;
  }
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top{
    gap:14px!important;
    padding-left:4px!important;
    min-height:74px!important;
  }
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art{
    flex-basis:68px!important;
    width:68px!important;
    height:68px!important;
    min-width:68px!important;
    border-radius:16px!important;
  }
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::before,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::before{
    inset:10px!important;
  }
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top > span:not(.playbook-hero-art),
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top > span:not(.playbook-hero-art){
    min-height:68px!important;
  }
}
@media (max-width:430px){
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art{
    flex-basis:62px!important;
    width:62px!important;
    height:62px!important;
    min-width:62px!important;
    border-radius:14px!important;
  }
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::before,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::before{
    inset:9px!important;
  }
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top > span:not(.playbook-hero-art),
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top > span:not(.playbook-hero-art){
    min-height:62px!important;
  }
}


/* v402 — source compare note needs inner padding so text does not stick to the edge */
html body .wrap.source-compare-note.compact-block-v103,
html body.reference-ui-v99 .wrap.source-compare-note.compact-block-v103,
html body .source-compare-note.compact-block-v103,
html body.reference-ui-v99 .source-compare-note.compact-block-v103{
  padding:28px 38px 30px!important;
}
html body .wrap.source-compare-note.compact-block-v103 strong,
html body.reference-ui-v99 .wrap.source-compare-note.compact-block-v103 strong,
html body .source-compare-note.compact-block-v103 strong,
html body.reference-ui-v99 .source-compare-note.compact-block-v103 strong{
  display:block!important;
  margin:0 0 10px!important;
}
html body .wrap.source-compare-note.compact-block-v103 p,
html body.reference-ui-v99 .wrap.source-compare-note.compact-block-v103 p,
html body .source-compare-note.compact-block-v103 p,
html body.reference-ui-v99 .source-compare-note.compact-block-v103 p{
  margin:0!important;
}
@media (max-width:900px){
  html body .wrap.source-compare-note.compact-block-v103,
  html body.reference-ui-v99 .wrap.source-compare-note.compact-block-v103,
  html body .source-compare-note.compact-block-v103,
  html body.reference-ui-v99 .source-compare-note.compact-block-v103{
    padding:22px 26px 24px!important;
  }
}
@media (max-width:640px){
  html body .wrap.source-compare-note.compact-block-v103,
  html body.reference-ui-v99 .wrap.source-compare-note.compact-block-v103,
  html body .source-compare-note.compact-block-v103,
  html body.reference-ui-v99 .source-compare-note.compact-block-v103{
    padding:18px 20px 20px!important;
  }
}


/* v403 — restore the green gradient mobile top bar in light theme */
@media (max-width:900px){
  html body:not(.theme-dark) .site-header,
  html body.reference-ui-v99:not(.theme-dark) .site-header{
    background:linear-gradient(90deg,#18493d 0%, #1d5647 58%, #226353 100%)!important;
    border-bottom:1px solid rgba(255,255,255,.14)!important;
    box-shadow:0 6px 18px rgba(10,28,22,.14)!important;
  }
  html body.reference-ui-v99:not(.theme-dark) .ref-topbar,
  html body:not(.theme-dark) .header-inner{
    background:transparent!important;
    color:#eef7f3!important;
  }
  html body.reference-ui-v99:not(.theme-dark) .ref-mobile-brand,
  html body.reference-ui-v99:not(.theme-dark) .ref-mobile-brand b,
  html body:not(.theme-dark) .brand-text b,
  html body:not(.theme-dark) .brand-text small{
    color:#eef7f3!important;
  }
  html body.reference-ui-v99:not(.theme-dark) :is(.ref-theme-button,.ref-mobile-menu),
  html body:not(.theme-dark) :is(.theme-toggle,.mobile-nav-toggle){
    background:rgba(0,0,0,.14)!important;
    border-color:rgba(255,255,255,.18)!important;
    color:#ffffff!important;
  }
}


/* ======================================================================
   v404 — mobile polish pass
   One visual width, fewer nested gutters, cleaner mobile stacking.
   Desktop is intentionally untouched.
   ====================================================================== */
@media (max-width:900px){

  /* HOME: the intro used to become noticeably narrower than sections below
     because the hero panel added another large inner gutter. */
  html body.home-shell-v256 main.home-page .home-welcome > .wrap,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome > .wrap{
    width:var(--tl-mobile-width)!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  html body.home-shell-v256 main.home-page .home-welcome-grid,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-grid{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  html body.home-shell-v256 main.home-page .home-welcome-copy,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:18px 14px 18px!important;
    border-radius:18px!important;
    box-sizing:border-box!important;
    backdrop-filter:none!important;
  }

  html body.home-shell-v256 main.home-page .home-welcome h1,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome h1{
    max-width:none!important;
    margin-bottom:14px!important;
    font-size:clamp(32px,9.2vw,41px)!important;
    line-height:1.04!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  html body.home-shell-v256 main.home-page .home-intro-copy,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-intro-copy{
    max-width:none!important;
    font-size:15.5px!important;
    line-height:1.58!important;
  }

  html body.home-shell-v256 main.home-page .home-lead,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-lead{
    margin-top:20px!important;
    font-size:15px!important;
  }

  html body.home-shell-v256 main.home-page .home-welcome-summary,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary{
    grid-template-columns:1fr!important;
    width:100%!important;
    max-width:none!important;
    gap:8px!important;
    margin:16px 0 0!important;
  }

  html body.home-shell-v256 main.home-page .home-welcome-summary > div,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary > div{
    width:100%!important;
    min-height:0!important;
    padding:14px 14px 15px!important;
    border-radius:12px!important;
    box-sizing:border-box!important;
  }

  html body.home-shell-v256 main.home-page .home-welcome-summary b,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary b{
    font-size:13px!important;
  }

  html body.home-shell-v256 main.home-page .home-welcome-summary span,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-summary span{
    font-size:12.5px!important;
    line-height:1.5!important;
  }

  html body.home-shell-v256 main.home-page .home-actions,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:100%!important;
    margin-top:14px!important;
  }

  html body.home-shell-v256 main.home-page .home-actions a,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-actions a{
    width:100%!important;
    min-height:44px!important;
    justify-content:center!important;
    box-sizing:border-box!important;
  }

  html body.home-shell-v256 main.home-page .home-search-card,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-search-card{
    width:100%!important;
    max-width:none!important;
    margin:14px 0 0!important;
    padding:18px 14px 16px!important;
    border-radius:16px!important;
    box-sizing:border-box!important;
  }

  html body.home-shell-v256 main.home-page .home-main-search > div,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-main-search > div{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
  }

  html body.home-shell-v256 main.home-page .home-main-search input,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-main-search input,
  html body.home-shell-v256 main.home-page .home-main-search button,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-main-search button{
    width:100%!important;
    min-height:44px!important;
    border-radius:10px!important;
    border:1px solid currentColor!important;
  }

  html body.home-shell-v256 main.home-page .home-main-search button,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-main-search button{
    border-left-width:1px!important;
  }

  html body.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.home-results),
  html body.reference-ui-v99.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.home-results){
    padding-top:32px!important;
    padding-bottom:34px!important;
  }

  html body.home-shell-v256 main.home-page .home-section-title,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-section-title{
    margin-bottom:14px!important;
  }

  html body.home-shell-v256 main.home-page .home-section-title-split,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-section-title-split{
    display:block!important;
  }

  html body.home-shell-v256 main.home-page .home-section-title-split > span,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-section-title-split > span{
    display:block!important;
    margin-top:8px!important;
    max-width:none!important;
  }

  html body.home-shell-v256 main.home-page :is(.home-entry-grid,.home-source-grid),
  html body.reference-ui-v99.home-shell-v256 main.home-page :is(.home-entry-grid,.home-source-grid){
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  html body.home-shell-v256 main.home-page :is(.home-entry-grid>a,.home-source-grid>a),
  html body.reference-ui-v99.home-shell-v256 main.home-page :is(.home-entry-grid>a,.home-source-grid>a){
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    padding:18px!important;
    border-radius:12px!important;
    box-sizing:border-box!important;
  }

  html body.home-shell-v256 main.home-page .home-results-inner,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-results-inner{
    display:block!important;
    width:100%!important;
  }

  html body.home-shell-v256 main.home-page .home-results nav,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-results nav{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin-top:16px!important;
  }

  html body.home-shell-v256 main.home-page .home-results nav a,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-results nav a{
    width:100%!important;
    min-height:44px!important;
    box-sizing:border-box!important;
  }

  /* LANDINGS: preserve the canonical width, reduce unnecessary nested padding. */
  html body .section-groups.compact-block-v103 .section-group,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
    padding:18px 16px 20px!important;
  }

  html body .section-groups.compact-block-v103 .section-entry-grid,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry-grid{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  html body .section-groups.compact-block-v103 .section-entry,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-entry{
    width:100%!important;
    min-width:0!important;
    padding:16px!important;
    box-sizing:border-box!important;
  }

  html body .section-bottom-links.compact-block-v103,
  html body.reference-ui-v99 .section-bottom-links.compact-block-v103{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }

  html body .section-bottom-links.compact-block-v103 a,
  html body.reference-ui-v99 .section-bottom-links.compact-block-v103 a{
    width:100%!important;
    min-height:44px!important;
    justify-content:center!important;
    box-sizing:border-box!important;
  }

  /* ARTICLES: reduce the second gutter added by the article card itself. */
  html body.article-page .article-layout,
  html body.reference-ui-v99.article-page .article-layout,
  html body.source-playbook-page .article-layout,
  html body.reference-ui-v99.source-playbook-page .article-layout{
    padding-top:14px!important;
    padding-bottom:44px!important;
  }

  html body.article-page .article,
  html body.reference-ui-v99.article-page .article{
    padding:18px 16px!important;
  }

  html body.source-playbook-page .source-playbook-article,
  html body.reference-ui-v99.source-playbook-page .source-playbook-article{
    padding-left:0!important;
    padding-right:0!important;
  }

  html body :is(.academy-content-section,.logic-section-v103,.guide-v101-section),
  html body.reference-ui-v99 :is(.academy-content-section,.logic-section-v103,.guide-v101-section){
    max-width:100%!important;
    padding-left:16px!important;
    padding-right:16px!important;
    box-sizing:border-box!important;
  }

  /* SERVICES: headings no longer fight the cards on narrow screens. */
  html body.services-page .service-workflow-head,
  html body.reference-ui-v99.services-page .service-workflow-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    align-items:start!important;
  }

  html body.services-page .service-tool,
  html body.reference-ui-v99.services-page .service-tool{
    width:100%!important;
    padding:18px!important;
    box-sizing:border-box!important;
  }

  html body.services-page :is(.service-open-link,.service-tool-actions>a),
  html body.reference-ui-v99.services-page :is(.service-open-link,.service-tool-actions>a){
    min-height:44px!important;
  }

  /* HISTORY: header controls stack instead of squeezing the title. */
  html body .history-page .saved-block-head,
  html body.reference-ui-v99 .history-page .saved-block-head{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:8px!important;
  }

  html body .history-page .saved-card-main,
  html body.reference-ui-v99 .history-page .saved-card-main{
    padding:16px 42px 16px 16px!important;
  }

  /* COMPARE: keep controls compact, table scrolls in its own viewport. */
  html body .source-compare-page.compact-block-v103,
  html body.reference-ui-v99 .source-compare-page.compact-block-v103{
    padding-left:16px!important;
    padding-right:16px!important;
    box-sizing:border-box!important;
  }

  html body .source-compare-picker,
  html body.reference-ui-v99 .source-compare-picker{
    padding:16px!important;
    gap:12px!important;
  }

  html body .source-compare-table,
  html body.reference-ui-v99 .source-compare-table{
    border-radius:12px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
  }

  /* TRAFFIC CATALOG: keep the large icon treatment, but make card geometry mobile-safe. */
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card{
    padding:18px 16px 18px 20px!important;
    overflow:visible!important;
  }

  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top{
    width:100%!important;
    max-width:100%!important;
    padding-left:4px!important;
    box-sizing:border-box!important;
  }

  /* Generic action/touch targets. */
  html body :is(
    .text-button,.service-open-link,.source-compare-actions a,.article-actions a,
    .article-actions-unified a,.guide-v101-next a,.guide-v101-diagnostics a
  ),
  html body.reference-ui-v99 :is(
    .text-button,.service-open-link,.source-compare-actions a,.article-actions a,
    .article-actions-unified a,.guide-v101-next a,.guide-v101-diagnostics a
  ){
    min-height:44px!important;
  }
}

@media (max-width:650px){
  html body .history-page,
  html body.reference-ui-v99 .history-page{
    padding:18px 14px!important;
  }

  html body .section-groups.compact-block-v103 .section-group,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
    padding:16px 14px 18px!important;
    border-radius:14px!important;
  }

  html body.home-shell-v256 main.home-page .home-welcome-copy,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome-copy{
    padding:16px 12px 16px!important;
  }

  html body.home-shell-v256 main.home-page .home-search-card,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-search-card{
    padding:16px 12px 14px!important;
  }
}

@media (max-width:420px){
  html body.home-shell-v256 main.home-page .home-welcome h1,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome h1{
    font-size:clamp(30px,9.4vw,36px)!important;
  }

  html body .traffic-hub-page .playbook-catalog-grid .playbook-card,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card{
    padding-left:18px!important;
    padding-right:14px!important;
  }
}


/* ======================================================================
   v406 — mobile homepage final pass
   Dark theme hero width aligned with lower blocks.
   Hide decorative homepage images on mobile in both themes.
   ====================================================================== */
@media (max-width:900px){
  /* Remove decorative homepage imagery on mobile */
  html body.home-shell-v256 main.home-page > .home-lab-background-v266,
  html body.reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266{
    display:none!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  html body.home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body.home-shell-v256 main.home-page > .home-lab-background-v266::after,
  html body.reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::before,
  html body.reference-ui-v99.home-shell-v256 main.home-page > .home-lab-background-v266::after{
    display:none!important;
    content:none!important;
    background:none!important;
  }

  /* Dark theme: make the top home area use the same full mobile width
     rhythm as the sections below. */
  html body.theme-dark.home-shell-v256 main.home-page .home-welcome,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-welcome{
    padding-top:32px!important;
    padding-bottom:34px!important;
  }

  html body.theme-dark.home-shell-v256 main.home-page .home-welcome > .wrap,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-welcome > .wrap{
    width:var(--tl-mobile-width)!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  html body.theme-dark.home-shell-v256 main.home-page .home-welcome-grid,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-welcome-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
  }

  html body.theme-dark.home-shell-v256 main.home-page .home-welcome-copy,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-welcome-copy,
  html body.theme-dark.home-shell-v256 main.home-page .home-search-card,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-search-card{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  html body.theme-dark.home-shell-v256 main.home-page .home-welcome-copy,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-welcome-copy{
    padding:18px 18px 18px!important;
    border-radius:16px!important;
  }

  html body.theme-dark.home-shell-v256 main.home-page .home-search-card,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-search-card{
    padding:18px 18px 16px!important;
    border-radius:16px!important;
  }

  html body.theme-dark.home-shell-v256 main.home-page .home-welcome-summary,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-welcome-summary,
  html body.theme-dark.home-shell-v256 main.home-page .home-actions,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-actions{
    width:100%!important;
    max-width:none!important;
  }

  html body.theme-dark.home-shell-v256 main.home-page .home-welcome-summary > div,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-welcome-summary > div,
  html body.theme-dark.home-shell-v256 main.home-page .home-entry-grid > a,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-entry-grid > a,
  html body.theme-dark.home-shell-v256 main.home-page .home-source-grid > a,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-source-grid > a{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  html body.theme-dark.home-shell-v256 main.home-page .home-main-search,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-main-search,
  html body.theme-dark.home-shell-v256 main.home-page .home-main-search > div,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-main-search > div{
    width:100%!important;
    max-width:100%!important;
  }
}

@media (max-width:650px){
  html body.theme-dark.home-shell-v256 main.home-page .home-welcome-copy,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-welcome-copy,
  html body.theme-dark.home-shell-v256 main.home-page .home-search-card,
  html body.reference-ui-v99.theme-dark.home-shell-v256 main.home-page .home-search-card{
    padding-left:16px!important;
    padding-right:16px!important;
  }
}


/* ======================================================================
   v407 — darker mobile top bar for light theme only
   Restore the darker old-feeling top strip without touching dark theme.
   ====================================================================== */
@media (max-width:900px){
  html body:not(.theme-dark) .site-header,
  html body.reference-ui-v99:not(.theme-dark) .site-header{
    background:
      linear-gradient(90deg,#123a31 0%,#17463b 56%,#1b5244 100%)!important;
    border-bottom:1px solid rgba(255,255,255,.16)!important;
    box-shadow:0 6px 18px rgba(10,28,22,.18)!important;
  }

  html body.reference-ui-v99:not(.theme-dark) .ref-topbar,
  html body:not(.theme-dark) .header-inner{
    background:transparent!important;
    color:#f1f8f4!important;
  }

  html body.reference-ui-v99:not(.theme-dark) .ref-mobile-brand,
  html body.reference-ui-v99:not(.theme-dark) .ref-mobile-brand b,
  html body:not(.theme-dark) .brand-text b,
  html body:not(.theme-dark) .brand-text small{
    color:#f1f8f4!important;
  }

  html body.reference-ui-v99:not(.theme-dark) :is(.ref-theme-button,.ref-mobile-menu),
  html body:not(.theme-dark) :is(.theme-toggle,.mobile-nav-toggle){
    background:rgba(0,0,0,.18)!important;
    border-color:rgba(255,255,255,.20)!important;
    color:#ffffff!important;
  }
}


/* ======================================================================
   v408 — about page light theme borders aligned with the rest of the site
   ====================================================================== */
html body:not(.theme-dark).about-page-v114 .about-section-v114{
  border-bottom-color:var(--v109-line)!important;
}
html body:not(.theme-dark).about-page-v114 :is(.about-value-grid-v114>a,.about-principle-grid-v114>div){
  background:var(--v109-surface)!important;
  border-color:var(--v109-line)!important;
  color:var(--v109-copy)!important;
  box-shadow:none!important;
}
html body:not(.theme-dark).about-page-v114 .about-value-grid-v114>a:hover{
  border-color:var(--v109-line-strong)!important;
  box-shadow:none!important;
}
html body:not(.theme-dark).about-page-v114 :is(.about-value-grid-v114 b,.about-principle-grid-v114 b,.about-route-v114 b,.about-nav-card-v114>strong,.about-nav-links-v114 b){
  color:var(--v109-green-dark)!important;
}
html body:not(.theme-dark).about-page-v114 :is(.about-value-grid-v114 span,.about-principle-grid-v114 p,.about-route-v114 p,.about-nav-links-v114 small,.about-review-v114){
  color:var(--v109-copy)!important;
}
html body:not(.theme-dark).about-page-v114 .about-value-grid-v114 em,
html body:not(.theme-dark).about-page-v114 .about-route-v114 a{
  color:var(--v109-green)!important;
}
html body:not(.theme-dark).about-page-v114 .about-route-v114 li{
  border-color:var(--v109-line)!important;
}
html body:not(.theme-dark).about-page-v114 .about-route-v114 li:before{
  background:var(--v109-green-soft)!important;
  color:var(--v109-green)!important;
}
html body:not(.theme-dark).about-page-v114 .about-boundaries-v114 li{
  background:var(--v109-surface)!important;
  border-color:var(--v109-line)!important;
  color:var(--v109-copy)!important;
}
html body:not(.theme-dark).about-page-v114 .about-boundaries-v114 li:before{
  color:var(--v109-warm)!important;
}
html body:not(.theme-dark).about-page-v114 .about-nav-card-v114{
  background:var(--v109-surface)!important;
  border:1px solid var(--v109-line)!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
html body:not(.theme-dark).about-page-v114 .about-nav-card-v114>span{
  color:var(--v109-muted)!important;
}
html body:not(.theme-dark).about-page-v114 .about-nav-links-v114 a{
  background:var(--v109-surface)!important;
  border-color:var(--v109-line)!important;
}
html body:not(.theme-dark).about-page-v114 .about-nav-note-v114{
  background:var(--v109-green-soft)!important;
  border:1px solid #d8e4dc!important;
}
html body:not(.theme-dark).about-page-v114 .about-nav-note-v114 b{
  color:var(--v109-green)!important;
}
html body:not(.theme-dark).about-page-v114 .about-nav-note-v114 p{
  color:var(--v109-copy)!important;
}


/* ======================================================================
   v409 — mobile home padding cleanup: keep text and controls off the edges
   ====================================================================== */
@media (max-width: 640px){
  html body.home-shell-v256 main.home-page .home-welcome > .wrap,
  html body.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results,.home-next) > .wrap,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome > .wrap,
  html body.reference-ui-v99.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results,.home-next) > .wrap{
    width:calc(100% - 32px)!important;
  }

  html body main.home-page .continue-home{
    padding:14px 0 10px!important;
  }
  html body main.home-page .continue-card{
    padding:20px 18px!important;
    border-radius:16px!important;
    gap:16px!important;
  }
  html body main.home-page .continue-copy h2{
    font-size:23px!important;
    line-height:1.2!important;
  }
  html body main.home-page .continue-copy p{
    font-size:14px!important;
    line-height:1.62!important;
  }
  html body main.home-page .continue-primary{
    min-height:44px!important;
    padding:0 16px!important;
    width:100%!important;
  }
  html body main.home-page .continue-secondary{
    padding-left:2px!important;
  }

  html body.home-shell-v256 main.home-page .home-results{
    padding:46px 0 50px!important;
  }
  html body.home-shell-v256 main.home-page .home-results .home-results-inner,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-results .home-results-inner{
    padding:24px 22px!important;
    border-radius:18px!important;
    gap:22px!important;
  }
  html body.home-shell-v256 main.home-page .home-results .home-results-inner > div,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-results .home-results-inner > div{
    padding:0 2px!important;
  }
  html body.home-shell-v256 main.home-page .home-results .home-results-inner h2,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-results .home-results-inner h2{
    font-size:25px!important;
    line-height:1.1!important;
  }
  html body.home-shell-v256 main.home-page .home-results .home-results-inner > div > span,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-results .home-results-inner > div > span{
    font-size:14px!important;
    line-height:1.66!important;
  }
  html body.home-shell-v256 main.home-page .home-results nav,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-results nav{
    gap:10px!important;
  }
  html body.home-shell-v256 main.home-page .home-results nav a,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-results nav a{
    min-height:52px!important;
    padding:14px 16px!important;
    border-radius:12px!important;
  }

  html body .site-footer,
  html body.reference-ui-v99 .site-footer{
    padding-left:0!important;
    padding-right:0!important;
  }
  html body .site-footer .wrap,
  html body.reference-ui-v99 .site-footer .wrap{
    width:calc(100% - 32px)!important;
    max-width:none!important;
  }
  html body .footer-main,
  html body.reference-ui-v99 .footer-main{
    gap:18px!important;
    padding-top:28px!important;
    padding-bottom:20px!important;
  }
  html body .footer-identity,
  html body.reference-ui-v99 .footer-identity{
    padding-right:2px!important;
  }
  html body .footer-links,
  html body.reference-ui-v99 .footer-links{
    gap:10px 18px!important;
  }
}


/* ======================================================================
   v412 — FINAL SITE PASS
   Desktop-safe consistency + a deliberate mobile layout contract.
   ====================================================================== */

/* Small hardening rules that are safe on every viewport. */
html{scrollbar-gutter:stable;}
html body,html body *{box-sizing:border-box;}
html body :is(img,svg,video,canvas,iframe){max-width:100%;}
html body :is(.article,.source-playbook-article,.section-entry,.service-tool,.saved-card-main,.about-main,.source-compare-page){min-width:0;}
html body :is(.article table,.compare-table,.source-compare-table,.rules-table){max-width:100%;}

@media (max-width:900px){
  :root{--tl-final-mobile-gutter:16px;}

  html,html body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  html body{position:relative!important;}
  html body main,html body .site-footer{margin-left:0!important;width:100%!important;max-width:100%!important;}

  /* Header + drawer. The drawer must arrive fully at x=0 on every phone. */
  html body .site-header{overflow:visible!important;}
  html body .site-header .header-inner,
  html body.reference-ui-v99 .site-header .ref-topbar{
    width:100%!important;
    max-width:none!important;
    padding-left:max(12px,env(safe-area-inset-left))!important;
    padding-right:max(12px,env(safe-area-inset-right))!important;
  }
  html body .global-sidebar,
  html body.reference-ui-v99 .global-sidebar{
    position:fixed!important;
    left:0!important;
    right:auto!important;
    top:68px!important;
    bottom:auto!important;
    width:min(320px,calc(100vw - 12px))!important;
    max-width:min(320px,calc(100vw - 12px))!important;
    height:calc(100dvh - 68px)!important;
    max-height:calc(100dvh - 68px)!important;
    margin:0!important;
    padding:14px 12px max(20px,env(safe-area-inset-bottom)) 14px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    transform:translate3d(calc(-100% - 4px),0,0)!important;
    will-change:transform!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  html body.mobile-nav-open .global-sidebar,
  html body.reference-ui-v99.mobile-nav-open .global-sidebar{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  html body .mobile-nav-overlay,
  html body.reference-ui-v99 .mobile-nav-overlay{inset:68px 0 0!important;}

  /* Canonical page gutters. Do not let nested shells repeatedly shrink content. */
  html body main>.wrap,
  html body main>section>.wrap,
  html body .site-footer>.wrap{
    width:calc(100% - (var(--tl-final-mobile-gutter) * 2))!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  html body :is(.article-layout,.tl-primary-layout-v287){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding-left:var(--tl-final-mobile-gutter)!important;
    padding-right:var(--tl-final-mobile-gutter)!important;
  }
  html body :is(.article,.source-playbook-article){width:100%!important;max-width:100%!important;min-width:0!important;}
  html body :is(.article-aside,.article-aside.enhanced-rail,.source-playbook-page .article-aside){display:none!important;}

  /* Long editorial blocks keep breathing room instead of touching their frames. */
  html body :is(.academy-content-section,.logic-section-v103,.logic-explain-v103,.logic-analysis-v103,.logic-warning-v103,.logic-action-v103,.guide-v101-section,.service-inline,.article-purpose-note){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }

  /* Common grids collapse cleanly. */
  html body :is(
    .section-entry-grid,.service-tool-grid,.service-tool-grid-one,.service-start-grid,
    .tools-grid,.tool-form-grid,.compare-grid,.notes-grid,.journal-reading-grid,
    .about-value-grid-v114,.about-principle-grid-v114,.about-boundaries-v114 ul,
    .saved-grid,.rules-summary-grid,.rules-model-grid,.geo-chip-grid,.guide-v101-grid,
    .guide-v101-formats,.source-toolkit-grid,.source-journey-grid,.source-visual-pair,
    .platform-setup,.playbook-format-list,.playbook-checklist,.traffic-diagnostic-list,
    .traffic-hub-basics,.traffic-next,.knowledge-map
  ){
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
  }

  /* Section landing pages: outer shell stays quiet; each section/card owns its frame. */
  html body .section-groups.compact-block-v103,
  html body.reference-ui-v99 .section-groups.compact-block-v103{
    width:calc(100% - (var(--tl-final-mobile-gutter) * 2))!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:0!important;
    overflow:visible!important;
  }
  html body .section-groups.compact-block-v103 .section-group,
  html body.reference-ui-v99 .section-groups.compact-block-v103 .section-group{
    width:100%!important;
    max-width:100%!important;
    padding:18px 16px 20px!important;
    margin:0 0 14px!important;
    border-radius:15px!important;
  }
  html body .section-group-head,
  html body.reference-ui-v99 .section-group-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
    margin-bottom:16px!important;
  }
  html body .section-entry,
  html body.reference-ui-v99 .section-entry{padding:16px!important;min-height:0!important;}

  /* Source pages. */
  html body .source-title-row,
  html body.reference-ui-v99 .source-title-row{
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:12px!important;
    align-items:center!important;
  }
  html body .source-hero-icon,
  html body.reference-ui-v99 .source-hero-icon{
    width:58px!important;height:58px!important;min-width:58px!important;flex-basis:58px!important;
    border-radius:14px!important;
  }
  html body .source-title-copy h1,
  html body.reference-ui-v99 .source-title-copy h1{font-size:28px!important;line-height:1.08!important;}
  html body .source-section-tabs,
  html body.reference-ui-v99 .source-section-tabs{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    padding-left:2px!important;
    padding-right:2px!important;
  }
  html body .source-section-tabs::-webkit-scrollbar{display:none!important;}
  html body .source-section-tabs a,
  html body .source-section-tabs button{flex:0 0 auto!important;white-space:nowrap!important;}
  html body .playbook-facts,
  html body.reference-ui-v99 .playbook-facts{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
  html body .playbook-facts>div,
  html body.reference-ui-v99 .playbook-facts>div{min-width:0!important;padding:12px 10px!important;}
  html body .playbook-facts>div:last-child:nth-child(odd){grid-column:1/-1!important;}

  /* Traffic catalog and its icon row. */
  html body .traffic-hub-page .playbook-catalog-grid{grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}
  html body .traffic-hub-page .playbook-card{width:100%!important;padding:18px!important;overflow:visible!important;}
  html body .traffic-hub-page .playbook-card-top{width:100%!important;padding-left:4px!important;gap:14px!important;}

  /* Services. */
  html body.services-page :is(.services-intro,.service-workflow,.service-start-kit){width:calc(100% - (var(--tl-final-mobile-gutter) * 2))!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;}
  html body.services-page .service-workflow-head{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;}
  html body.services-page .service-tool{width:100%!important;max-width:100%!important;padding:17px!important;}

  /* Compare + tables. */
  html body .source-compare-page.compact-block-v103,
  html body.reference-ui-v99 .source-compare-page.compact-block-v103{
    width:calc(100% - (var(--tl-final-mobile-gutter) * 2))!important;
    max-width:none!important;
    margin-left:auto!important;margin-right:auto!important;
    padding:0!important;
  }
  html body .source-compare-picker,
  html body.reference-ui-v99 .source-compare-picker{grid-template-columns:minmax(0,1fr)!important;gap:12px!important;padding:16px!important;}
  html body :is(.source-compare-table,.article table,.compare-table,.rules-table){
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body :is(.source-compare-table th,.source-compare-table td,.article table th,.article table td){
    min-width:150px!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    vertical-align:top!important;
  }

  /* History / saved / notes. */
  html body :is(.history-page,.saved-page,.notes-page){
    width:calc(100% - (var(--tl-final-mobile-gutter) * 2))!important;
    max-width:none!important;
    margin-left:auto!important;margin-right:auto!important;
    padding-left:0!important;padding-right:0!important;
  }
  html body .saved-block-head{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;}
  html body .saved-card-main{padding:16px!important;}
  html body :is(.notes-composer,.journal-explainer){padding-left:16px!important;padding-right:16px!important;}

  /* About page. */
  html body.about-page-v114 .about-hero-v114 .wrap.narrow,
  html body.about-page-v114 .about-layout-v114{
    width:calc(100% - (var(--tl-final-mobile-gutter) * 2))!important;
    max-width:none!important;
    margin-left:auto!important;margin-right:auto!important;
    padding-left:0!important;padding-right:0!important;
  }
  html body.about-page-v114 .about-layout-v114{grid-template-columns:minmax(0,1fr)!important;gap:20px!important;}
  html body.about-page-v114 .about-nav-card-v114{position:static!important;width:100%!important;max-width:100%!important;padding:18px!important;}

  /* Home page: same visual width from the first block to the last block; no decorative artwork on phones. */
  html body.home-shell-v256 main.home-page>.home-lab-background-v266,
  html body.reference-ui-v99.home-shell-v256 main.home-page>.home-lab-background-v266{display:none!important;}
  html body.home-shell-v256 main.home-page .home-welcome>.wrap,
  html body.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results)>.wrap,
  html body.reference-ui-v99.home-shell-v256 main.home-page .home-welcome>.wrap,
  html body.reference-ui-v99.home-shell-v256 main.home-page :is(.home-entry-section,.home-sources-v51,.continue-home,.home-results)>.wrap{
    width:calc(100% - (var(--tl-final-mobile-gutter) * 2))!important;
    max-width:none!important;
    margin-left:auto!important;margin-right:auto!important;
    padding-left:0!important;padding-right:0!important;
  }
  html body.home-shell-v256 main.home-page .home-welcome-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;width:100%!important;}
  html body.home-shell-v256 main.home-page :is(.home-welcome-copy,.home-search-card){width:100%!important;max-width:none!important;margin:0!important;padding:18px!important;border-radius:16px!important;}
  html body.home-shell-v256 main.home-page .home-welcome h1{max-width:none!important;font-size:clamp(32px,9.6vw,43px)!important;line-height:1.02!important;overflow-wrap:normal!important;}
  html body.home-shell-v256 main.home-page .home-welcome-summary{grid-template-columns:minmax(0,1fr)!important;gap:10px!important;width:100%!important;}
  html body.home-shell-v256 main.home-page .home-welcome-summary>div{padding:15px!important;min-height:0!important;}
  html body.home-shell-v256 main.home-page :is(.home-entry-grid,.home-source-grid){grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}
  html body.home-shell-v256 main.home-page :is(.home-entry-grid>a,.home-source-grid>a){width:100%!important;max-width:100%!important;min-height:0!important;padding:18px!important;}
  html body.home-shell-v256 main.home-page .home-results .home-results-inner{padding:24px 20px!important;border-radius:18px!important;gap:20px!important;}
  html body.home-shell-v256 main.home-page .home-results nav{grid-template-columns:minmax(0,1fr)!important;gap:10px!important;}

  /* Footer remains readable and inset. */
  html body .site-footer .footer-main{grid-template-columns:minmax(0,1fr)!important;gap:18px!important;padding-top:28px!important;padding-bottom:20px!important;}
  html body .site-footer .footer-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px 18px!important;}
  html body .site-footer .footer-bottom{gap:8px 16px!important;padding-top:14px!important;padding-bottom:18px!important;}

  /* Comfortable tap targets. */
  html body :is(
    .home-actions a,.home-results nav a,.continue-primary,.continue-secondary,
    .text-button,.service-open-link,.service-tool-actions a,.source-compare-actions a,
    .article-actions a,.article-actions-unified a,.guide-v101-next a,.guide-v101-diagnostics a
  ){min-height:44px!important;}
}

@media (max-width:520px){
  :root{--tl-final-mobile-gutter:14px;}
  html body .site-footer .footer-links{grid-template-columns:minmax(0,1fr)!important;}
  html body .playbook-facts,
  html body.reference-ui-v99 .playbook-facts{grid-template-columns:minmax(0,1fr)!important;}
  html body .playbook-facts>div:last-child:nth-child(odd){grid-column:auto!important;}
  html body .global-sidebar,
  html body.reference-ui-v99 .global-sidebar{width:min(308px,calc(100vw - 10px))!important;max-width:min(308px,calc(100vw - 10px))!important;}
}


/* ======================================================================
   v414 — REAL SOURCE ICONS + SINGLE CLEAN OUTLINE
   The old icon stack depended on multiple pseudo-element overrides and
   could leave a blank/clipped tile. Icons now render as real SVG images.
   ====================================================================== */
html body .traffic-hub-page .playbook-catalog-grid .playbook-card,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card{
  padding-left:32px!important;
  padding-right:28px!important;
  overflow:visible!important;
}
html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:18px!important;
  width:100%!important;
  min-height:78px!important;
  margin:0 0 18px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art{
  position:relative!important;
  inset:auto!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 76px!important;
  width:76px!important;
  height:76px!important;
  min-width:76px!important;
  margin:0!important;
  padding:11px!important;
  box-sizing:border-box!important;
  border-radius:18px!important;
  background-image:none!important;
  overflow:visible!important;
}
html body:not(.theme-dark) .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99:not(.theme-dark) .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art{
  background-color:#fbf7ef!important;
  border:1px solid #cfc1ae!important;
  box-shadow:0 6px 15px rgba(69,51,20,.07),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
html body.theme-dark .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99.theme-dark .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art{
  background-color:#18212a!important;
  border:1px solid #3e4a55!important;
  box-shadow:0 7px 16px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.04)!important;
}
html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::before,
html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::after,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::before,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art::after{
  content:none!important;
  display:none!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
}
html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art>img,
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art>img{
  display:block!important;
  width:52px!important;
  height:52px!important;
  max-width:52px!important;
  max-height:52px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
}
html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top>span:not(.playbook-hero-art),
html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top>span:not(.playbook-hero-art){
  display:flex!important;
  align-items:center!important;
  min-height:76px!important;
  margin:0!important;
  padding:0!important;
  font-size:10px!important;
  line-height:1.25!important;
  letter-spacing:.10em!important;
  font-weight:800!important;
  text-transform:uppercase!important;
}
html body:not(.theme-dark) .traffic-hub-page .playbook-catalog-grid .playbook-card-top>span:not(.playbook-hero-art){color:#8a6538!important;}
html body.theme-dark .traffic-hub-page .playbook-catalog-grid .playbook-card-top>span:not(.playbook-hero-art){color:#b69672!important;}

/* Source article hero icon uses the same real image and outline. */
html body main.source-playbook-page .source-title-row,
html body.reference-ui-v99 main.source-playbook-page .source-title-row{
  grid-template-columns:72px minmax(0,1fr)!important;
  gap:18px!important;
  align-items:center!important;
}
html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  flex-basis:72px!important;
  margin:0!important;
  padding:10px!important;
  box-sizing:border-box!important;
  border-radius:17px!important;
  background-image:none!important;
  text-indent:0!important;
  font-size:0!important;
  color:transparent!important;
  overflow:visible!important;
}
html body:not(.theme-dark) main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99:not(.theme-dark) main.source-playbook-page .source-hero-icon{
  background-color:#fbf7ef!important;
  border:1px solid #cfc1ae!important;
  box-shadow:0 6px 15px rgba(69,51,20,.07),inset 0 1px 0 rgba(255,255,255,.82)!important;
}
html body.theme-dark main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon{
  background-color:#18212a!important;
  border:1px solid #3e4a55!important;
  box-shadow:0 7px 16px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.04)!important;
}
html body main.source-playbook-page .source-hero-icon::before,
html body main.source-playbook-page .source-hero-icon::after,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::after{
  content:none!important;
  display:none!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
}
html body main.source-playbook-page .source-hero-icon>img,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon>img{
  display:block!important;
  width:50px!important;
  height:50px!important;
  max-width:50px!important;
  max-height:50px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
}

@media (max-width:900px){
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card{
    padding-left:24px!important;
    padding-right:20px!important;
  }
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top{
    gap:14px!important;
    min-height:68px!important;
  }
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art{
    flex-basis:66px!important;
    width:66px!important;
    height:66px!important;
    min-width:66px!important;
    padding:9px!important;
    border-radius:15px!important;
  }
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art>img,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top .playbook-hero-art>img{
    width:46px!important;
    height:46px!important;
    max-width:46px!important;
    max-height:46px!important;
  }
  html body .traffic-hub-page .playbook-catalog-grid .playbook-card-top>span:not(.playbook-hero-art),
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid .playbook-card-top>span:not(.playbook-hero-art){min-height:66px!important;}

  html body main.source-playbook-page .source-title-row,
  html body.reference-ui-v99 main.source-playbook-page .source-title-row{
    grid-template-columns:62px minmax(0,1fr)!important;
    gap:14px!important;
  }
  html body main.source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:62px!important;
    height:62px!important;
    min-width:62px!important;
    flex-basis:62px!important;
    padding:8px!important;
    border-radius:14px!important;
  }
  html body main.source-playbook-page .source-hero-icon>img,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon>img{
    width:44px!important;
    height:44px!important;
    max-width:44px!important;
    max-height:44px!important;
  }
}


/* v416 — fix broken inner source icons and clipped outlines in traffic/article rows */
html body .playbook-card-top,
html body.reference-ui-v99 .playbook-card-top,
html body main.source-playbook-page .source-title-row,
html body.reference-ui-v99 main.source-playbook-page .source-title-row{
  overflow:visible!important;
}

html body .traffic-hub-page .playbook-card,
html body.reference-ui-v99 .traffic-hub-page .playbook-card{
  overflow:visible!important;
}

html body .traffic-hub-page .playbook-card-top,
html body.reference-ui-v99 .traffic-hub-page .playbook-card-top{
  justify-content:flex-start!important;
  align-items:center!important;
  gap:16px!important;
  padding-left:10px!important;
  padding-right:0!important;
}

html body main.source-playbook-page .source-title-row,
html body.reference-ui-v99 main.source-playbook-page .source-title-row{
  align-items:center!important;
  gap:18px!important;
  padding-left:10px!important;
  padding-right:0!important;
}

html body .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art,
html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  background:none!important;
  background-image:none!important;
}

html body:not(.theme-dark) .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99:not(.theme-dark) .playbook-card-top .playbook-hero-art,
html body:not(.theme-dark) main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99:not(.theme-dark) main.source-playbook-page .source-hero-icon{
  background-color:#fbf7ef!important;
  border:1px solid #d2c3ae!important;
  box-shadow:0 6px 16px rgba(69,51,20,.07), inset 0 1px 0 rgba(255,255,255,.84)!important;
}

html body.theme-dark .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99.theme-dark .playbook-card-top .playbook-hero-art,
html body.theme-dark main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99.theme-dark main.source-playbook-page .source-hero-icon{
  background-color:#18212a!important;
  border:1px solid #3c4753!important;
  box-shadow:0 8px 18px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04)!important;
}

html body .playbook-card-top .playbook-hero-art::before,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::before,
html body .playbook-card-top .playbook-hero-art::after,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art::after,
html body main.source-playbook-page .source-hero-icon::before,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::before,
html body main.source-playbook-page .source-hero-icon::after,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon::after{
  content:none!important;
  display:none!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
}

html body .playbook-card-top .playbook-hero-art > img,
html body.reference-ui-v99 .playbook-card-top .playbook-hero-art > img,
html body main.source-playbook-page .source-hero-icon > img,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon > img{
  display:block!important;
  position:relative!important;
  z-index:1!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
}

html body .traffic-hub-page .playbook-card-top .playbook-hero-art,
html body.reference-ui-v99 .traffic-hub-page .playbook-card-top .playbook-hero-art{
  flex:0 0 76px!important;
  width:76px!important;
  height:76px!important;
  min-width:76px!important;
  padding:12px!important;
  border-radius:18px!important;
}
html body .traffic-hub-page .playbook-card-top .playbook-hero-art > img,
html body.reference-ui-v99 .traffic-hub-page .playbook-card-top .playbook-hero-art > img{
  width:52px!important;
  height:52px!important;
  max-width:52px!important;
  max-height:52px!important;
}
html body .traffic-hub-page .playbook-card-top > span:not(.playbook-hero-art),
html body.reference-ui-v99 .traffic-hub-page .playbook-card-top > span:not(.playbook-hero-art){
  display:flex!important;
  align-items:center!important;
  min-height:76px!important;
}

html body main.source-playbook-page .source-title-row,
html body.reference-ui-v99 main.source-playbook-page .source-title-row{
  grid-template-columns:72px minmax(0,1fr)!important;
}
html body main.source-playbook-page .source-hero-icon,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  flex-basis:72px!important;
  padding:10px!important;
  border-radius:17px!important;
}
html body main.source-playbook-page .source-hero-icon > img,
html body.reference-ui-v99 main.source-playbook-page .source-hero-icon > img{
  width:50px!important;
  height:50px!important;
  max-width:50px!important;
  max-height:50px!important;
}

@media (max-width:900px){
  html body .traffic-hub-page .playbook-card,
  html body.reference-ui-v99 .traffic-hub-page .playbook-card{
    padding-left:22px!important;
    padding-right:18px!important;
  }
  html body .traffic-hub-page .playbook-card-top,
  html body.reference-ui-v99 .traffic-hub-page .playbook-card-top{
    gap:14px!important;
    padding-left:8px!important;
  }
  html body .traffic-hub-page .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .traffic-hub-page .playbook-card-top .playbook-hero-art{
    flex-basis:66px!important;
    width:66px!important;
    height:66px!important;
    min-width:66px!important;
    padding:10px!important;
    border-radius:15px!important;
  }
  html body .traffic-hub-page .playbook-card-top .playbook-hero-art > img,
  html body.reference-ui-v99 .traffic-hub-page .playbook-card-top .playbook-hero-art > img{
    width:44px!important;
    height:44px!important;
    max-width:44px!important;
    max-height:44px!important;
  }
  html body .traffic-hub-page .playbook-card-top > span:not(.playbook-hero-art),
  html body.reference-ui-v99 .traffic-hub-page .playbook-card-top > span:not(.playbook-hero-art){
    min-height:66px!important;
  }
  html body main.source-playbook-page .source-title-row,
  html body.reference-ui-v99 main.source-playbook-page .source-title-row{
    grid-template-columns:62px minmax(0,1fr)!important;
    gap:14px!important;
    padding-left:8px!important;
  }
  html body main.source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:62px!important;
    height:62px!important;
    min-width:62px!important;
    flex-basis:62px!important;
    padding:9px!important;
    border-radius:15px!important;
  }
  html body main.source-playbook-page .source-hero-icon > img,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon > img{
    width:42px!important;
    height:42px!important;
    max-width:42px!important;
    max-height:42px!important;
  }
}

@media (max-width:430px){
  html body .traffic-hub-page .playbook-card-top .playbook-hero-art,
  html body.reference-ui-v99 .traffic-hub-page .playbook-card-top .playbook-hero-art{
    flex-basis:60px!important;
    width:60px!important;
    height:60px!important;
    min-width:60px!important;
    padding:9px!important;
    border-radius:14px!important;
  }
  html body .traffic-hub-page .playbook-card-top .playbook-hero-art > img,
  html body.reference-ui-v99 .traffic-hub-page .playbook-card-top .playbook-hero-art > img{
    width:40px!important;
    height:40px!important;
    max-width:40px!important;
    max-height:40px!important;
  }
  html body main.source-playbook-page .source-title-row,
  html body.reference-ui-v99 main.source-playbook-page .source-title-row{
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:12px!important;
    padding-left:7px!important;
  }
  html body main.source-playbook-page .source-hero-icon,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    flex-basis:58px!important;
    padding:8px!important;
    border-radius:14px!important;
  }
  html body main.source-playbook-page .source-hero-icon > img,
  html body.reference-ui-v99 main.source-playbook-page .source-hero-icon > img{
    width:38px!important;
    height:38px!important;
    max-width:38px!important;
    max-height:38px!important;
  }
}


/* ======================================================================
   v418 — stronger light-theme outlines across utility pages and sections
   ====================================================================== */
html body:not(.theme-dark){
  --v109-line:#d5cab8!important;
  --v109-line-strong:#c4b49d!important;
}

html body:not(.theme-dark) :is(
  .diagnostic-wizard-card,.source-compare-page,.saved-page,.wrap.notes-page,
  .wrap.glossary,.wrap.tool-suite,.wrap.tool-memory,.service-workflow,
  .service-start-grid,.section-groups,.section-bottom-links,.about-nav-card-v114,
  .about-nav-links-v114 a,.related-secondary,.related-reading,.calc-card,
  .tool-panel,.field-case,.journal-reading-grid>.saved-block,.notes-composer
){
  background:#fffdf8!important;
  border:1px solid var(--v109-line-strong)!important;
  border-radius:12px!important;
  box-shadow:none!important;
}

html body:not(.theme-dark).about-page-v114 .about-section-v114{
  margin:0 0 22px!important;
  padding:24px 20px 28px!important;
  border:1px solid var(--v109-line-strong)!important;
  border-radius:14px!important;
  background:#fffdf8!important;
  box-shadow:none!important;
}
html body:not(.theme-dark).about-page-v114 .about-section-v114:last-child{margin-bottom:0!important}
html body:not(.theme-dark).about-page-v114 .about-section-head-v114{margin-bottom:18px!important}
html body:not(.theme-dark).about-page-v114 .about-route-v114 li{border-color:var(--v109-line)!important}

html body:not(.theme-dark) .diagnostic-wizard-card{
  padding:26px!important;
  border-color:var(--v109-line-strong)!important;
  background:#fffdf8!important;
}
html body:not(.theme-dark) .problem-source-row{border-bottom:1px solid var(--v109-line)!important}
html body:not(.theme-dark) .problem-source-row select,
html body:not(.theme-dark) .problem-options button,
html body:not(.theme-dark) .diagnostic-after a,
html body:not(.theme-dark) .problem-result-links a{
  border-color:var(--v109-line-strong)!important;
  background:#fffdf9!important;
}
html body:not(.theme-dark) .problem-options button:hover,
html body:not(.theme-dark) .diagnostic-after a:hover,
html body:not(.theme-dark) .problem-result-links a:hover,
html body:not(.theme-dark) .problem-source-row select:focus{
  border-color:#b49f82!important;
  background:#f6f0e5!important;
}

html body:not(.theme-dark) :is(.article-aside.enhanced-rail .aside-block,.article-exit-nav a,.next-reading a){
  border-color:var(--v109-line-strong)!important;
  background:#fffdf8!important;
}

/* v419 — remove barely visible outer tints from structural light-theme wrappers.
   These sections already contain real cards inside them, so the wrapper itself
   should stay transparent instead of looking like a washed-out extra panel. */
html body:not(.theme-dark) :is(
  .traffic-hub-main.compact-block-v103,
  .traffic-hub-basics.compact-block-v103,
  .traffic-next.compact-block-v103,
  .source-compare-explain.compact-block-v103
),
html body.reference-ui-v99:not(.theme-dark) :is(
  .traffic-hub-main.compact-block-v103,
  .traffic-hub-basics.compact-block-v103,
  .traffic-next.compact-block-v103,
  .source-compare-explain.compact-block-v103
){
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}

/* v420 — history page outer shell in light theme should not have a visible outline */
html body:not(.theme-dark) .history-page.compact-block-v103,
html body.reference-ui-v99:not(.theme-dark) .history-page.compact-block-v103{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

/* ======================================================================
   v422 — light-theme mobile drawer must fully enter the viewport.
   v343 restored desktop light-sidebar width via --sidebar-width, but that
   variable is 0 in collapsed layouts. Re-assert a real drawer width only
   on mobile and keep the dark-theme contract untouched.
   ====================================================================== */
@media (max-width:1050px){
  html body:not(.theme-dark) .global-sidebar,
  html body.reference-ui-v99:not(.theme-dark) .global-sidebar{
    position:fixed!important;
    left:0!important;
    right:auto!important;
    width:min(340px,calc(100vw - 20px))!important;
    min-width:min(340px,calc(100vw - 20px))!important;
    max-width:min(340px,calc(100vw - 20px))!important;
    margin:0!important;
    box-sizing:border-box!important;
    transform:translate3d(calc(-100% - 2px),0,0)!important;
    will-change:transform!important;
  }

  html body:not(.theme-dark).mobile-nav-open .global-sidebar,
  html body.reference-ui-v99:not(.theme-dark).mobile-nav-open .global-sidebar{
    left:0!important;
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}

@media (max-width:430px){
  html body:not(.theme-dark) .global-sidebar,
  html body.reference-ui-v99:not(.theme-dark) .global-sidebar{
    width:calc(100vw - 14px)!important;
    min-width:calc(100vw - 14px)!important;
    max-width:calc(100vw - 14px)!important;
  }
}

/* v423 — mobile traffic source cards in a single full-width column */
@media (max-width: 900px){
  html body .traffic-hub-page .playbook-catalog-grid,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid,
  html body.theme-dark .traffic-hub-page .playbook-catalog-grid,
  html body.reference-ui-v99.theme-dark .traffic-hub-page .playbook-catalog-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
    max-width:100%!important;
  }

  html body .traffic-hub-page .playbook-catalog-grid > .playbook-card,
  html body.reference-ui-v99 .traffic-hub-page .playbook-catalog-grid > .playbook-card,
  html body.theme-dark .traffic-hub-page .playbook-catalog-grid > .playbook-card,
  html body.reference-ui-v99.theme-dark .traffic-hub-page .playbook-catalog-grid > .playbook-card{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
}

/* ======================================================================
   v424 — unify mobile sidebar width for both themes and make it slightly narrower.
   Light and dark drawers should open to the same final width.
   ====================================================================== */
@media (max-width:1050px){
  html body .global-sidebar,
  html body.reference-ui-v99 .global-sidebar,
  html body:not(.theme-dark) .global-sidebar,
  html body.reference-ui-v99:not(.theme-dark) .global-sidebar,
  html body.theme-dark .global-sidebar,
  html body.reference-ui-v99.theme-dark .global-sidebar{
    left:0!important;
    right:auto!important;
    width:min(300px,calc(100vw - 28px))!important;
    min-width:min(300px,calc(100vw - 28px))!important;
    max-width:min(300px,calc(100vw - 28px))!important;
    padding:14px 12px max(20px,env(safe-area-inset-bottom)) 14px!important;
    box-sizing:border-box!important;
    transform:translate3d(calc(-100% - 2px),0,0)!important;
    will-change:transform!important;
  }

  html body.mobile-nav-open .global-sidebar,
  html body.reference-ui-v99.mobile-nav-open .global-sidebar,
  html body:not(.theme-dark).mobile-nav-open .global-sidebar,
  html body.reference-ui-v99:not(.theme-dark).mobile-nav-open .global-sidebar,
  html body.theme-dark.mobile-nav-open .global-sidebar,
  html body.reference-ui-v99.theme-dark.mobile-nav-open .global-sidebar{
    left:0!important;
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}

@media (max-width:430px){
  html body .global-sidebar,
  html body.reference-ui-v99 .global-sidebar,
  html body:not(.theme-dark) .global-sidebar,
  html body.reference-ui-v99:not(.theme-dark) .global-sidebar,
  html body.theme-dark .global-sidebar,
  html body.reference-ui-v99.theme-dark .global-sidebar{
    width:calc(100vw - 24px)!important;
    min-width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
  }
}

/* ======================================================================
   v425 — unified footer cleanup across the whole site.
   Light theme mirrors the restored green sidebar; dark theme mirrors its
   sidebar as well. Same geometry everywhere, with a calmer mobile stack.
   ====================================================================== */
html body .site-footer,
html body.reference-ui-v99 .site-footer{
  position:relative!important;
  margin-top:54px!important;
  padding:0!important;
  background-image:none!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
html body:not(.theme-dark) .site-footer,
html body.reference-ui-v99:not(.theme-dark) .site-footer{
  background:#17382f!important;
  border-top:1px solid #2c564a!important;
  color:#dce9e4!important;
}
html body.theme-dark .site-footer,
html body.reference-ui-v99.theme-dark .site-footer{
  background:#0B1015!important;
  border-top:1px solid #303B46!important;
  color:#B8C3CA!important;
}

html body .site-footer > .wrap,
html body.reference-ui-v99 .site-footer > .wrap{
  width:min(calc(100% - 56px),1160px)!important;
  max-width:1160px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}

html body .site-footer .footer-main,
html body.reference-ui-v99 .site-footer .footer-main{
  min-height:0!important;
  display:grid!important;
  grid-template-columns:minmax(260px,.86fr) minmax(420px,1.35fr)!important;
  align-items:start!important;
  gap:70px!important;
  padding-top:38px!important;
  padding-bottom:32px!important;
}
html body .site-footer .footer-identity,
html body.reference-ui-v99 .site-footer .footer-identity{
  min-width:0!important;
  padding:0!important;
}
html body .site-footer .footer-brand,
html body.reference-ui-v99 .site-footer .footer-brand{
  display:inline-flex!important;
  align-items:center!important;
  min-height:34px!important;
  margin:0!important;
  padding:0!important;
  font:600 29px/1.08 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.02em!important;
  text-decoration:none!important;
}
html body:not(.theme-dark) .site-footer .footer-brand,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-brand{color:#ffffff!important;}
html body.theme-dark .site-footer .footer-brand,
html body.reference-ui-v99.theme-dark .site-footer .footer-brand{color:#EDF2F5!important;}

html body .site-footer .footer-identity p,
html body.reference-ui-v99 .site-footer .footer-identity p{
  max-width:390px!important;
  margin:10px 0 0!important;
  font-size:14px!important;
  line-height:1.62!important;
  opacity:1!important;
}
html body:not(.theme-dark) .site-footer .footer-identity p,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-identity p{color:#c7dcd4!important;}
html body.theme-dark .site-footer .footer-identity p,
html body.reference-ui-v99.theme-dark .site-footer .footer-identity p{color:#94A1AA!important;}

html body .site-footer .footer-links,
html body.reference-ui-v99 .site-footer .footer-links{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-content:start!important;
  justify-content:stretch!important;
  gap:8px 12px!important;
  width:100%!important;
  margin:0!important;
}
html body .site-footer .footer-links a,
html body.reference-ui-v99 .site-footer .footer-links a{
  display:flex!important;
  align-items:center!important;
  min-height:38px!important;
  margin:0!important;
  padding:8px 10px!important;
  border:1px solid transparent!important;
  border-radius:8px!important;
  font-size:12.5px!important;
  font-weight:650!important;
  line-height:1.25!important;
  text-decoration:none!important;
  opacity:1!important;
  transition:background .15s ease,border-color .15s ease,color .15s ease!important;
}
html body:not(.theme-dark) .site-footer .footer-links a,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-links a{
  color:#e4f0eb!important;
  background:rgba(255,255,255,.025)!important;
  border-color:rgba(255,255,255,.07)!important;
}
html body:not(.theme-dark) .site-footer .footer-links a:hover,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-links a:hover{
  color:#ffffff!important;
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(255,255,255,.13)!important;
}
html body.theme-dark .site-footer .footer-links a,
html body.reference-ui-v99.theme-dark .site-footer .footer-links a{
  color:#C3CDD3!important;
  background:#10171D!important;
  border-color:#263039!important;
}
html body.theme-dark .site-footer .footer-links a:hover,
html body.reference-ui-v99.theme-dark .site-footer .footer-links a:hover{
  color:#EDF2F5!important;
  background:#151E25!important;
  border-color:#394650!important;
}

html body .site-footer .footer-bottom,
html body.reference-ui-v99 .site-footer .footer-bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  min-height:50px!important;
  margin:0!important;
  padding-top:14px!important;
  padding-bottom:16px!important;
  font-size:10.5px!important;
  letter-spacing:.02em!important;
  opacity:1!important;
}
html body:not(.theme-dark) .site-footer .footer-bottom,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-bottom{
  border-top:1px solid rgba(255,255,255,.10)!important;
  color:#afc9bf!important;
}
html body.theme-dark .site-footer .footer-bottom,
html body.reference-ui-v99.theme-dark .site-footer .footer-bottom{
  border-top:1px solid #263039!important;
  color:#7F8D96!important;
}
html body:not(.theme-dark) .site-footer .footer-bottom :is(span,small),
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-bottom :is(span,small){color:#afc9bf!important;}
html body.theme-dark .site-footer .footer-bottom :is(span,small),
html body.reference-ui-v99.theme-dark .site-footer .footer-bottom :is(span,small){color:#7F8D96!important;}

/* Keep legacy footer pieces from resurfacing on any page. */
html body .site-footer :is(.footer-grid,.disclosure),
html body.reference-ui-v99 .site-footer :is(.footer-grid,.disclosure){display:none!important;}

@media (max-width:900px){
  html body .site-footer,
  html body.reference-ui-v99 .site-footer{
    margin-top:40px!important;
  }
  html body .site-footer > .wrap,
  html body.reference-ui-v99 .site-footer > .wrap{
    width:calc(100% - 32px)!important;
    max-width:none!important;
  }
  html body .site-footer .footer-main,
  html body.reference-ui-v99 .site-footer .footer-main{
    grid-template-columns:minmax(0,1fr)!important;
    gap:24px!important;
    padding-top:30px!important;
    padding-bottom:24px!important;
  }
  html body .site-footer .footer-identity p,
  html body.reference-ui-v99 .site-footer .footer-identity p{
    max-width:520px!important;
  }
  html body .site-footer .footer-links,
  html body.reference-ui-v99 .site-footer .footer-links{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  html body .site-footer .footer-links a,
  html body.reference-ui-v99 .site-footer .footer-links a{
    min-height:42px!important;
    padding:9px 10px!important;
  }
}

@media (max-width:520px){
  html body .site-footer > .wrap,
  html body.reference-ui-v99 .site-footer > .wrap{
    width:calc(100% - 28px)!important;
  }
  html body .site-footer .footer-main,
  html body.reference-ui-v99 .site-footer .footer-main{
    gap:20px!important;
    padding-top:28px!important;
    padding-bottom:22px!important;
  }
  html body .site-footer .footer-brand,
  html body.reference-ui-v99 .site-footer .footer-brand{
    font-size:26px!important;
  }
  html body .site-footer .footer-identity p,
  html body.reference-ui-v99 .site-footer .footer-identity p{
    font-size:13.5px!important;
    line-height:1.58!important;
  }
  html body .site-footer .footer-links,
  html body.reference-ui-v99 .site-footer .footer-links{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .site-footer .footer-bottom,
  html body.reference-ui-v99 .site-footer .footer-bottom{
    flex-direction:row!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:8px 14px!important;
    padding-top:13px!important;
    padding-bottom:max(18px,env(safe-area-inset-bottom))!important;
  }
}

/* ======================================================================
   v426 — restore a quieter footer: plain text links, no button cards.
   Topic groups are separated with thin rules instead of boxes.
   ====================================================================== */
html body .site-footer .footer-links,
html body.reference-ui-v99 .site-footer .footer-links{
  position:relative!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:auto auto!important;
  grid-auto-flow:column!important;
  align-content:start!important;
  gap:7px 0!important;
  width:100%!important;
  margin:0!important;
}

html body .site-footer .footer-links a,
html body.reference-ui-v99 .site-footer .footer-links a{
  position:relative!important;
  display:block!important;
  min-height:0!important;
  margin:0!important;
  padding:4px 18px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:12.5px!important;
  font-weight:600!important;
  line-height:1.45!important;
  text-decoration:none!important;
  opacity:1!important;
  transition:color .15s ease,opacity .15s ease!important;
}
html body .site-footer .footer-links a:nth-child(1),
html body .site-footer .footer-links a:nth-child(2),
html body.reference-ui-v99 .site-footer .footer-links a:nth-child(1),
html body.reference-ui-v99 .site-footer .footer-links a:nth-child(2){padding-left:0!important;}

/* Vertical topic dividers: Start | Work | Personal | About. */
html body .site-footer .footer-links a:nth-child(3),
html body .site-footer .footer-links a:nth-child(4),
html body .site-footer .footer-links a:nth-child(5),
html body .site-footer .footer-links a:nth-child(6),
html body .site-footer .footer-links a:nth-child(7),
html body.reference-ui-v99 .site-footer .footer-links a:nth-child(3),
html body.reference-ui-v99 .site-footer .footer-links a:nth-child(4),
html body.reference-ui-v99 .site-footer .footer-links a:nth-child(5),
html body.reference-ui-v99 .site-footer .footer-links a:nth-child(6),
html body.reference-ui-v99 .site-footer .footer-links a:nth-child(7){
  border-left:1px solid rgba(255,255,255,.14)!important;
}
html body.theme-dark .site-footer .footer-links a:nth-child(3),
html body.theme-dark .site-footer .footer-links a:nth-child(4),
html body.theme-dark .site-footer .footer-links a:nth-child(5),
html body.theme-dark .site-footer .footer-links a:nth-child(6),
html body.theme-dark .site-footer .footer-links a:nth-child(7),
html body.reference-ui-v99.theme-dark .site-footer .footer-links a:nth-child(3),
html body.reference-ui-v99.theme-dark .site-footer .footer-links a:nth-child(4),
html body.reference-ui-v99.theme-dark .site-footer .footer-links a:nth-child(5),
html body.reference-ui-v99.theme-dark .site-footer .footer-links a:nth-child(6),
html body.reference-ui-v99.theme-dark .site-footer .footer-links a:nth-child(7){
  border-left-color:#2e3942!important;
}

html body:not(.theme-dark) .site-footer .footer-links a,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-links a{color:#dce9e4!important;}
html body:not(.theme-dark) .site-footer .footer-links a:hover,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-links a:hover{color:#ffffff!important;opacity:1!important;}
html body.theme-dark .site-footer .footer-links a,
html body.reference-ui-v99.theme-dark .site-footer .footer-links a{color:#b9c4ca!important;}
html body.theme-dark .site-footer .footer-links a:hover,
html body.reference-ui-v99.theme-dark .site-footer .footer-links a:hover{color:#edf2f5!important;}

@media (max-width:900px){
  html body .site-footer .footer-links,
  html body.reference-ui-v99 .site-footer .footer-links{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:none!important;
    grid-auto-flow:row!important;
    gap:0!important;
  }
  html body .site-footer .footer-links a,
  html body.reference-ui-v99 .site-footer .footer-links a{
    padding:8px 12px!important;
    border-left:0!important;
  }
  html body .site-footer .footer-links a:nth-child(odd),
  html body.reference-ui-v99 .site-footer .footer-links a:nth-child(odd){padding-left:0!important;}
  html body .site-footer .footer-links a:nth-child(even),
  html body.reference-ui-v99 .site-footer .footer-links a:nth-child(even){padding-right:0!important;}

  /* Each pair is one topic group; thin horizontal rules divide the groups. */
  html body .site-footer .footer-links a:nth-child(n+3),
  html body.reference-ui-v99 .site-footer .footer-links a:nth-child(n+3){
    border-top:1px solid rgba(255,255,255,.12)!important;
  }
  html body.theme-dark .site-footer .footer-links a:nth-child(n+3),
  html body.reference-ui-v99.theme-dark .site-footer .footer-links a:nth-child(n+3){
    border-top-color:#2a343d!important;
  }
}

@media (max-width:520px){
  html body .site-footer .footer-links,
  html body.reference-ui-v99 .site-footer .footer-links{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .site-footer .footer-links a,
  html body.reference-ui-v99 .site-footer .footer-links a{
    padding:6px 0!important;
    border-top:0!important;
  }
  html body .site-footer .footer-links a:nth-child(3),
  html body .site-footer .footer-links a:nth-child(5),
  html body .site-footer .footer-links a:nth-child(7),
  html body.reference-ui-v99 .site-footer .footer-links a:nth-child(3),
  html body.reference-ui-v99 .site-footer .footer-links a:nth-child(5),
  html body.reference-ui-v99 .site-footer .footer-links a:nth-child(7){
    margin-top:8px!important;
    padding-top:13px!important;
    border-top:1px solid rgba(255,255,255,.12)!important;
  }
  html body.theme-dark .site-footer .footer-links a:nth-child(3),
  html body.theme-dark .site-footer .footer-links a:nth-child(5),
  html body.theme-dark .site-footer .footer-links a:nth-child(7),
  html body.reference-ui-v99.theme-dark .site-footer .footer-links a:nth-child(3),
  html body.reference-ui-v99.theme-dark .site-footer .footer-links a:nth-child(5),
  html body.reference-ui-v99.theme-dark .site-footer .footer-links a:nth-child(7){
    border-top-color:#2a343d!important;
  }
}

/* ======================================================================
   v427 — compact mobile drawer height + stable light menu button state.
   Mobile only: the sidebar ends after its content instead of filling the
   entire viewport, while still becoming scrollable on shorter screens.
   ====================================================================== */
@media (max-width:1050px){
  html body .global-sidebar,
  html body.reference-ui-v99 .global-sidebar,
  html body:not(.theme-dark) .global-sidebar,
  html body.reference-ui-v99:not(.theme-dark) .global-sidebar,
  html body.theme-dark .global-sidebar,
  html body.reference-ui-v99.theme-dark .global-sidebar{
    top:68px!important;
    bottom:auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - 82px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    border-bottom-right-radius:14px!important;
  }

  /* The light-theme menu trigger must not fall back to the generic white
     button/focus state after the drawer closes. */
  html body:not(.theme-dark) .site-header .mobile-nav-toggle,
  html body:not(.theme-dark) .site-header .mobile-nav-toggle:hover,
  html body:not(.theme-dark) .site-header .mobile-nav-toggle:focus,
  html body:not(.theme-dark) .site-header .mobile-nav-toggle:focus-visible,
  html body:not(.theme-dark) .site-header .mobile-nav-toggle:active,
  html body:not(.theme-dark) .site-header .mobile-nav-toggle[aria-expanded="true"],
  html body:not(.theme-dark) .site-header .mobile-nav-toggle[aria-expanded="false"],
  html body.reference-ui-v99:not(.theme-dark) .site-header .ref-mobile-menu,
  html body.reference-ui-v99:not(.theme-dark) .site-header .ref-mobile-menu:hover,
  html body.reference-ui-v99:not(.theme-dark) .site-header .ref-mobile-menu:focus,
  html body.reference-ui-v99:not(.theme-dark) .site-header .ref-mobile-menu:focus-visible,
  html body.reference-ui-v99:not(.theme-dark) .site-header .ref-mobile-menu:active,
  html body.reference-ui-v99:not(.theme-dark) .site-header .ref-mobile-menu[aria-expanded="true"],
  html body.reference-ui-v99:not(.theme-dark) .site-header .ref-mobile-menu[aria-expanded="false"]{
    background:rgba(0,0,0,.18)!important;
    border-color:rgba(255,255,255,.20)!important;
    color:#ffffff!important;
    box-shadow:none!important;
    outline:none!important;
  }
}

@media (max-width:430px){
  html body .global-sidebar,
  html body.reference-ui-v99 .global-sidebar{
    max-height:calc(100dvh - 78px)!important;
  }
}


/* ======================================================================
   v428 — footer cleanup
   Remove ghost backgrounds behind footer text, keep the bottom row aligned,
   and use solid continuous separators instead of broken segmented strokes.
   ====================================================================== */
html body .site-footer,
html body.reference-ui-v99 .site-footer{
  overflow:hidden!important;
}
html body .site-footer > .wrap,
html body.reference-ui-v99 .site-footer > .wrap{
  width:min(calc(100% - 64px),var(--content-max))!important;
  max-width:var(--content-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  background:transparent!important;
}
html body .site-footer .footer-main,
html body.reference-ui-v99 .site-footer .footer-main{
  grid-template-columns:minmax(260px,1fr) minmax(0,1.45fr)!important;
  gap:42px!important;
  align-items:start!important;
  padding-top:30px!important;
  padding-bottom:24px!important;
}
html body .site-footer .footer-links,
html body.reference-ui-v99 .site-footer .footer-links{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  grid-template-rows:none!important;
  gap:0!important;
  width:100%!important;
  margin:0!important;
  align-items:stretch!important;
  background:none!important;
  box-shadow:none!important;
}
html body .site-footer .footer-link-group,
html body.reference-ui-v99 .site-footer .footer-link-group{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:10px!important;
  min-height:100%!important;
  margin:0!important;
  padding:0 18px!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body .site-footer .footer-link-group:first-child,
html body.reference-ui-v99 .site-footer .footer-link-group:first-child{padding-left:0!important;}
html body .site-footer .footer-link-group:last-child,
html body.reference-ui-v99 .site-footer .footer-link-group:last-child{padding-right:0!important;}
html body .site-footer .footer-link-group + .footer-link-group,
html body.reference-ui-v99 .site-footer .footer-link-group + .footer-link-group{
  border-left:1px solid rgba(255,255,255,.16)!important;
}
html body.theme-dark .site-footer .footer-link-group + .footer-link-group,
html body.reference-ui-v99.theme-dark .site-footer .footer-link-group + .footer-link-group{
  border-left-color:#2c3740!important;
}
html body:not(.theme-dark) .site-footer .footer-link-group + .footer-link-group,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-link-group + .footer-link-group{
  border-left-color:#2e4c43!important;
}
html body .site-footer .footer-links a,
html body.reference-ui-v99 .site-footer .footer-links a{
  display:block!important;
  width:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  background-image:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
  outline:0!important;
  font-size:13px!important;
  font-weight:650!important;
  line-height:1.45!important;
  text-decoration:none!important;
}
html body .site-footer .footer-links a::before,
html body.reference-ui-v99 .site-footer .footer-links a::before,
html body .site-footer .footer-links a::after,
html body.reference-ui-v99 .site-footer .footer-links a::after{
  display:none!important;
}
html body .site-footer .footer-bottom,
html body.reference-ui-v99 .site-footer .footer-bottom{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:18px!important;
  width:min(calc(100% - 64px),var(--content-max))!important;
  max-width:var(--content-max)!important;
  margin:0 auto!important;
  padding:15px 0 18px!important;
  border-top:1px solid rgba(255,255,255,.11)!important;
  background:transparent!important;
}
html body.theme-dark .site-footer .footer-bottom,
html body.reference-ui-v99.theme-dark .site-footer .footer-bottom{border-top-color:#2c3740!important;}
html body:not(.theme-dark) .site-footer .footer-bottom,
html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-bottom{border-top-color:#2e4c43!important;}
html body .site-footer .footer-bottom span,
html body.reference-ui-v99 .site-footer .footer-bottom span{
  display:block!important;
  margin:0!important;
  padding:0!important;
  background:none!important;
  box-shadow:none!important;
}
@media (max-width:900px){
  html body .site-footer > .wrap,
  html body.reference-ui-v99 .site-footer > .wrap,
  html body .site-footer .footer-bottom,
  html body.reference-ui-v99 .site-footer .footer-bottom{
    width:calc(100% - 32px)!important;
    max-width:none!important;
  }
  html body .site-footer .footer-main,
  html body.reference-ui-v99 .site-footer .footer-main{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
  html body .site-footer .footer-links,
  html body.reference-ui-v99 .site-footer .footer-links{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0!important;
  }
  html body .site-footer .footer-link-group,
  html body.reference-ui-v99 .site-footer .footer-link-group{
    padding:12px 0!important;
    border-left:0!important;
  }
  html body .site-footer .footer-link-group:nth-child(odd),
  html body.reference-ui-v99 .site-footer .footer-link-group:nth-child(odd){padding-right:14px!important;}
  html body .site-footer .footer-link-group:nth-child(even),
  html body.reference-ui-v99 .site-footer .footer-link-group:nth-child(even){padding-left:14px!important;border-left:1px solid rgba(255,255,255,.16)!important;}
  html body.theme-dark .site-footer .footer-link-group:nth-child(even),
  html body.reference-ui-v99.theme-dark .site-footer .footer-link-group:nth-child(even){border-left-color:#2c3740!important;}
  html body:not(.theme-dark) .site-footer .footer-link-group:nth-child(even),
  html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-link-group:nth-child(even){border-left-color:#2e4c43!important;}
  html body .site-footer .footer-link-group:nth-child(n+3),
  html body.reference-ui-v99 .site-footer .footer-link-group:nth-child(n+3){border-top:1px solid rgba(255,255,255,.11)!important;}
  html body.theme-dark .site-footer .footer-link-group:nth-child(n+3),
  html body.reference-ui-v99.theme-dark .site-footer .footer-link-group:nth-child(n+3){border-top-color:#2c3740!important;}
  html body:not(.theme-dark) .site-footer .footer-link-group:nth-child(n+3),
  html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-link-group:nth-child(n+3){border-top-color:#2e4c43!important;}
}
@media (max-width:560px){
  html body .site-footer > .wrap,
  html body.reference-ui-v99 .site-footer > .wrap,
  html body .site-footer .footer-bottom,
  html body.reference-ui-v99 .site-footer .footer-bottom{
    width:calc(100% - 28px)!important;
  }
  html body .site-footer .footer-links,
  html body.reference-ui-v99 .site-footer .footer-links{grid-template-columns:1fr!important;}
  html body .site-footer .footer-link-group,
  html body.reference-ui-v99 .site-footer .footer-link-group{
    padding:10px 0!important;
    border-left:0!important;
  }
  html body .site-footer .footer-link-group + .footer-link-group,
  html body.reference-ui-v99 .site-footer .footer-link-group + .footer-link-group{
    border-left:0!important;
    border-top:1px solid rgba(255,255,255,.11)!important;
  }
  html body.theme-dark .site-footer .footer-link-group + .footer-link-group,
  html body.reference-ui-v99.theme-dark .site-footer .footer-link-group + .footer-link-group{border-top-color:#2c3740!important;}
  html body:not(.theme-dark) .site-footer .footer-link-group + .footer-link-group,
  html body.reference-ui-v99:not(.theme-dark) .site-footer .footer-link-group + .footer-link-group{border-top-color:#2e4c43!important;}
  html body .site-footer .footer-bottom,
  html body.reference-ui-v99 .site-footer .footer-bottom{
    flex-direction:row!important;
    flex-wrap:wrap!important;
    justify-content:space-between!important;
    gap:8px 14px!important;
    padding-bottom:max(18px,env(safe-area-inset-bottom))!important;
  }
}

/* ======================================================================
   v431 — live article rating counts + mobile feedback placement.
   ====================================================================== */
html body .rail-feedback-button small,
html body.reference-ui-v99 .rail-feedback-button small{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:14px!important;
  margin-left:5px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:inherit!important;
  font-size:10.5px!important;
  font-weight:700!important;
  line-height:1!important;
  opacity:.78!important;
}
html body .rail-feedback-mobile,
html body.reference-ui-v99 .rail-feedback-mobile{
  display:none!important;
}
@media (max-width:1050px){
  html body .rail-feedback-mobile,
  html body.reference-ui-v99 .rail-feedback-mobile{
    display:block!important;
    width:100%!important;
    margin:26px 0 18px!important;
  }
  html body .rail-feedback-mobile .rail-feedback,
  html body.reference-ui-v99 .rail-feedback-mobile .rail-feedback{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
    width:100%!important;
    margin:0!important;
    padding:14px 16px!important;
    border:1px solid #d8d2c7!important;
    border-radius:10px!important;
    background:transparent!important;
  }
  html body.theme-dark .rail-feedback-mobile .rail-feedback,
  html body.reference-ui-v99.theme-dark .rail-feedback-mobile .rail-feedback{
    border-color:#303b46!important;
    background:transparent!important;
  }
  html body .rail-feedback-mobile .rail-feedback-actions,
  html body.reference-ui-v99 .rail-feedback-mobile .rail-feedback-actions{
    margin:0!important;
    flex:0 0 auto!important;
  }
}

/* Desktop fallback for CMS-created articles that have no right rail. */
html body .rail-feedback-mobile.rail-feedback-fallback,
html body.reference-ui-v99 .rail-feedback-mobile.rail-feedback-fallback{
  display:block!important;
  width:100%!important;
  margin:30px 0 20px!important;
}
html body .rail-feedback-mobile.rail-feedback-fallback .rail-feedback,
html body.reference-ui-v99 .rail-feedback-mobile.rail-feedback-fallback .rail-feedback{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  margin:0!important;
  padding:14px 16px!important;
  border:1px solid #d8d2c7!important;
  border-radius:10px!important;
  background:transparent!important;
}
html body.theme-dark .rail-feedback-mobile.rail-feedback-fallback .rail-feedback,
html body.reference-ui-v99.theme-dark .rail-feedback-mobile.rail-feedback-fallback .rail-feedback{
  border-color:#303b46!important;
}


/* ======================================================================
   v433 — publication prep: legal pages + privacy choice.
   ====================================================================== */
.legal-main-v433{min-height:70vh!important;}
.legal-hero-v433{padding-top:52px!important;padding-bottom:34px!important;}
.legal-layout-v433{max-width:980px!important;padding-top:10px!important;padding-bottom:60px!important;}
.legal-content-v433{display:grid!important;gap:18px!important;}
.legal-content-v433>section{padding:24px 26px!important;border:1px solid rgba(46,68,60,.16)!important;border-radius:14px!important;background:rgba(255,255,255,.62)!important;box-shadow:none!important;}
.legal-content-v433 h2{margin:0 0 10px!important;font-size:22px!important;line-height:1.2!important;}
.legal-content-v433 p{margin:8px 0 0!important;max-width:850px!important;font-size:14.5px!important;line-height:1.72!important;}
.legal-content-v433 a{font-weight:700!important;text-underline-offset:3px!important;}
.legal-action-v433{min-height:42px!important;padding:9px 14px!important;border:1px solid #315447!important;border-radius:9px!important;background:transparent!important;color:#24483e!important;font-weight:750!important;cursor:pointer!important;}
html body.theme-dark .legal-content-v433>section,
html body.reference-ui-v99.theme-dark .legal-content-v433>section{background:#111820!important;border-color:#2a343d!important;}
html body.theme-dark .legal-action-v433,
html body.reference-ui-v99.theme-dark .legal-action-v433{border-color:#46535d!important;color:#d8e2e7!important;}

.tl-privacy-banner{position:fixed!important;left:calc(var(--academy-sidebar,282px) + 22px)!important;right:22px!important;bottom:20px!important;z-index:99999!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;max-width:1120px!important;margin-left:auto!important;padding:16px 18px!important;border:1px solid rgba(50,79,69,.22)!important;border-radius:14px!important;background:#f8faf8!important;color:#253a33!important;box-shadow:0 16px 44px rgba(17,34,28,.18)!important;}
.tl-privacy-copy{min-width:0!important;}
.tl-privacy-copy b{display:block!important;font-size:14px!important;line-height:1.25!important;}
.tl-privacy-copy p{margin:4px 0 0!important;max-width:720px!important;font-size:12.5px!important;line-height:1.5!important;color:#5f6c67!important;}
.tl-privacy-copy a{display:inline-block!important;margin-top:5px!important;font-size:11.5px!important;font-weight:700!important;color:#315447!important;text-underline-offset:3px!important;}
.tl-privacy-actions{display:flex!important;flex:0 0 auto!important;gap:8px!important;}
.tl-privacy-actions button{min-height:39px!important;padding:8px 12px!important;border:1px solid #c8d0cc!important;border-radius:9px!important;background:#fff!important;color:#30443d!important;font-size:12px!important;font-weight:750!important;cursor:pointer!important;white-space:nowrap!important;}
.tl-privacy-actions button.primary{border-color:#315447!important;background:#315447!important;color:#fff!important;}
html body.theme-dark .tl-privacy-banner,
html body.reference-ui-v99.theme-dark .tl-privacy-banner{background:#111820!important;border-color:#303b46!important;color:#e6edf1!important;box-shadow:0 18px 46px rgba(0,0,0,.36)!important;}
html body.theme-dark .tl-privacy-copy p,
html body.reference-ui-v99.theme-dark .tl-privacy-copy p{color:#9da9b1!important;}
html body.theme-dark .tl-privacy-copy a,
html body.reference-ui-v99.theme-dark .tl-privacy-copy a{color:#c7d1d7!important;}
html body.theme-dark .tl-privacy-actions button,
html body.reference-ui-v99.theme-dark .tl-privacy-actions button{background:#161f26!important;border-color:#394650!important;color:#d9e2e7!important;}
html body.theme-dark .tl-privacy-actions button.primary,
html body.reference-ui-v99.theme-dark .tl-privacy-actions button.primary{background:#d9e2e7!important;border-color:#d9e2e7!important;color:#111820!important;}
@media(max-width:1050px){.tl-privacy-banner{left:16px!important;right:16px!important;bottom:16px!important;max-width:none!important;}}
@media(max-width:700px){
  .legal-hero-v433{padding-top:34px!important;padding-bottom:24px!important;}
  .legal-layout-v433{padding-bottom:44px!important;}
  .legal-content-v433>section{padding:20px 18px!important;border-radius:12px!important;}
  .tl-privacy-banner{align-items:stretch!important;flex-direction:column!important;gap:12px!important;padding:14px!important;}
  .tl-privacy-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important;}
  .tl-privacy-actions button{width:100%!important;}
}


/* ======================================================================
   v434 — prerelease SEO support block (diagnostics).
   ====================================================================== */
html body .diagnostic-seo-guide{margin-top:18px!important;margin-bottom:34px!important;}
html body .diagnostic-seo-inner{padding:24px 26px!important;border:1px solid var(--line,#d9dedb)!important;border-radius:14px!important;background:transparent!important;}
html body .diagnostic-seo-inner h2{margin:4px 0 9px!important;font-size:clamp(22px,2.4vw,30px)!important;line-height:1.18!important;}
html body .diagnostic-seo-inner>div>p:last-child{max-width:900px!important;margin:0!important;line-height:1.65!important;}
html body .diagnostic-seo-links{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin-top:20px!important;}
html body .diagnostic-seo-links a{display:block!important;min-width:0!important;padding:15px 16px!important;border:1px solid var(--line,#d9dedb)!important;border-radius:10px!important;background:transparent!important;text-decoration:none!important;}
html body .diagnostic-seo-links a b{display:block!important;margin-bottom:5px!important;}
html body .diagnostic-seo-links a span{display:block!important;font-size:13px!important;line-height:1.52!important;}
html body.theme-dark .diagnostic-seo-inner,html body.theme-dark .diagnostic-seo-links a{border-color:#303b46!important;}
@media(max-width:800px){html body .diagnostic-seo-inner{padding:20px 18px!important;}html body .diagnostic-seo-links{grid-template-columns:1fr!important;}}
