/* PRBLEM Directory v1.3.0 — original implementation inspired by dense technical indexes. */
:root{
  --bg:#ddd;--surface:#f0f0f0;--surface-soft:#e3e3e3;--surface-muted:#d5d5d5;
  --text:#23262b;--muted:#6d7278;--border:#c7c7c7;--blue:#13598b;
  --blue-soft:#deebf2;--purple-soft:#eae1ee;--green:#26743e;--green-soft:#e1efdf;
  --warning:#926200;--warning-soft:#f8edc9;--danger:#a9282c;--danger-soft:#f6e4e6;
  --shadow:none;
  --font:'Roboto Condensed','Arial Narrow','Liberation Sans Narrow',Arial,sans-serif;
  --headfont:Impact,'Roboto Condensed','Arial Narrow',Arial,sans-serif;
  --badgefont:'Chakra Petch','Roboto Condensed',Arial,sans-serif;
  --prblem-sidebar-width:244px;--prblem-header-height:46px;
  --prblem-rail:#26282a;--prblem-rail-hover:#33363b;--prblem-darkbar:#252525;
  --prblem-stripe:#d8d8d8;--prblem-even:#e8e8e8;
}
html[data-mode=dark]{
  --bg:#242628;--surface:#323538;--surface-soft:#3c4043;--surface-muted:#42464a;
  --text:#ecedef;--muted:#c4c8cc;--border:#555b60;--blue:#96d3ff;--blue-soft:#304858;
  --purple-soft:#3d3547;--green:#8bc6a0;--green-soft:#344c40;
  --warning:#ebcb81;--warning-soft:#514834;--danger:#f29a9e;--danger-soft:#523c3f;
  --prblem-rail:#181a1d;--prblem-rail-hover:#35383d;--prblem-darkbar:#101113;
  --prblem-stripe:#303337;--prblem-even:#393d41;
}
body.prblem-core{background:var(--bg);color:var(--text);font:400 14px/1.45 var(--font);letter-spacing:0;-webkit-font-smoothing:antialiased}
.prblem-core h1,.prblem-core h2,.prblem-core h3,.prblem-core h4{letter-spacing:0;font-family:var(--font);font-weight:800;line-height:1.18}
.prblem-core a{transition:color .1s linear}
.prblem-core a:hover{color:var(--blue)}
.prblem-core button,.prblem-core input,.prblem-core select,.prblem-core textarea{font-family:var(--font)}
/* All public templates live beside the persistent dark directory rail. */
body.prblem-core #prblem-content,body.prblem-core .prblem-footer{margin-left:var(--prblem-sidebar-width)}
body.prblem-core .prblem-header{position:sticky;top:0;height:var(--prblem-header-height);border-bottom:1px solid #b9b9b9;background:#f4f4f4;backdrop-filter:none;z-index:100}
html[data-mode=dark] body.prblem-core .prblem-header{background:#303235;border-bottom-color:#52565b}
body.prblem-core.admin-bar .prblem-header{top:32px}
body.prblem-core .prblem-header-inner{min-height:45px;height:45px;max-width:none;gap:16px;padding:0 13px}
body.prblem-core .prblem-brand{gap:7px;font:900 19px/.82 var(--headfont);text-transform:uppercase;letter-spacing:-.035em;color:#16191c;min-width:196px}
html[data-mode=dark] body.prblem-core .prblem-brand{color:#fff}
body.prblem-core .prblem-brandmark{height:35px;width:35px;background:#272727;color:#fff;border-radius:0;box-shadow:inset 0 0 0 2px #101010;font:900 16px/1 var(--headfont)}
body.prblem-core .prblem-header-search{flex:0 1 440px;margin:0 auto;height:31px;min-width:0;background:#fff;border:1px solid #b4b4b4;border-radius:0;box-shadow:inset 0 1px 3px #0001;padding:0 4px 0 10px;gap:0}
html[data-mode=dark] body.prblem-core .prblem-header-search{background:#25282b;border-color:#666}
body.prblem-core .prblem-header-search input{font-size:13px;line-height:1.2;color:var(--text);padding:3px 2px;height:26px}
body.prblem-core .prblem-header-search input::placeholder{color:#858585}
body.prblem-core .prblem-directory-search-button{border:0;border-left:1px solid #ddd;background:transparent;padding:2px 5px;height:25px;color:#7b7b7b;display:grid;place-items:center;border-radius:0}
body.prblem-core .prblem-directory-search-button:hover{color:#0d6499;background:#e7eef3}
body.prblem-core .prblem-directory-search-button .prblem-svg{width:17px;height:17px}
body.prblem-core .prblem-header-nav{gap:14px;margin-left:auto}
body.prblem-core .prblem-header-nav>a,body.prblem-core .prblem-header-nav>button{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;text-decoration:none}
body.prblem-core .prblem-header-nav .prblem-svg{width:15px;height:15px;color:#3c4b55}
body.prblem-core .prblem-header-nav .prblem-search-action{background:transparent;color:var(--text);border:0;padding:5px}
body.prblem-core .prblem-mode-toggle,body.prblem-core .prblem-menu-toggle{width:29px;height:29px;border-radius:2px;border:1px solid #c4c4c4;background:#e7e7e7;color:#393939}
html[data-mode=dark] body.prblem-core .prblem-mode-toggle,html[data-mode=dark] body.prblem-core .prblem-menu-toggle{background:#3e4145;color:#eee;border-color:#656a6f}
body.prblem-core .prblem-mode-toggle .prblem-svg{width:17px;height:17px}
body.prblem-core .prblem-suggest{top:calc(100% + 1px);border:1px solid var(--border);border-radius:0;background:var(--surface);box-shadow:0 8px 22px #0004;overflow:auto;scrollbar-width:none;max-height:none;padding:2px}
body.prblem-core .prblem-suggest::-webkit-scrollbar{width:0;height:0;display:none}
/* Dual-part left navigation (narrow icon strip + category drawer). */
body.prblem-core .prblem-site-sidebar{position:fixed;top:var(--prblem-header-height);left:0;bottom:0;width:var(--prblem-sidebar-width);display:grid;grid-template-columns:54px minmax(0,1fr);background:var(--prblem-rail);color:#e6e6e6;border-right:1px solid #5a5d60;z-index:65}
body.prblem-core.admin-bar .prblem-site-sidebar{top:calc(var(--prblem-header-height) + 32px)}
body.prblem-core .prblem-directory-rail{display:flex;flex-direction:column;align-items:stretch;background:#1d2022;border-right:2px solid #0898d7}
body.prblem-core .prblem-directory-rail a,body.prblem-core .prblem-directory-rail button{display:grid;place-items:center;color:#60bdd8;background:transparent;border:0;border-bottom:1px solid #494e52;border-radius:0;height:47px;width:100%;padding:0}
body.prblem-core .prblem-directory-rail .prblem-svg{height:25px;width:25px}
body.prblem-core .prblem-directory-rail a:hover,body.prblem-core .prblem-directory-rail button:hover{background:#363b3e;color:#fff}
body.prblem-core .prblem-directory-sidebar-links{min-width:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#555 #252525}
body.prblem-core .prblem-directory-sidebar-heading{min-height:57px;padding:10px 9px 6px 12px;background:#1d1f22;border-bottom:1px dotted #4b4d50;color:#fff;display:flex;flex-direction:column}
body.prblem-core .prblem-directory-sidebar-heading strong{font:900 16px/1.15 var(--headfont);text-transform:uppercase}
body.prblem-core .prblem-directory-sidebar-heading small{font-size:10px;color:#a4a8ad;margin-top:4px}
body.prblem-core .prblem-directory-sidebar-label{font-size:10px;font-weight:900;letter-spacing:.07em;color:#bbc6cb;padding:10px 11px 7px;background:#161719;border-top:1px solid #515151;border-bottom:1px solid #515151}
body.prblem-core .prblem-directory-sidebar-links a,body.prblem-core .prblem-directory-sidebar-links button{display:flex;align-items:center;gap:7px;padding:10px 9px 9px 12px;width:100%;color:#85c8e9;font:600 12px/1.15 var(--font);border:0;border-bottom:1px dotted #5a5a5a;background:transparent;text-align:left;min-height:34px;text-decoration:underline;text-underline-offset:1px}
body.prblem-core .prblem-directory-sidebar-links .prblem-svg{height:14px;width:14px;flex:0 0 14px;color:#bccad3}
body.prblem-core .prblem-directory-sidebar-links a:hover,body.prblem-core .prblem-directory-sidebar-links button:hover,body.prblem-core .prblem-directory-sidebar-links a[aria-current=page]{background:var(--prblem-rail-hover);color:#fff}
/* The main page is an indexed, compact table, not a giant marketing hero. */
body.prblem-core .prblem-directory-home{min-height:calc(100vh - var(--prblem-header-height));background:var(--bg)}
body.prblem-core .prblem-directory-pagebar{display:flex;gap:12px;align-items:center;background:var(--prblem-darkbar);color:#fff;min-height:49px;padding:8px 14px;border-bottom:2px solid #111}
body.prblem-core .prblem-directory-pagebar span{font-size:10px;color:#c3c3c3;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
body.prblem-core .prblem-directory-pagebar h1{font-size:20px;line-height:1.15;font-weight:800;margin:0;color:#fff}
body.prblem-core .prblem-directory-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,29%);gap:28px;align-items:start;max-width:1650px;margin:auto;padding:22px 24px 35px}
body.prblem-core .prblem-directory-primary,body.prblem-core .prblem-directory-right{min-width:0}
body.prblem-core .prblem-directory-group{margin-bottom:27px;scroll-margin-top:56px}
body.prblem-core .prblem-directory-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:36px;margin-bottom:7px}
body.prblem-core .prblem-directory-toolbar h2{font:700 19px/1.2 var(--font);margin:0;color:var(--text);text-decoration:underline;text-decoration-color:#777;text-underline-offset:3px}
body.prblem-core .prblem-directory-filter{display:flex;align-items:center;gap:3px;background:#cacaca;padding:3px;border:1px solid #b7b7b7}
html[data-mode=dark] body.prblem-core .prblem-directory-filter{background:#292d31;border-color:#616161}
body.prblem-core .prblem-directory-filter a{padding:3px 7px;color:var(--text);font-size:11px;white-space:nowrap;text-decoration:underline}
body.prblem-core .prblem-directory-filter a[aria-current=page]{color:#fff;background:#313131;text-decoration:none}
body.prblem-core .prblem-directory-table-header{display:grid;grid-template-columns:94px minmax(0,1fr) 205px;align-items:center;gap:8px;background:linear-gradient(#f5f5f5,#d7d7d7);border:1px solid #c1c1c1;border-bottom:2px solid #a4a4a4;min-height:28px;padding:2px 9px;color:#65717c;font-size:11px}
html[data-mode=dark] body.prblem-core .prblem-directory-table-header{background:#464a4e;color:#e4e4e4;border-color:#606060}
body.prblem-core .prblem-directory-feed{border-top:1px solid #fff}
body.prblem-core .prblem-directory-feed-row{display:grid;grid-template-columns:94px minmax(0,1fr) 205px;align-items:start;gap:8px;min-height:35px;padding:6px 9px 5px;background:var(--prblem-stripe);border-bottom:1px solid #d0d0d0}
body.prblem-core .prblem-directory-feed-row:nth-child(even){background:var(--prblem-even)}
html[data-mode=dark] body.prblem-core .prblem-directory-feed-row{border-bottom-color:#45494d}
body.prblem-core .prblem-directory-feed-row time{font:400 11px/1.3 var(--font);color:#777;white-space:nowrap;padding-top:2px}
html[data-mode=dark] body.prblem-core .prblem-directory-feed-row time{color:#bdbfc3}
body.prblem-core .prblem-directory-feed-entry{min-width:0}
body.prblem-core .prblem-directory-feed-entry h3{font:700 13px/1.25 var(--font);margin:0}
body.prblem-core .prblem-directory-feed-entry a,body.prblem-core .prblem-directory-bottom-link a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
body.prblem-core .prblem-directory-feed-entry p{font-size:10px;line-height:1.3;color:var(--muted);margin:2px 0 0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
body.prblem-core .prblem-directory-row-badges{display:flex;align-items:center;align-content:flex-start;flex-wrap:wrap;gap:3px;min-width:0;padding-top:1px}
body.prblem-core .prblem-directory-topic{font-size:9px;color:#878787;margin-left:3px;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.prblem-core .prblem-directory-bottom-link{display:flex;justify-content:center;background:linear-gradient(#f3f3f3,#dedede);border:1px solid #c0c0c0;padding:5px;font-size:12px}
html[data-mode=dark] body.prblem-core .prblem-directory-bottom-link{background:#43474a;border-color:#64686b}
body.prblem-core .prblem-directory-count{color:var(--muted);font:700 11px var(--font)}
body.prblem-core .prblem-directory-tools-list{border-top:1px solid #ccc}
body.prblem-core .prblem-directory-tool-row{display:flex;gap:8px;align-items:center;min-height:35px;background:var(--prblem-even);border-bottom:1px solid #c4c4c4;padding:5px 8px;font-size:13px;color:var(--blue);text-decoration:underline}
body.prblem-core .prblem-directory-tool-row:nth-child(even){background:var(--prblem-stripe)}
body.prblem-core .prblem-directory-tool-row .prblem-svg{width:15px;height:15px;flex:0 0 15px}
body.prblem-core .prblem-directory-tool-row strong{flex:1;min-width:0;font-weight:700}
body.prblem-core .prblem-directory-tool-num{color:#858585;font-size:10px;min-width:17px}
body.prblem-core .prblem-directory-tool-arrow{margin-left:3px;text-decoration:none;font-size:17px}
/* Utility / topic rail on the right, like a classic index sidebar. */
body.prblem-core .prblem-directory-right{padding-top:9px}
body.prblem-core .prblem-directory-widget{margin-bottom:23px;scroll-margin-top:56px}
body.prblem-core .prblem-directory-widget>h2{font:700 21px/1.2 var(--font);color:var(--text);text-decoration:underline;text-decoration-color:#777;text-underline-offset:3px;margin:0 0 5px}
body.prblem-core .prblem-directory-widget>p{font-size:11px;color:var(--muted);margin:0 0 8px}
body.prblem-core .prblem-directory-widget-list{border-top:1px solid #c8c8c8}
body.prblem-core .prblem-directory-widget-list a{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 3px;min-height:29px;line-height:1.2;border-bottom:1px solid var(--border);font-size:12px;text-decoration:underline;color:var(--blue)}
body.prblem-core .prblem-directory-widget-list a:nth-child(even){background:#cecece55}
body.prblem-core .prblem-directory-widget-list a>.prblem-svg:first-child{width:16px;height:16px;flex:0 0 16px;color:#4a7c8a}
body.prblem-core .prblem-directory-widget-list a>span{min-width:0;flex:1}
body.prblem-core .prblem-directory-widget-list a>.prblem-svg:last-child{margin-left:auto;width:13px;height:13px;flex:0 0 13px}
body.prblem-core .prblem-directory-help button{display:inline-flex;align-items:center;gap:6px;background:#eee;border:1px solid #aaa;border-radius:0;font-weight:700;padding:6px 10px;font-size:11px;margin:0 4px 6px 0;color:#262626}
html[data-mode=dark] body.prblem-core .prblem-directory-help button{background:#464a50;color:#eee}
body.prblem-core .prblem-directory-help .prblem-svg{height:15px;width:15px}
/* 200+ reusable badges; standardized condensed uppercase lettering and flat variants. */
body.prblem-core .prblem-badge-list,.prblem-badge-list{display:inline-flex;flex-wrap:wrap;align-items:center;gap:3px;vertical-align:middle}
.prblem-tax-badge{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;max-width:100%;min-height:15px;padding:1px 4px 0;background:#4c5862;border:1px solid #313b42;border-radius:1px;color:#fff!important;text-shadow:0 1px 0 #0005;text-decoration:none!important;letter-spacing:.035em;white-space:nowrap;line-height:1.05;font:800 10px/1.2 var(--badgefont,'Roboto Condensed','Arial Narrow',Arial,sans-serif);text-transform:uppercase}
.prblem-tax-badge--blue{background:#0d67a6;border-color:#034e7a}
.prblem-tax-badge--navy{background:#173e64;border-color:#142e44}
.prblem-tax-badge--sky{background:#3581bd;border-color:#21638e}
.prblem-tax-badge--cyan{background:#0091a7;border-color:#087183}
.prblem-tax-badge--green{background:#237a45;border-color:#125931}
.prblem-tax-badge--lime{background:#6a8e32;border-color:#436e1c}
.prblem-tax-badge--teal{background:#257f80;border-color:#186364}
.prblem-tax-badge--orange{background:#c65d1d;border-color:#9b3c0c}
.prblem-tax-badge--red{background:#bd1226;border-color:#8d0e1c}
.prblem-tax-badge--purple{background:#7751a0;border-color:#553479}
.prblem-tax-badge--pink{background:#a84078;border-color:#872a60}
.prblem-tax-badge--gray{background:#81878c;border-color:#62676a}
.prblem-tax-badge--black{background:#222;border-color:#000}
.prblem-tax-badge--gold{background:#97700c;border-color:#71510a}
.prblem-tax-badge-list{display:flex;gap:4px}
/* Archive, pages, search and long technical documentation share the flat grayscale UI. */
body.prblem-core .prblem-list-wrap{width:min(100% - 32px,1420px);padding:24px 0 60px;min-height:70vh}
body.prblem-core .prblem-list-head{background:var(--surface);padding:15px 16px;margin-bottom:18px;border:1px solid var(--border);border-radius:0}
body.prblem-core .prblem-list-head h1{font:800 clamp(22px,2.5vw,31px)/1.15 var(--font);margin:8px 0 10px;color:var(--text)}
body.prblem-core .prblem-list-head .prblem-eyebrow{font-size:11px}
body.prblem-core .prblem-regular-page{background:var(--surface);width:min(calc(100% - 32px),1100px);padding:28px 34px;margin:22px auto 45px;border:1px solid var(--border);border-radius:0;box-shadow:none}
body.prblem-core .prblem-regular-page h1{font-size:28px;border-bottom:3px double var(--border);padding-bottom:10px}
body.prblem-core .prblem-guides-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--border);border-left:1px solid var(--border)}
body.prblem-core .prblem-guide-card{background:var(--prblem-even);border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0;padding:12px 14px;min-height:117px}
body.prblem-core .prblem-guide-card:nth-child(4n+2),body.prblem-core .prblem-guide-card:nth-child(4n+3){background:var(--prblem-stripe)}
body.prblem-core .prblem-guide-card h2,body.prblem-core .prblem-guide-card h3{font-size:15px;margin:5px 0}
body.prblem-core .prblem-guide-card h2 a,body.prblem-core .prblem-guide-card h3 a,body.prblem-core .prblem-readmore{color:var(--blue);text-decoration:underline}
body.prblem-core .prblem-guide-card p{font-size:12px;line-height:1.4;margin:5px 0;color:var(--muted)}
body.prblem-core .prblem-guide-card>.prblem-badge-list{display:flex;margin:0 0 4px}
body.prblem-core .prblem-content-filters a,body.prblem-core .prblem-result-tabs a,body.prblem-core .prblem-search-categories a{border-radius:0}
body.prblem-core .prblem-search-hero{background:var(--surface);border:1px solid var(--border);border-radius:0;box-shadow:none}
body.prblem-core .prblem-search-hero button{border-radius:0;background:#35495d}
body.prblem-core .prblem-docshell{width:min(calc(100% - 28px),1420px);margin:14px auto 55px;display:grid;grid-template-columns:minmax(0,1fr) minmax(195px,240px);gap:14px;align-items:start}
body.prblem-core .prblem-docshell>.prblem-leftsidebar{display:none}
body.prblem-core .prblem-panel{border-radius:0;border:1px solid var(--border);background:var(--surface);box-shadow:none;padding:14px;margin-bottom:12px}
body.prblem-core .prblem-panel h2{font-size:14px;color:var(--text)}
body.prblem-core .prblem-panel p{font-size:12px}
body.prblem-core .prblem-rightsidebar{top:58px;max-height:none;overflow:visible;position:sticky}
body.prblem-core.admin-bar .prblem-rightsidebar{top:90px}
body.prblem-core .prblem-article{background:var(--surface);border:1px solid var(--border);border-radius:0;box-shadow:none;padding:21px 28px;min-width:0}
body.prblem-core .prblem-article h1{font:800 clamp(23px,2.5vw,32px)/1.13 var(--font);margin:8px 0 13px;letter-spacing:0}
body.prblem-core .prblem-article h2{font-size:21px}
body.prblem-core .prblem-article h3{font-size:17px}
body.prblem-core .prblem-article-body{font-size:14px;line-height:1.6;color:var(--text)}
body.prblem-core .prblem-article-body a{color:var(--blue);text-decoration:underline}
body.prblem-core .prblem-article-deck{font-size:14px;color:var(--muted)}
body.prblem-core .prblem-article>.prblem-badge-list{display:flex;margin:0 0 10px;gap:5px}
body.prblem-core .prblem-chip,body.prblem-core .prblem-status,body.prblem-core .prblem-action-dialog,body.prblem-core .prblem-action-dialog input,body.prblem-core .prblem-action-dialog textarea{border-radius:0}
body.prblem-core .prblem-footer{background:#eeeeee;border-top:2px solid #bbb;color:#3a3a3a;padding:20px 22px}
html[data-mode=dark] body.prblem-core .prblem-footer{background:#303235;border-color:#626569;color:#eee}
body.prblem-core .prblem-footer-inner{max-width:1250px}
body.prblem-core .prblem-footer-brand{font:900 19px var(--headfont)}
body.prblem-core .prblem-footer a{text-decoration:underline}
body.prblem-core .prblem-ad-slot,body.prblem-core .prblem-ad-container{max-width:100%;overflow-x:auto}
/* Long editor-driven content and decorated code blocks remain readable in both modes. */
body.prblem-core .prblem-code-box{max-width:100%}
body.prblem-core .prblem-article-body pre{max-width:100%;overflow:auto}
body.prblem-core .prblem-article-body img{max-width:100%;height:auto}
body.prblem-core .prblem-article-body table{display:block;max-width:100%;overflow-x:auto}
@media(max-width:1320px){
  :root{--prblem-sidebar-width:220px}
  body.prblem-core .prblem-site-sidebar{grid-template-columns:46px minmax(0,1fr)}
  body.prblem-core .prblem-directory-content{gap:16px;padding:17px 15px}
  body.prblem-core .prblem-directory-table-header,body.prblem-core .prblem-directory-feed-row{grid-template-columns:80px minmax(0,1fr) 160px}
  body.prblem-core .prblem-brand{min-width:166px}
}
@media(max-width:1100px){
  body.prblem-core .prblem-header-nav>a{font-size:0;gap:0}
  body.prblem-core .prblem-header-nav>a .prblem-svg{width:19px;height:19px}
  body.prblem-core .prblem-header-nav .prblem-search-action span{display:none}
  body.prblem-core .prblem-directory-content{grid-template-columns:minmax(0,1fr) minmax(190px,32%)}
  body.prblem-core .prblem-directory-table-header,body.prblem-core .prblem-directory-feed-row{grid-template-columns:73px minmax(0,1fr) 117px;gap:5px}
  body.prblem-core .prblem-directory-row-badges .prblem-directory-topic{display:none}
  body.prblem-core .prblem-directory-toolbar{align-items:flex-start;flex-direction:column;gap:6px}
}
@media(max-width:960px){
  body.prblem-core #prblem-content,body.prblem-core .prblem-footer{margin-left:0}
  body.prblem-core .prblem-site-sidebar{display:none}
  body.prblem-core .prblem-menu-toggle{display:grid}
  body.prblem-core .prblem-header-nav{display:none}
  body.prblem-core .prblem-mobile-menu{position:absolute;top:100%;left:0;right:0;z-index:120;border-bottom:1px solid var(--border);background:var(--surface);box-shadow:0 9px 24px #0003;max-height:calc(100dvh - 46px);overflow:auto}
  body.prblem-core .prblem-mobile-menu.is-open{display:block}
  body.prblem-core .prblem-mobile-menu a,body.prblem-core .prblem-mobile-menu summary{display:block;padding:10px 18px;border-bottom:1px solid var(--border);font-size:13px;color:var(--text);background:transparent;text-decoration:none}
  body.prblem-core .prblem-mobile-browse-list a{padding-left:34px}
  body.prblem-core .prblem-header-inner{gap:10px}
  body.prblem-core .prblem-brand{min-width:0;font-size:18px}
  body.prblem-core .prblem-header-search{flex:1;max-width:none}
  body.prblem-core .prblem-docshell{grid-template-columns:minmax(0,1fr) 220px}
}
@media(max-width:700px){
  body.prblem-core .prblem-directory-pagebar{display:block;padding:9px 12px;min-height:50px}
  body.prblem-core .prblem-directory-pagebar span{font-size:9px}
  body.prblem-core .prblem-directory-pagebar h1{font-size:17px;margin:1px 0}
  body.prblem-core .prblem-directory-content{display:block;padding:13px 11px}
  body.prblem-core .prblem-directory-right{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  body.prblem-core .prblem-directory-widget{min-width:0}
  body.prblem-core .prblem-directory-widget:first-child{grid-column:1/-1}
  body.prblem-core .prblem-directory-table-header,body.prblem-core .prblem-directory-feed-row{grid-template-columns:73px minmax(0,1fr) minmax(95px,28%)}
  body.prblem-core .prblem-directory-row-badges .prblem-directory-topic{display:none}
  body.prblem-core .prblem-directory-toolbar{flex-direction:row;align-items:center}
  body.prblem-core .prblem-docshell{display:block;width:calc(100% - 20px)}
  body.prblem-core .prblem-rightsidebar{position:static;max-height:none}
  body.prblem-core .prblem-article{padding:17px 15px}
  body.prblem-core .prblem-guides-grid{grid-template-columns:1fr}
  body.prblem-core .prblem-guide-card:nth-child(2n){background:var(--prblem-stripe)}
  body.prblem-core .prblem-regular-page{width:calc(100% - 20px);padding:17px}
}
@media(max-width:430px){
  body.prblem-core .prblem-header-inner{padding:0 7px;gap:6px}
  body.prblem-core .prblem-brand{font-size:15px;gap:4px}
  body.prblem-core .prblem-brandmark{width:26px;height:26px;font-size:13px}
  body.prblem-core .prblem-header-search{padding-left:5px}
  body.prblem-core .prblem-header-search input{font-size:11px}
  body.prblem-core .prblem-mode-toggle,body.prblem-core .prblem-menu-toggle{width:25px;height:27px}
  body.prblem-core .prblem-directory-pagebar h1{font-size:15px}
  body.prblem-core .prblem-directory-table-header{grid-template-columns:63px minmax(0,1fr) 88px;gap:4px;font-size:9px;padding:3px 5px}
  body.prblem-core .prblem-directory-feed-row{grid-template-columns:63px minmax(0,1fr) 88px;gap:4px;padding:6px 5px}
  body.prblem-core .prblem-directory-feed-row time{white-space:normal;font-size:10px}
  body.prblem-core .prblem-directory-feed-entry h3{font-size:12px}
  body.prblem-core .prblem-directory-feed-entry p{display:none}
  body.prblem-core .prblem-directory-toolbar h2{font-size:16px}
  body.prblem-core .prblem-directory-filter a{font-size:10px;padding:3px 4px}
  body.prblem-core .prblem-directory-right{grid-template-columns:1fr}
  body.prblem-core .prblem-directory-widget:first-child{grid-column:auto}
}
@media(max-width:782px){body.prblem-core.admin-bar .prblem-header{top:46px}}
@media(prefers-reduced-motion:reduce){body.prblem-core *{scroll-behavior:auto!important}}
/* The earlier theme intentionally hid interior search at mobile widths; this design uses it globally. */
body.prblem-core .prblem-header-search{display:flex}
@media(max-width:430px){body.prblem-core .prblem-header-search{display:flex;flex:1 1 auto;min-width:78px;overflow:visible}}

/* One badge always fits within its available compact platform cell. */
body.prblem-core .prblem-directory-row-badges .prblem-tax-badge{max-width:100%;overflow:hidden;text-overflow:ellipsis}
/* Unified square treatment for the article-specific UI (without changing behavior). */
body.prblem-core .prblem-quick-answer,
body.prblem-core .prblem-article-feedback,
body.prblem-core .prblem-method-tabs,
body.prblem-core .prblem-method-tabs button,
body.prblem-core .prblem-callout,
body.prblem-core .prblem-code-box,
body.prblem-core .prblem-code-head,
body.prblem-core .prblem-checklist-section,
body.prblem-core .prblem-archive,
body.prblem-core .prblem-video-placeholder{border-radius:0}
body.prblem-core .prblem-quick-answer{background:var(--surface-soft);border-color:var(--border)}
body.prblem-core .prblem-method-tabs{border:1px solid var(--border);padding:2px}
body.prblem-core .prblem-method-tabs button.is-active{background:#364958;color:#fff}
body.prblem-core .prblem-article-feedback{background:var(--surface-soft)}
body.prblem-core .prblem-checklist-section{background:var(--surface-soft);border:1px solid var(--border);padding:14px;margin:22px 0}
body.prblem-core .prblem-code-box{box-shadow:none;border-color:var(--border)}
body.prblem-core .prblem-code-box .prblem-code-head{background:#33383d;color:#f1f1f1}
body.prblem-core .prblem-code-box .prblem-code-body{background:#e9e9e9;color:#242424}
html[data-mode=dark] body.prblem-core .prblem-code-box .prblem-code-body{background:#24272a;color:#f1f1f1}
body.prblem-core .prblem-callout--success{background:var(--green-soft)}
body.prblem-core .prblem-callout--warning{background:var(--warning-soft)}
body.prblem-core .prblem-callout--danger{background:var(--danger-soft)}

/* PRBLEM multicolor segment labels; override legacy white important color. */
.prblem-tax-badge .prblem-badge-part{display:inline;color:inherit;white-space:pre;line-height:inherit;text-shadow:inherit}
.prblem-badge-live-preview{margin:10px 0;padding:8px 12px;background:#e6e6e6;border:1px solid #bbc1c7;min-height:24px}
.prblem-badge-segment-row{display:flex;align-items:center;gap:6px;margin:6px 0}
.prblem-badge-segment-row input[type=text]{max-width:225px;flex:1;min-width:55px}
.prblem-badge-segment-row input[type=color]{width:45px;height:30px;padding:1px;flex:0 0 45px;cursor:pointer}
.prblem-badge-segment-row .button{white-space:nowrap}

/* v1.4.0 - bounded and centered technical directory, header and footer. */
:root{--prblem-shell-width:1320px;--prblem-sidebar-width:220px}
body.prblem-core .prblem-header,
body.prblem-core #prblem-content,
body.prblem-core .prblem-footer{
  width:min(100%,var(--prblem-shell-width));
  max-width:var(--prblem-shell-width);
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}
body.prblem-core .prblem-header{border-left:1px solid var(--border);border-right:1px solid var(--border)}
body.prblem-core .prblem-header-inner{max-width:100%;padding-inline:12px}
body.prblem-core .prblem-site-sidebar{
  left:max(0px,calc((100vw - var(--prblem-shell-width))/2));
  width:var(--prblem-sidebar-width);
}
body.prblem-core #prblem-content,body.prblem-core .prblem-footer{
  padding-left:var(--prblem-sidebar-width);
  border-left:1px solid var(--border);
  border-right:1px solid var(--border);
}
body.prblem-core .prblem-directory-content{max-width:100%;grid-template-columns:minmax(0,1fr) minmax(240px,29%);gap:24px;padding:23px 22px 35px}
body.prblem-core .prblem-directory-pagebar{padding:8px 22px}
body.prblem-core .prblem-footer-inner{max-width:none}
body.prblem-core .prblem-docshell{max-width:100%}
@media(max-width:1100px){
  body.prblem-core .prblem-directory-content{gap:15px;padding-inline:15px}
}
@media(max-width:960px){
  body.prblem-core .prblem-site-sidebar{display:none}
  body.prblem-core #prblem-content,body.prblem-core .prblem-footer{padding-left:0}
  body.prblem-core .prblem-directory-content{grid-template-columns:minmax(0,1fr) minmax(190px,32%)}
  body.prblem-core .prblem-directory-pagebar{padding-inline:14px}
}
@media(max-width:700px){
  body.prblem-core .prblem-directory-content{display:block;padding:13px 11px}
  body.prblem-core .prblem-directory-pagebar{padding:9px 12px}
}

/* v1.4.0: Improve small-print legibility in the dark navigation rail. */
body.prblem-core .prblem-directory-sidebar-heading{min-height:65px;padding:11px 10px 9px 12px}
body.prblem-core .prblem-directory-sidebar-heading strong{font-size:17px;line-height:1.17;color:#fff}
body.prblem-core .prblem-directory-sidebar-heading small{font-size:11px;line-height:1.3;color:#d6e0e6;margin-top:5px}
body.prblem-core .prblem-directory-sidebar-label{font-size:11px;line-height:1.3;letter-spacing:.035em;color:#e4edf0;padding:10px 10px 9px 12px}
body.prblem-core .prblem-directory-sidebar-links a,
body.prblem-core .prblem-directory-sidebar-links button{
 font-family:var(--font);font-size:13px;font-weight:700;line-height:1.28;
 color:#d5eeff;min-height:38px;padding:10px 8px 10px 11px;
 text-decoration:underline;text-decoration-color:#a9c8db;text-underline-offset:2px;
 overflow-wrap:normal;word-break:normal;
}
body.prblem-core .prblem-directory-sidebar-links .prblem-svg{color:#b9e5f8;width:15px;height:15px;flex-basis:15px}
body.prblem-core .prblem-directory-sidebar-links a:hover,
body.prblem-core .prblem-directory-sidebar-links a:focus-visible,
body.prblem-core .prblem-directory-sidebar-links button:hover,
body.prblem-core .prblem-directory-sidebar-links button:focus-visible,
body.prblem-core .prblem-directory-sidebar-links a[aria-current=page]{color:#fff;background:#42515d;text-decoration-color:#fff;outline-offset:-2px}
/* Pixel badges only. Site text, article copy and code stay in their proper typefaces. */
body.prblem-core .prblem-tax-badge,.prblem-tax-badge{
 font-family:var(--badgefont,'Silkscreen','Courier New',monospace);
 font-size:11px;font-weight:400;letter-spacing:0;line-height:1.1;
 min-height:15px;padding:1px 4px 1px;border-radius:0;
 text-shadow:none;-webkit-font-smoothing:none;font-smooth:never;
}
/* Source code: readable tokens on light code background, original layout preserved. */
body.prblem-core .prblem-code-box .prblem-code-body{background:#eceff1;color:#1d2934}
body.prblem-core .prblem-code-box .prblem-token-string{color:#166534}
body.prblem-core .prblem-code-box .prblem-token-keyword{color:#5331a5}
body.prblem-core .prblem-code-box .prblem-token-boolean{color:#932853}
body.prblem-core .prblem-code-box .prblem-token-number{color:#8c4b0a}
body.prblem-core .prblem-code-box .prblem-token-comment{color:#506077}
body.prblem-core .prblem-code-box .prblem-token-variable{color:#005c91}
body.prblem-core .prblem-code-box .prblem-line-num{color:#566579;border-color:#b8c2ca}
html[data-mode=dark] body.prblem-core .prblem-code-box .prblem-code-body{background:#1c222a;color:#ecf0f5}
html[data-mode=dark] body.prblem-core .prblem-code-box .prblem-token-string{color:#a7edaa}
html[data-mode=dark] body.prblem-core .prblem-code-box .prblem-token-keyword{color:#c4b3ff}
html[data-mode=dark] body.prblem-core .prblem-code-box .prblem-token-boolean{color:#f7b8d5}
html[data-mode=dark] body.prblem-core .prblem-code-box .prblem-token-number{color:#ffdb98}
html[data-mode=dark] body.prblem-core .prblem-code-box .prblem-token-comment{color:#abbacf}
html[data-mode=dark] body.prblem-core .prblem-code-box .prblem-token-variable{color:#a1daff}
html[data-mode=dark] body.prblem-core .prblem-code-box .prblem-line-num{color:#9aaec6;border-color:#475569}
@media(max-width:960px){
  body.prblem-core .prblem-mobile-menu a,body.prblem-core .prblem-mobile-menu button{font-size:14px;line-height:1.3}
}

/* v1.4.1: truly narrow, centered directory shell.
   The top bar, fixed category rail, content and footer share one ~1000px frame.
   White/gray gutters outside the frame contain no interface elements. */
:root{
  --prblem-shell-width:1000px;
  --prblem-sidebar-width:184px;
}
body.prblem-core .prblem-header,
body.prblem-core #prblem-content,
body.prblem-core .prblem-footer{
  width:min(100%,var(--prblem-shell-width));
  max-width:var(--prblem-shell-width);
  margin-inline:auto;
  box-sizing:border-box;
}
body.prblem-core .prblem-site-sidebar{
  left:max(0px,calc((100% - var(--prblem-shell-width))/2));
  width:var(--prblem-sidebar-width);
  grid-template-columns:39px minmax(0,1fr);
}
body.prblem-core .prblem-directory-rail a,
body.prblem-core .prblem-directory-rail button{height:44px}
body.prblem-core #prblem-content,
body.prblem-core .prblem-footer{
  padding-left:var(--prblem-sidebar-width);
  margin-left:auto;
  margin-right:auto;
  min-width:0;
}
body.prblem-core .prblem-header-inner{
  width:100%;max-width:100%;padding-inline:10px;gap:12px;
}
body.prblem-core .prblem-brand{min-width:142px;font-size:17px;gap:7px}
body.prblem-core .prblem-brandmark{width:30px;height:30px;font-size:14px}
body.prblem-core .prblem-header-search{flex:1 1 290px;max-width:390px;min-width:100px}
body.prblem-core .prblem-header-nav{gap:10px}
body.prblem-core .prblem-header-nav>a,
body.prblem-core .prblem-header-nav>button{font-size:11px}
body.prblem-core .prblem-directory-content{
  max-width:100%;
  grid-template-columns:minmax(0,1fr) 210px;
  gap:14px;
  padding:16px 12px 30px;
}
body.prblem-core .prblem-directory-pagebar{padding:8px 12px}
body.prblem-core .prblem-directory-pagebar h1{font-size:17px}
body.prblem-core .prblem-directory-table-header,
body.prblem-core .prblem-directory-feed-row{grid-template-columns:72px minmax(0,1fr) 118px;gap:5px;padding-inline:6px}
body.prblem-core .prblem-directory-row-badges .prblem-directory-topic{display:none}
body.prblem-core .prblem-directory-toolbar{gap:7px}
body.prblem-core .prblem-directory-toolbar h2{font-size:17px}
body.prblem-core .prblem-directory-widget>h2{font-size:18px}
body.prblem-core .prblem-docshell{
  grid-template-columns:minmax(0,1fr) minmax(180px,200px);
  gap:10px;
}
body.prblem-core .prblem-article{padding:19px 20px}
body.prblem-core .prblem-list-wrap{max-width:100%}
body.prblem-core .prblem-regular-page{max-width:calc(100% - 20px)}
/* Tablet and mobile still use the original one-column/overlay navigation. */
@media(max-width:960px){
  body.prblem-core .prblem-site-sidebar{display:none}
  body.prblem-core #prblem-content,
  body.prblem-core .prblem-footer{padding-left:0}
  body.prblem-core .prblem-directory-content{
    grid-template-columns:minmax(0,1fr) minmax(190px,30%);
    gap:14px;padding:15px 12px 26px;
  }
  body.prblem-core .prblem-directory-table-header,
  body.prblem-core .prblem-directory-feed-row{grid-template-columns:73px minmax(0,1fr) 117px}
  body.prblem-core .prblem-header-inner{gap:10px}
  body.prblem-core .prblem-brand{min-width:0}
  body.prblem-core .prblem-header-search{max-width:none}
}
@media(max-width:700px){
  body.prblem-core .prblem-directory-content{display:block;padding:13px 11px}
  body.prblem-core .prblem-docshell{display:block}
}
@media(max-width:430px){
  body.prblem-core .prblem-header-inner{gap:6px;padding-inline:7px}
  body.prblem-core .prblem-brand{font-size:15px;gap:4px}
  body.prblem-core .prblem-brandmark{width:26px;height:26px}
  body.prblem-core .prblem-header-search{min-width:78px}
  body.prblem-core .prblem-directory-table-header{grid-template-columns:63px minmax(0,1fr) 88px}
  body.prblem-core .prblem-directory-feed-row{grid-template-columns:63px minmax(0,1fr) 88px}
}

/* v1.4.1: badge chips are flat and borderless, with only gentle 2px corners.
   Preserve Silkscreen pixels, palette backgrounds and per-character foreground colors. */
body.prblem-core .prblem-tax-badge,
.prblem-tax-badge{
  border:0; border-radius:2px; box-shadow:none; background-clip:padding-box;
  text-shadow:none; appearance:none;
}

/* v1.5.0: 1120px outer shell with unchanged side rail; give long solution titles more room. */
:root{--prblem-shell-width:1120px;--prblem-sidebar-width:184px}
body.prblem-core .prblem-directory-content{grid-template-columns:minmax(0,1fr) 194px;gap:10px;padding:14px 9px 27px}
body.prblem-core .prblem-directory-table-header,
body.prblem-core .prblem-directory-feed-row{grid-template-columns:60px minmax(0,1fr) 180px;gap:5px;padding-inline:5px}
body.prblem-core .prblem-directory-table-header span:first-child{text-align:center}
body.prblem-core .prblem-directory-feed-entry h3{font-size:13px;line-height:1.23}
body.prblem-core .prblem-directory-row-icons{min-width:0;display:flex;align-items:center;justify-content:flex-start;min-height:20px}
body.prblem-core .prblem-directory-icon-set{display:flex;align-items:center;flex-flow:row nowrap;gap:1px;max-width:100%}
body.prblem-core .prblem-directory-icon-set img{display:block;width:19px;height:19px;object-fit:contain;image-rendering:auto;flex:0 0 19px}
body.prblem-core .prblem-directory-icon-set--default img{width:19px;height:19px}
body.prblem-core .prblem-directory-row-badges{display:flex;flex-flow:row nowrap;align-items:flex-start;justify-content:flex-start;gap:2px;overflow:visible}
body.prblem-core .prblem-directory-row-badges .prblem-badge-list{display:flex;align-items:center;flex-flow:row wrap;gap:2px;min-width:0;max-width:100%}
body.prblem-core .prblem-directory-row-badges .prblem-tax-badge{font-size:10px;padding:1px 2px;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.prblem-core .prblem-directory-row-badges .prblem-badge-list>.prblem-tax-badge{flex:0 1 auto}
body.prblem-core .prblem-directory-row-badges .prblem-directory-topic{display:none}
/* No visible reading/step/checklist progress bars. Completion counts and actions still work. */
body.prblem-core .prblem-read-position,
body.prblem-core .prblem-steps-meter,
body.prblem-core .prblem-check-progress>div,
body.prblem-core .prblem-check-progress>.prblem-progress-track{display:none!important}
body.prblem-core .prblem-steps-overview{min-height:0}
body.prblem-core .prblem-check-progress{min-width:0;flex:0 0 auto}
@media (min-width:961px) and (max-width:1120px){
  body.prblem-core .prblem-directory-content{grid-template-columns:minmax(0,1fr) 180px;gap:9px;padding-inline:7px}
  body.prblem-core .prblem-directory-table-header,body.prblem-core .prblem-directory-feed-row{grid-template-columns:57px minmax(0,1fr) 155px}
  body.prblem-core .prblem-directory-icon-set img{width:18px;height:18px;flex-basis:18px}
  body.prblem-core .prblem-directory-row-badges .prblem-tax-badge{font-size:9px}
}
@media (max-width:960px){
  body.prblem-core .prblem-directory-content{grid-template-columns:minmax(0,1fr) minmax(185px,28%);gap:12px;padding:14px 10px}
  body.prblem-core .prblem-directory-table-header,body.prblem-core .prblem-directory-feed-row{grid-template-columns:55px minmax(0,1fr) 134px}
}
@media (max-width:700px){
  body.prblem-core .prblem-directory-content{display:block;padding:13px 10px}
  body.prblem-core .prblem-directory-table-header,body.prblem-core .prblem-directory-feed-row{grid-template-columns:53px minmax(0,1fr) minmax(118px,26%)}
}
@media (max-width:430px){
  body.prblem-core .prblem-directory-table-header,body.prblem-core .prblem-directory-feed-row{grid-template-columns:48px minmax(0,1fr) 105px;gap:3px}
  body.prblem-core .prblem-directory-icon-set img{width:15px;height:15px;flex-basis:15px}
  body.prblem-core .prblem-directory-row-badges .prblem-tax-badge{font-size:9px}
}

/* Show all selected (up to four) badges: no invisible fifth or clipped row. */
body.prblem-core .prblem-directory-row-badges{flex-wrap:wrap}
body.prblem-core .prblem-directory-row-badges .prblem-badge-list{flex-wrap:wrap}


/* v1.6.0: balanced layout, real 300x250 ad rail, accessible typography and premium footer. */
:root{--prblem-shell-width:1320px;--prblem-sidebar-width:184px;--prblem-ad-rail:300px;--headfont:'Roboto Condensed','Arial Narrow',Arial,sans-serif}
body.prblem-core .prblem-directory-content{
  display:grid;grid-template-columns:minmax(0,1fr) var(--prblem-ad-rail);
  gap:18px;padding:18px 16px 32px;align-items:start;
}
body.prblem-core .prblem-directory-right{min-width:300px;width:300px;padding-top:2px;overflow:visible}
body.prblem-core .prblem-directory-table-header,
body.prblem-core .prblem-directory-feed-row{grid-template-columns:57px minmax(0,1fr) minmax(120px,auto);gap:8px;padding-inline:8px}
body.prblem-core .prblem-directory-table-header span:last-child{text-align:left}
body.prblem-core .prblem-directory-feed-entry h3{font-size:13.5px;line-height:1.32}
body.prblem-core .prblem-directory-row-badges{min-width:0;max-width:225px;gap:3px;flex-wrap:wrap;justify-content:flex-start}
body.prblem-core .prblem-directory-row-badges .prblem-badge-list{flex-wrap:wrap;gap:3px;justify-content:flex-start}
body.prblem-core .prblem-directory-row-badges .prblem-tax-badge{font-size:11px;padding:1px 4px;max-width:100%;overflow:visible;text-overflow:clip}
body.prblem-core .prblem-directory-icon-set{max-width:57px;gap:1px}
body.prblem-core .prblem-directory-icon-set img{width:18px;height:18px;flex:0 0 18px}
body.prblem-core .prblem-directory-tools-list{max-width:100%}
/* Sidebar widgets intentionally have no background card around fixed-size ads. */
body.prblem-core .prblem-custom-sidebar .prblem-rail-widget,
body.prblem-core .prblem-rightsidebar .prblem-rail-widget{margin:0 0 22px;min-width:0;max-width:100%}
body.prblem-core .prblem-rail-widget-title{font:700 18px/1.3 var(--font);margin:0 0 10px;padding:0 0 7px;border-bottom:1px solid var(--border)}
body.prblem-core .prblem-rail-widget :where(img,video,svg){height:auto;max-width:100%}
body.prblem-core .prblem-sidebar-guide-list{display:grid}
body.prblem-core .prblem-sidebar-guide-list a{display:block;color:var(--blue);font-size:13px;line-height:1.45;padding:9px 3px;border-bottom:1px solid var(--border);font-weight:600}
body.prblem-core .prblem-directory-right .prblem-ad,
body.prblem-core .prblem-rightsidebar .prblem-ad{width:300px;max-width:300px;margin:0 auto 22px;overflow:visible}
body.prblem-core .prblem-directory-right .prblem-ad__desktop,
body.prblem-core .prblem-rightsidebar .prblem-ad__desktop{width:300px;max-width:300px;margin:0 auto;overflow:visible}
body.prblem-core .prblem-directory-right .prblem-ad :where(img,iframe),
body.prblem-core .prblem-rightsidebar .prblem-ad :where(img,iframe){max-width:300px}
body.prblem-core .prblem-docshell{width:calc(100% - 22px);max-width:100%;grid-template-columns:minmax(0,1fr) var(--prblem-ad-rail);gap:18px;margin:14px auto 50px}
body.prblem-core .prblem-rightsidebar{width:300px;max-width:300px;min-width:300px;position:static;overflow:visible}
body.prblem-core .prblem-rightsidebar .prblem-panel{margin-bottom:13px}
body.prblem-core .prblem-article{padding:24px 27px}
body.prblem-core .prblem-article-meta{gap:10px;row-gap:8px}
body.prblem-core .prblem-directory-sidebar-heading strong{font-family:var(--font);font-weight:800;font-size:17px;line-height:1.2;letter-spacing:0;text-shadow:none}
body.prblem-core .prblem-article-body .prblem-guided-step-content h3,
body.prblem-core .prblem-article-body .prblem-methods h3,
body.prblem-core .prblem-article-body .prblem-builder-steps h3,
body.prblem-core .prblem-article-body .prblem-guided-steps h3{
  font-family:var(--font)!important;font-size:19px!important;font-weight:700!important;
  line-height:1.4!important;letter-spacing:0!important;text-shadow:none!important;
  -webkit-text-stroke:0!important;overflow-wrap:break-word;
}
body.prblem-core .prblem-article-body .prblem-checklist-section h2,
body.prblem-core .prblem-article-body .prblem-checklist-section h3,
body.prblem-core .prblem-article-body .prblem-checklist-section strong{
  font-family:var(--font)!important;letter-spacing:0!important;text-shadow:none!important;
  -webkit-text-stroke:0!important;line-height:1.4!important;
}
body.prblem-core .prblem-article-body .prblem-checklist-section h2{font-size:22px!important;font-weight:700!important}
body.prblem-core .prblem-article-body .prblem-guided-step-num{font-family:var(--font);font-weight:800}
body.prblem-core .prblem-article-body .prblem-guided-step-description{line-height:1.65}
/* No visible progress indicators; keep textual step counters, checkboxes and completion buttons. */
body.prblem-core .prblem-read-position,
body.prblem-core .prblem-reading-progress,
body.prblem-core .prblem-steps-meter,
body.prblem-core .prblem-progress-track,
body.prblem-core .prblem-check-progress [role="progressbar"]{display:none!important}
/* Preserve user-assigned Tiny5 badges; no unrelated heading inherits the badge face. */
body.prblem-core .prblem-tax-badge{font-family:var(--badgefont,'Silkscreen',monospace);border:0;border-radius:2px}
/* Premium footer is inside the centered shell and not a light, empty placeholder. */
body.prblem-core .prblem-footer{background:#20262d!important;color:#e8edf3!important;border:1px solid #313c48;border-top:3px solid #2a96bf;padding:0;min-height:0}
body.prblem-core .prblem-footer-inner{display:grid;grid-template-columns:minmax(230px,1.55fr) repeat(3,minmax(100px,1fr));gap:25px;padding:33px 26px 29px;align-items:start;max-width:none}
body.prblem-core .prblem-footer-intro p{margin:7px 0 0;color:#b8ccd9;font-size:12px;line-height:1.5}
body.prblem-core .prblem-footer-intro .prblem-footer-description{margin-top:15px;max-width:290px;color:#b8c5ce;font-size:13px;line-height:1.55}
body.prblem-core .prblem-footer-brand{display:inline-flex;align-items:center;gap:10px;color:#fff!important;font:800 22px/1.2 var(--font);text-decoration:none;letter-spacing:.025em}
body.prblem-core .prblem-footer-mark{display:grid;place-items:center;width:34px;height:34px;background:#3183b8;color:#fff;font:800 16px/1 var(--font);border-radius:3px}
body.prblem-core .prblem-footer-column{display:flex;flex-direction:column;align-items:start;gap:8px;min-width:0}
body.prblem-core .prblem-footer-column h2{font:800 13px/1.3 var(--font);text-transform:uppercase;letter-spacing:.055em;color:#f4f7fa;margin:3px 0 9px}
body.prblem-core .prblem-footer-column a,
body.prblem-core .prblem-footer-column button{background:none;border:0;color:#c4d3dd!important;font:500 13px/1.5 var(--font);text-decoration:none;padding:0;text-align:left;cursor:pointer}
body.prblem-core .prblem-footer-column :is(a,button):hover,
body.prblem-core .prblem-footer-column :is(a,button):focus-visible{color:#fff!important;text-decoration:underline}
body.prblem-core .prblem-footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 26px;background:#171c22;border-top:1px solid #37424e;color:#a9bfcc;font-size:12px}
@media(max-width:1279px){
  body.prblem-core .prblem-directory-content{grid-template-columns:minmax(0,1fr);gap:12px}
  body.prblem-core .prblem-directory-right{width:auto;min-width:0;display:block}
  body.prblem-core .prblem-directory-right .prblem-ad{margin-left:0}
  body.prblem-core .prblem-docshell{grid-template-columns:minmax(0,1fr);gap:14px}
  body.prblem-core .prblem-rightsidebar{position:static;width:auto;min-width:0;max-width:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
  body.prblem-core .prblem-rightsidebar .prblem-panel{margin-bottom:0}
  body.prblem-core .prblem-rightsidebar>.prblem-ad{margin:0}
}
@media(max-width:960px){
  body.prblem-core .prblem-directory-content{display:block;padding:14px 12px}
  body.prblem-core .prblem-directory-right{margin-top:22px}
  body.prblem-core .prblem-docshell{display:block}
  body.prblem-core .prblem-rightsidebar{margin-top:16px}
}
@media(max-width:740px){
  body.prblem-core .prblem-directory-table-header,
  body.prblem-core .prblem-directory-feed-row{grid-template-columns:51px minmax(0,1fr) minmax(85px,27%);gap:5px}
  body.prblem-core .prblem-directory-row-badges .prblem-tax-badge{font-size:10px;padding:1px 2px}
  body.prblem-core .prblem-footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:25px 18px}
  body.prblem-core .prblem-footer-intro{grid-column:1/-1}
  body.prblem-core .prblem-footer-bottom{padding:12px 18px}
}
@media(max-width:470px){
  body.prblem-core .prblem-directory-table-header,
  body.prblem-core .prblem-directory-feed-row{grid-template-columns:42px minmax(0,1fr) 85px;gap:4px;padding-inline:5px}
  body.prblem-core .prblem-directory-table-header span:first-child{font-size:8px}
  body.prblem-core .prblem-directory-icon-set img{width:13px;height:13px;flex-basis:13px}
  body.prblem-core .prblem-directory-row-badges{max-width:85px}
  body.prblem-core .prblem-rightsidebar{display:block}
  body.prblem-core .prblem-footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  body.prblem-core .prblem-footer-column:last-child{grid-column:1/-1}
}


/* v1.6.1 — layout + checklist visual regression fixes.
   The footer is a separate grid peer to content, not a child of the dark navigation.
   Earlier footer padding:0 unintentionally removed the 184px sidebar reservation. */
@media (min-width:961px){
  body.prblem-core .prblem-footer{
    box-sizing:border-box;
    width:calc(min(100%,var(--prblem-shell-width)) - var(--prblem-sidebar-width));
    max-width:calc(var(--prblem-shell-width) - var(--prblem-sidebar-width));
    margin-left:calc(max(0px,(100% - var(--prblem-shell-width))/2) + var(--prblem-sidebar-width));
    margin-right:auto;
    padding:0;
    clear:both;
  }
}
@media (max-width:960px){
  body.prblem-core .prblem-footer{
    width:min(100%,var(--prblem-shell-width));max-width:var(--prblem-shell-width);
    margin-left:auto;margin-right:auto;padding:0;clear:both;
  }
}
/* Keep narrow and wide sidebars aligned; allow long sections to scroll inside
   the sticky article rail, including the original 300x250 advertisement. */
@media (min-width:1280px){
  body.prblem-core .prblem-docshell>.prblem-rightsidebar{
    position:sticky;
    top:calc(var(--prblem-header-height) + 12px);
    align-self:start;
    max-height:calc(100vh - var(--prblem-header-height) - 24px);
    max-height:calc(100dvh - var(--prblem-header-height) - 24px);
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior-y:contain;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  body.prblem-core .prblem-docshell>.prblem-rightsidebar::-webkit-scrollbar{display:none;width:0}
  body.prblem-core.admin-bar .prblem-docshell>.prblem-rightsidebar{
    top:calc(var(--prblem-header-height) + 44px);
    max-height:calc(100dvh - var(--prblem-header-height) - 56px);
  }
}
/* Solution Checklist is ONE card, not a bordered card inside another bordered card.
   Restore the actual checkbox completion progress only; the reading/step progress
   strips explicitly removed by user remain absent. */
body.prblem-core .prblem-article-body .prblem-checklist-section{
  border:0!important;background:transparent!important;box-shadow:none!important;
  padding:0!important;margin:24px 0!important;border-radius:0!important;
  width:100%;max-width:100%;
}
body.prblem-core .prblem-article-body .prblem-checklist-section .prblem-checklist{
  border:1px solid var(--border);background:var(--surface);border-radius:4px;
  padding:17px 20px 14px;box-shadow:none;overflow:hidden;
}
body.prblem-core .prblem-checklist-section .prblem-check-progress{
  display:flex;flex:0 1 260px;align-items:center;justify-content:flex-end;
  gap:10px;min-width:0;flex-wrap:wrap;
}
body.prblem-core .prblem-checklist-section .prblem-check-progress .prblem-progress-track{
  display:block!important;flex:1 1 110px;min-width:90px;max-width:190px;
  height:8px;border:0;border-radius:9px;background:var(--surface-muted);
  overflow:hidden;position:relative;
}
body.prblem-core .prblem-checklist-section .prblem-check-progress .prblem-progress-track>i{
  display:block!important;height:100%;width:0;border-radius:9px;
  background:#138d53;transition:width .15s ease;
}
html[data-mode=dark] body.prblem-core .prblem-checklist-section .prblem-check-progress .prblem-progress-track>i{background:#54c88c}
@media(max-width:760px){
  body.prblem-core .prblem-article-body .prblem-checklist-section .prblem-checklist{padding:15px 12px 10px}
  body.prblem-core .prblem-checklist-section .prblem-check-progress{justify-content:flex-start;flex:1 1 100%}
  body.prblem-core .prblem-checklist-section .prblem-check-progress .prblem-progress-track{max-width:none}
}
@media(prefers-reduced-motion:reduce){
  body.prblem-core .prblem-checklist-section .prblem-check-progress .prblem-progress-track>i{transition:none}
}

/* v1.6.2 — a single compact article indicator and permanent Home Tools sidebar. */
@media(min-width:741px){
  body.prblem-core .prblem-directory-table-header,
  body.prblem-core .prblem-directory-feed-row{
    grid-template-columns:28px minmax(0,1fr) 164px;
    gap:4px;
    padding-inline:7px;
  }
}
body.prblem-core .prblem-directory-row-icons{
  display:flex;align-items:center;justify-content:center;
  width:100%;min-width:0;
}
body.prblem-core .prblem-directory-icon-set{display:inline-flex;justify-content:center;align-items:center;width:21px;max-width:21px;min-width:0;gap:0}
body.prblem-core .prblem-directory-icon-set img{display:block;width:19px;height:19px;max-width:19px;flex:0 0 19px;object-fit:contain}
body.prblem-core .prblem-directory-tools--sidebar{margin-bottom:22px}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-toolbar{gap:7px;min-height:30px;flex-direction:row;align-items:center;margin-bottom:7px}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-toolbar h2{font-size:19px;line-height:1.2}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-count{font-size:10px;white-space:nowrap}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row{gap:6px;padding:5px 6px;min-height:34px;font-size:12px}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row .prblem-svg{width:15px;height:15px;flex-basis:15px}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-num{min-width:18px}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-arrow{font-size:15px;margin-left:1px}
body.prblem-core .prblem-directory-tools--sidebar .prblem-tax-badge{font-size:10px;flex-shrink:0}
/* The tools list belongs to the theme, not a widget: widgets only append below it. */
@media(max-width:740px){
  body.prblem-core .prblem-directory-table-header,
  body.prblem-core .prblem-directory-feed-row{grid-template-columns:27px minmax(0,1fr) minmax(85px,24%);gap:4px;padding-inline:5px}
  body.prblem-core .prblem-directory-icon-set img{width:17px;height:17px;max-width:17px;flex-basis:17px}
}
@media(max-width:470px){
  body.prblem-core .prblem-directory-table-header,
  body.prblem-core .prblem-directory-feed-row{grid-template-columns:23px minmax(0,1fr) 82px;gap:3px;padding-inline:4px}
  body.prblem-core .prblem-directory-icon-set img{width:15px;height:15px;max-width:15px;flex-basis:15px}
  body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row{font-size:12px}
}

/* v1.6.3: concise grid headings. The difficulty indicator column is only 23–28px:
   a literal "Difficulty" label overflowed into the adjacent Problem / Solution label. */
body.prblem-core .prblem-directory-table-header > span{
  min-width:0;
  max-width:100%;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
body.prblem-core .prblem-directory-table-header .prblem-directory-header-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:Arial,sans-serif;
  font-weight:700;
  font-size:11px;
  line-height:1;
  color:#247cb4;
  text-align:center;
  overflow:visible;
}
html[data-mode=dark] body.prblem-core .prblem-directory-table-header .prblem-directory-header-icon{color:#79c3f1}
/* Classic widgets: control media and long markup without clipping 300x250 ads. */
body.prblem-core .prblem-rail-widget{max-width:100%;min-width:0;overflow-wrap:anywhere}
body.prblem-core .prblem-rail-widget img{max-width:100%;height:auto}
body.prblem-core .prblem-rail-widget :is(input,select,textarea){max-width:100%}


/* v1.6.4 - Six unobtrusive platform shortcuts above the home footer. */
body.prblem-core .prblem-platform-section{
  clear:both;
  width:100%;
  padding:2px 18px 24px;
  margin:0;
}
body.prblem-core .prblem-platform-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  max-width:100%;
}
body.prblem-core .prblem-platform-tile{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:0;
  min-height:100px;
  padding:14px 6px 10px;
  background:#d3d5d8;
  border:1px solid #c4c8cd;
  border-radius:3px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.26);
  color:#505962;
  text-decoration:none;
  transition:background .16s ease,border-color .16s ease;
}
body.prblem-core .prblem-platform-tile img{
  display:block;
  height:51px;
  width:74px;
  max-width:calc(100% - 8px);
  object-fit:contain;
  opacity:.46;
  filter:grayscale(1);
  transition:opacity .16s ease;
}
body.prblem-core .prblem-platform-tile .prblem-platform-name{
  display:block;
  max-width:100%;
  font:700 11px/1.2 var(--font,'Roboto Condensed',Arial,sans-serif);
  letter-spacing:.015em;
  color:inherit;
  white-space:normal;
  overflow-wrap:anywhere;
  text-align:center;
}
body.prblem-core a.prblem-platform-tile:hover,
body.prblem-core a.prblem-platform-tile:focus-visible{
  background:#e4e8eb;
  border-color:#7b9fb9;
  color:#145c87;
}
body.prblem-core a.prblem-platform-tile:is(:hover,:focus-visible) img{opacity:.86}
body.prblem-core .prblem-platform-tile--unavailable{opacity:.65;cursor:default}
html[data-mode=dark] body.prblem-core .prblem-platform-tile{
  background:#292f36;
  border-color:#424b54;
  box-shadow:none;
  color:#c5cbd1;
}
html[data-mode=dark] body.prblem-core .prblem-platform-tile img{filter:grayscale(1) invert(1);opacity:.55}
html[data-mode=dark] body.prblem-core a.prblem-platform-tile:is(:hover,:focus-visible){
  background:#38434d;border-color:#7294ae;color:#edf7fc;
}
@media(max-width:900px){
  body.prblem-core .prblem-platform-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  body.prblem-core .prblem-platform-section{padding-inline:12px;}
}
@media(max-width:480px){
  body.prblem-core .prblem-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  body.prblem-core .prblem-platform-tile{min-height:88px;padding:11px 6px 8px;}
  body.prblem-core .prblem-platform-tile img{height:44px;}
}
@media(prefers-reduced-motion:reduce){
  body.prblem-core .prblem-platform-tile,
  body.prblem-core .prblem-platform-tile img{transition:none}
}
@media print{body.prblem-core .prblem-platform-section{display:none!important}}


/* v1.6.6: Platform navigation relocated below the black homepage heading,
   spanning BOTH the solutions feed and Free Online Tools sidebar. */
body.prblem-core .prblem-directory-home > .prblem-platform-section{
  clear:none;
  padding:13px 16px 2px;
  width:100%;
  margin:0;
}
body.prblem-core .prblem-directory-home > .prblem-platform-section .prblem-platform-grid{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:9px;
}
body.prblem-core .prblem-directory-home > .prblem-platform-section .prblem-platform-tile{
  min-height:80px;
  gap:4px;
  padding:9px 6px 7px;
}
body.prblem-core .prblem-directory-home > .prblem-platform-section .prblem-platform-tile img{
  height:43px;
  width:62px;
}
body.prblem-core .prblem-directory-home > .prblem-platform-section + .prblem-directory-content{
  padding-top:11px;
}
@media(max-width:900px){
  body.prblem-core .prblem-directory-home > .prblem-platform-section{padding:12px 12px 2px}
  body.prblem-core .prblem-directory-home > .prblem-platform-section .prblem-platform-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:480px){
  body.prblem-core .prblem-directory-home > .prblem-platform-section{padding:10px 10px 1px}
  body.prblem-core .prblem-directory-home > .prblem-platform-section .prblem-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  body.prblem-core .prblem-directory-home > .prblem-platform-section .prblem-platform-tile{min-height:77px}
  body.prblem-core .prblem-directory-home > .prblem-platform-section .prblem-platform-tile img{height:40px;width:57px}
}

/* v1.6.6: crisply squared pixel letters, scoped to badge chips only. */
body.prblem-core .prblem-tax-badge,body.prblem-core .prblem-tax-badge .prblem-badge-part{
  font-family:'Silkscreen','Tiny5','Courier New',monospace!important;
  font-size:10px;font-weight:700;letter-spacing:-.025em;line-height:1.25;
  text-shadow:none; -webkit-font-smoothing:none;
}
body.prblem-core .prblem-tax-badge{border:0;border-radius:2px;box-shadow:none;padding:2px 4px;}


/* v1.6.7 - readable compact chips; limit digital type to badges. */
:root{--badgefont:'Chakra Petch','Roboto Condensed',Arial,sans-serif}
body.prblem-core .prblem-tax-badge,
body.prblem-core .prblem-tax-badge .prblem-badge-part{
  font-family:var(--badgefont)!important;
  font-size:10px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.005em;
  -webkit-font-smoothing:antialiased;
  text-shadow:none;
}
body.prblem-core .prblem-tax-badge{padding:2px 4px;border:0;border-radius:2px;box-shadow:none;}
/* High-contrast versions of the supplied logos, never oversized in navigation. */
body.prblem-core .prblem-directory-sidebar-links .prblem-platform-category-logo{
  display:inline-flex;align-items:center;justify-content:center;
  width:17px;height:19px;flex:0 0 17px;overflow:visible;
}
body.prblem-core .prblem-directory-sidebar-links .prblem-platform-category-logo img{
  display:block;object-fit:contain;object-position:center;
  max-width:17px;width:17px;height:17px;
  filter:brightness(0) invert(1);opacity:.87;
}
body.prblem-core .prblem-directory-sidebar-links a:hover .prblem-platform-category-logo img,
body.prblem-core .prblem-directory-sidebar-links a[aria-current=page] .prblem-platform-category-logo img{opacity:1;}
/* Recognizable platform logo above its matching category archive. */
body.prblem-core .prblem-list-head h1.prblem-archive-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
body.prblem-core .prblem-platform-category-logo--heading{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 40px;background:#d8dbdd;border:1px solid #bfc3c7;border-radius:5px;}
body.prblem-core .prblem-platform-category-logo--heading img{width:31px;height:31px;object-fit:contain;filter:grayscale(1);opacity:.85;}
body.prblem-core .prblem-mobile-browse-list .prblem-platform-category-logo{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;flex-shrink:0;margin-right:6px;vertical-align:middle;}
body.prblem-core .prblem-mobile-browse-list .prblem-platform-category-logo img{width:17px;height:17px;object-fit:contain;}

/* v1.6.7: per-category image overrides managed in Posts > Categories. */
body.prblem-core .prblem-directory-sidebar-links .prblem-category-custom-icon,
body.prblem-core .prblem-mobile-browse-list .prblem-category-custom-icon{
  display:inline-flex;align-items:center;justify-content:center;width:17px;height:19px;flex:0 0 17px;
}
body.prblem-core .prblem-directory-sidebar-links .prblem-category-custom-icon img,
body.prblem-core .prblem-mobile-browse-list .prblem-category-custom-icon img{
  display:block;width:17px;height:17px;max-width:17px;max-height:17px;object-fit:contain;
}
body.prblem-core .prblem-archive-title .prblem-category-custom-icon{
  display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 40px;
  background:#d8dbdd;border:1px solid #bfc3c7;border-radius:5px;
}
body.prblem-core .prblem-archive-title .prblem-category-custom-icon img{
  width:31px;height:31px;max-width:31px;max-height:31px;object-fit:contain;
}

body.prblem-core .prblem-platform-tile--no-icon{justify-content:center;gap:0;}
body.prblem-core .prblem-platform-tile--no-icon .prblem-platform-name{font-size:13px;}




/* v1.7.0 layout/performance audit: cohesive editorial gutters across all archives,
   filtered search, static pages and missing-page screens. The homepage remains unchanged. */
@media (min-width:961px){
  body.prblem-core main#prblem-content.prblem-list-wrap{
    width:min(100%,var(--prblem-shell-width)); max-width:var(--prblem-shell-width);
    margin-inline:auto; padding:27px 26px 72px calc(var(--prblem-sidebar-width) + 26px);
  }
  body.prblem-core main#prblem-content.prblem-regular-page{
    width:min(100%,var(--prblem-shell-width));max-width:var(--prblem-shell-width);
    margin:0 auto 36px;padding:30px 30px 58px calc(var(--prblem-sidebar-width) + 26px);
  }
}
body.prblem-core .prblem-list-wrap .prblem-list-head,
body.prblem-core .prblem-regular-page{
  background:var(--surface); border:1px solid var(--border);
}
body.prblem-core .prblem-list-wrap .prblem-list-head{padding:22px 24px;margin-bottom:16px;min-width:0}
body.prblem-core .prblem-list-wrap .prblem-list-head h1{margin:7px 0 8px;line-height:1.22;overflow-wrap:break-word}
body.prblem-core .prblem-archive-intro{margin:8px 0 0;font-size:13px;color:var(--muted);line-height:1.55}
body.prblem-core .prblem-list-wrap .prblem-content-filters{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 17px;padding:0}
body.prblem-core .prblem-list-wrap .prblem-content-filters a{display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border:1px solid var(--border);background:var(--surface);font-size:12px;text-decoration:none}
body.prblem-core .prblem-list-wrap .prblem-content-filters a[aria-current="page"]{background:#31526b;border-color:#31526b;color:#fff}
body.prblem-core .prblem-list-wrap .prblem-content-filters a:focus-visible{outline:2px solid #1b87c1;outline-offset:2px}
body.prblem-core .prblem-list-wrap .prblem-guides-grid{margin:0;min-width:0}
body.prblem-core .prblem-list-wrap .prblem-guide-card{padding:15px 16px;min-width:0}
body.prblem-core .prblem-list-wrap .prblem-guide-card h2,
body.prblem-core .prblem-list-wrap .prblem-guide-card h3{font-size:16px;line-height:1.4;overflow-wrap:break-word}
body.prblem-core .prblem-list-wrap .prblem-guide-card p{font-size:13px;line-height:1.6}
body.prblem-core .prblem-list-wrap .prblem-guide-card .prblem-readmore{font-size:12px}
body.prblem-core .prblem-list-wrap .prblem-empty{padding:20px 22px;background:var(--surface);border:1px solid var(--border);grid-column:1/-1}
body.prblem-core .prblem-regular-page h1{margin-top:0;line-height:1.2;overflow-wrap:break-word}
body.prblem-core .prblem-regular-page .prblem-article-body{max-width:100%;overflow-wrap:break-word}
body.prblem-core .prblem-regular-page form[role="search"],
body.prblem-core .prblem-regular-page form:not([class]){display:flex;flex-wrap:wrap;gap:9px}
body.prblem-core .prblem-regular-page input[type="search"]{min-height:38px;min-width:180px;flex:1 1 220px;padding:7px 10px;border:1px solid var(--border);background:var(--surface);color:var(--text)}
body.prblem-core .prblem-regular-page button[type="submit"]{min-height:38px;padding:7px 15px;border:1px solid #284f6b;background:#284f6b;color:#fff;cursor:pointer}
/* The Releases sidebar entry is the SAME size/alignment as all other categories. */
body.prblem-core .prblem-directory-sidebar-links a .prblem-side-category-label{font:inherit;letter-spacing:inherit}
/* Compact 2 x 5 permanent tool cards, compatible with additional sidebar widgets. */
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tools-list{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;
  border:0;
}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row,
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row:nth-child(even){
  display:flex;flex-wrap:wrap;align-content:center;align-items:center;gap:5px;
  min-height:56px;padding:9px 8px;background:var(--surface);border:1px solid var(--border);
  color:var(--blue);font-size:12px;line-height:1.25;text-decoration:none;
}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row:hover,
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row:focus-visible{border-color:#429bc4;background:var(--surface-soft)}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row strong{flex:1 1 calc(100% - 37px);min-width:0;font-size:12px;line-height:1.25;overflow-wrap:break-word}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row .prblem-svg{width:17px;height:17px;flex:0 0 17px}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row .prblem-directory-tool-num{display:none}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row .prblem-directory-tool-arrow{display:none}
@media(max-width:960px){
  body.prblem-core main#prblem-content.prblem-list-wrap{width:100%;max-width:100%;padding:20px 18px 44px;margin-inline:auto}
  body.prblem-core main#prblem-content.prblem-regular-page{width:calc(100% - 24px);max-width:100%;padding:22px 20px 36px;margin:12px auto 30px}
}
@media(max-width:620px){
  body.prblem-core .prblem-list-wrap .prblem-list-head{padding:16px 15px}
  body.prblem-core .prblem-list-wrap .prblem-guide-card{padding:14px}
  body.prblem-core main#prblem-content.prblem-list-wrap{padding:14px 12px 35px}
  body.prblem-core main#prblem-content.prblem-regular-page{padding:17px 15px}
}
@media(max-width:360px){
  body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tools-list{grid-template-columns:1fr 1fr;gap:5px}
}

/* v1.7.1: editorial status badges ONLY. Content/category badges use their original compact styles.
   Preserve status chip dimensions (11px text, 4px 10px padding); never change badge editor data. */
body.prblem-core .prblem-article-topline .prblem-status{
  font-size:11px;
  font-weight:800;
  padding:4px 10px;
  border:0;
  border-radius:3px;
  text-transform:uppercase;
  letter-spacing:0;
  line-height:inherit;
  text-shadow:none;
  box-shadow:inset 0 0 0 1px var(--prblem-status-stroke);
  background:var(--prblem-status-bg);
  color:var(--prblem-status-text);
}
body.prblem-core .prblem-article-topline .prblem-status .prblem-svg{
  width:14px;height:14px;
  flex-shrink:0;
}
body.prblem-core .prblem-status--verified{
  --prblem-status-bg:linear-gradient(180deg,#e9f8f0,#d5efdf);
  --prblem-status-text:#15643b;
  --prblem-status-stroke:#9dd6b5;
}
body.prblem-core .prblem-status--updated{
  --prblem-status-bg:linear-gradient(180deg,#ebf5fc,#d8eafa);
  --prblem-status-text:#175780;
  --prblem-status-stroke:#a2c6df;
}
body.prblem-core .prblem-status--experimental{
  --prblem-status-bg:linear-gradient(180deg,#fff5dc,#fae8bd);
  --prblem-status-text:#775009;
  --prblem-status-stroke:#ddc289;
}
body.prblem-core .prblem-status--archived{
  --prblem-status-bg:linear-gradient(180deg,#e7ebee,#dce1e5);
  --prblem-status-text:#48555e;
  --prblem-status-stroke:#b8c1c8;
}
html[data-mode=dark] body.prblem-core .prblem-status--verified{
  --prblem-status-bg:linear-gradient(180deg,#243f32,#183427);
  --prblem-status-text:#a0edbc;
  --prblem-status-stroke:#3b6a52;
}
html[data-mode=dark] body.prblem-core .prblem-status--updated{
  --prblem-status-bg:linear-gradient(180deg,#2b4356,#203548);
  --prblem-status-text:#addcff;
  --prblem-status-stroke:#4c7087;
}
html[data-mode=dark] body.prblem-core .prblem-status--experimental{
  --prblem-status-bg:linear-gradient(180deg,#54452e,#423720);
  --prblem-status-text:#ffe0a1;
  --prblem-status-stroke:#7f693c;
}
html[data-mode=dark] body.prblem-core .prblem-status--archived{
  --prblem-status-bg:linear-gradient(180deg,#404950,#30383e);
  --prblem-status-text:#e1e6ea;
  --prblem-status-stroke:#58646c;
}
@media (forced-colors:active){
  body.prblem-core .prblem-article-topline .prblem-status{border:1px solid CanvasText;box-shadow:none;}
}


/* PRBLEM 1.7.2 — share actions are beneath the article TOC, not in the article metadata.
   At stacked-sidebar breakpoints a duplicate visual placement near the article
   summary remains accessible; the other copy is display:none (not focusable). */
body.prblem-core .prblem-share-narrow{display:none}
body.prblem-core .prblem-sidebar-share-zone{
  padding:13px 1px 0;margin-top:14px;border-top:1px solid var(--border);min-width:0
}
body.prblem-core .prblem-sidebar-share-label{
  display:block;font:800 11px/1.4 var(--font);letter-spacing:.035em;color:var(--text);
  margin-bottom:8px
}
body.prblem-core .prblem-sidebar-share-zone .prblem-share-inline{
  display:block;max-width:100%;margin:0;min-width:0
}
body.prblem-core .prblem-sidebar-share-zone .prblem-share-inline .prblem-share{
  display:flex;justify-content:flex-start;align-items:center;gap:5px;flex-wrap:wrap
}
body.prblem-core .prblem-sidebar-share-zone .prblem-share-inline .prblem-share > a,
body.prblem-core .prblem-sidebar-share-zone .prblem-share-inline .prblem-share > button{
  box-sizing:border-box;width:28px;min-width:28px;max-width:28px;height:30px;flex:0 0 28px;
  aspect-ratio:auto;padding:2px;display:inline-flex;align-items:center;justify-content:center;
  border:0;border-radius:3px;box-shadow:none;background:transparent
}
body.prblem-core .prblem-sidebar-share-zone .prblem-share-inline .prblem-share img{
  display:block;width:23px;height:23px;max-width:23px;max-height:23px;object-fit:contain
}
body.prblem-core .prblem-sidebar-share-zone .prblem-share-copy .prblem-svg{
  width:20px;height:20px;stroke:currentColor;stroke-width:2.3;fill:none
}
body.prblem-core .prblem-sidebar-share-zone .prblem-share-copy{color:#1361a3}
html[data-mode=dark] body.prblem-core .prblem-sidebar-share-zone .prblem-share-copy{color:#9ad2fc}
body.prblem-core .prblem-sidebar-share-zone .prblem-share a:focus-visible,
body.prblem-core .prblem-sidebar-share-zone .prblem-share button:focus-visible{
  outline:2px solid var(--blue);outline-offset:2px
}
@media(max-width:1279px){
  body.prblem-core .prblem-sidebar-share-zone{display:none}
  body.prblem-core .prblem-share-narrow{display:block;margin:-3px 0 15px}
  body.prblem-core .prblem-share-narrow .prblem-share-inline{
    margin:0;display:flex;justify-content:flex-start;max-width:100%
  }
  body.prblem-core .prblem-share-narrow .prblem-share{display:flex;gap:4px;flex-wrap:wrap}
}
@media print{
  body.prblem-core .prblem-sidebar-share-zone,
  body.prblem-core .prblem-share-narrow{display:none!important}
}

/* PRBLEM 1.7.2 — sidebar tools should look like the alternating gray technical
   index, not disconnected white cards. Keep the existing two-column grid. */
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tools-list{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;
  border:1px solid var(--border);border-right:0;border-bottom:0;background:var(--prblem-even)
}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row,
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row:nth-child(even){
  display:flex;flex-wrap:nowrap;align-items:center;align-content:center;gap:7px;
  min-height:47px;padding:8px 9px;margin:0;line-height:1.25;text-decoration:none;
  background:var(--prblem-even);border:0;border-right:1px solid var(--border);
  border-bottom:1px solid var(--border);border-radius:0;box-shadow:none;color:var(--blue)
}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row:nth-child(4n+3),
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row:nth-child(4n+4){
  background:var(--prblem-stripe)
}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row:is(:hover,:focus-visible){
  background:var(--blue-soft);color:var(--blue);outline-offset:-2px
}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row strong{
  font:700 12.5px/1.3 var(--font);text-decoration:underline;text-underline-offset:2px;
  overflow-wrap:break-word;min-width:0;flex:1 1 auto
}
body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row .prblem-svg{
  width:16px;height:16px;flex:0 0 16px;color:#2480aa
}
html[data-mode=dark] body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row .prblem-svg{color:#8bd0f9}
@media(max-width:360px){
  body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row{gap:5px;padding:8px 6px}
  body.prblem-core .prblem-directory-tools--sidebar .prblem-directory-tool-row strong{font-size:11.5px}
}

/* Right-align the original reading-time and Print actions where sharing used
   to sit, without changing the category / difficulty chips on the left. */
body.prblem-core .prblem-article-meta .prblem-meta-reading{
  display:flex;align-items:center;justify-content:flex-end;gap:13px;
  flex:0 1 auto;flex-wrap:wrap;margin-left:auto;min-width:0
}
body.prblem-core .prblem-article-meta .prblem-meta-reading .prblem-print{
  display:inline-flex;align-items:center;gap:5px;white-space:nowrap
}
@media(max-width:620px){
  body.prblem-core .prblem-article-meta .prblem-meta-reading{
    flex:1 1 100%;margin-left:0;justify-content:flex-start;gap:12px
  }
}


/* PRBLEM v1.7.3 — editorial data tables and tidy list heading.
   Tables preserve native cell/column alignment, are constrained to the article
   column and scroll INSIDE the article on narrow screens. No document overflow. */
body.prblem-core .prblem-article-body{
  min-width:0;
  max-width:100%;
}
body.prblem-core .prblem-article-body .prblem-table-scroll{
  box-sizing:border-box;
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:20px 0 25px;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  border:1px solid #abb9c3;
  border-top:3px solid #2376a8;
  border-radius:3px;
  background:#f3f4f5;
}
body.prblem-core .prblem-article-body .prblem-table-scroll:focus-visible{
  outline:2px solid #247eb9;
  outline-offset:2px;
}
/* Fallback when JavaScript is off: old display:block overflow is kept, with
   cell styling applied. With enhancement, use real table layout for alignment. */
body.prblem-core .prblem-article-body table:not([role="presentation"]){
  box-sizing:border-box;
  margin:18px 0 24px;
  width:100%;
  max-width:100%;
  border-collapse:separate;
  border-spacing:0;
  font-size:13px;
  line-height:1.55;
  color:#25323b;
}
body.prblem-core .prblem-article-body .prblem-table-scroll table:not([role="presentation"]){
  display:table;
  margin:0;
  width:100%!important;
  max-width:none;
  min-width:0;
  table-layout:fixed;
  overflow:visible;
}
body.prblem-core .prblem-article-body table:not([role="presentation"]) :is(th,td){
  box-sizing:border-box;
  padding:12px 13px;
  border-right:1px solid #c6d0d6;
  border-bottom:1px solid #c6d0d6;
  vertical-align:top;
  text-align:left;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}
body.prblem-core .prblem-article-body table:not([role="presentation"]) :is(th,td):last-child{border-right:0}
body.prblem-core .prblem-article-body table:not([role="presentation"]) tr:last-child> :is(th,td){border-bottom:0}
body.prblem-core .prblem-article-body table:not([role="presentation"]) thead th{
  background:#303d47;
  color:#f6fbff;
  font-weight:800;
  font-size:12px;
  line-height:1.4;
  border-color:#566674;
  vertical-align:middle;
}
body.prblem-core .prblem-article-body table:not([role="presentation"]) tbody tr:nth-child(odd){background:#eef1f3}
body.prblem-core .prblem-article-body table:not([role="presentation"]) tbody tr:nth-child(even){background:#f9fafb}
body.prblem-core .prblem-article-body table:not([role="presentation"]) tbody tr:hover{background:#dcebf5}
body.prblem-core .prblem-article-body table:not([role="presentation"]) tbody th{font-weight:750;color:#164e76}
body.prblem-core .prblem-article-body table:not([role="presentation"]) :is(b,strong){color:#152f44;font-weight:800}
body.prblem-core .prblem-article-body table:not([role="presentation"]) :is(a,code){overflow-wrap:anywhere;word-break:break-word}
body.prblem-core .prblem-article-body .prblem-table-scroll table caption{
  caption-side:top;
  text-align:left;
  padding:9px 12px;
  font-weight:700;
  background:#e8eef2;
  color:#243a4a;
}
html[data-mode="dark"] body.prblem-core .prblem-article-body .prblem-table-scroll{
  background:#282e34;
  border-color:#546473;
  border-top-color:#75b5db;
}
html[data-mode="dark"] body.prblem-core .prblem-article-body table:not([role="presentation"]){color:#e3edf4}
html[data-mode="dark"] body.prblem-core .prblem-article-body table:not([role="presentation"]) :is(th,td){border-color:#485661}
html[data-mode="dark"] body.prblem-core .prblem-article-body table:not([role="presentation"]) thead th{background:#1d3548;color:#f1faff;border-color:#506677}
html[data-mode="dark"] body.prblem-core .prblem-article-body table:not([role="presentation"]) tbody tr:nth-child(odd){background:#292f35}
html[data-mode="dark"] body.prblem-core .prblem-article-body table:not([role="presentation"]) tbody tr:nth-child(even){background:#343a40}
html[data-mode="dark"] body.prblem-core .prblem-article-body table:not([role="presentation"]) tbody tr:hover{background:#24435a}
html[data-mode="dark"] body.prblem-core .prblem-article-body table:not([role="presentation"]) tbody th{color:#a8d8f7}
html[data-mode="dark"] body.prblem-core .prblem-article-body table:not([role="presentation"]) :is(b,strong){color:#fff}
html[data-mode="dark"] body.prblem-core .prblem-article-body .prblem-table-scroll table caption{background:#2f414d;color:#e8f5ff}
@media(max-width:760px){
  /* The table itself may be wider than the phone, never its scroll container. */
  body.prblem-core .prblem-article-body .prblem-table-scroll table:not([role="presentation"]){min-width:520px}
  body.prblem-core .prblem-article-body table:not([role="presentation"]) :is(th,td){padding:9px 10px;font-size:12px}
}
@media print{
  body.prblem-core .prblem-article-body .prblem-table-scroll{overflow:visible!important;border:1px solid #888}
  body.prblem-core .prblem-article-body .prblem-table-scroll table:not([role="presentation"]){min-width:0!important;width:100%!important;white-space:normal!important;table-layout:fixed}
  body.prblem-core .prblem-article-body .prblem-table-scroll table thead th{background:#ddd!important;color:#111!important}
  body.prblem-core .prblem-article-body .prblem-table-scroll table :is(th,td){white-space:normal!important}
}

/* Custom colors from the PRBLEM Badge Library use sanitized term metadata. */
body.prblem-core .prblem-tax-badge--custom{color:var(--prblem-badge-ink,#fff)!important}

/* v1.7.9: compact, non-repeating homepage editorial rail and true in-feed ad slots. */
body.prblem-core .prblem-directory-infeed-ad{grid-column:1/-1;display:block;min-width:0;max-width:100%;padding:10px 6px;overflow:hidden;border-bottom:1px solid var(--border)}
body.prblem-core .prblem-directory-infeed-ad .prblem-ad{max-width:100%;margin:0 auto;min-height:0}
body.prblem-core .prblem-sidebar-editorial{margin-top:18px}
body.prblem-core .prblem-sidebar-editorial-list{display:grid;border-top:1px solid var(--border)}
body.prblem-core .prblem-sidebar-editorial-list a{display:block;padding:9px 5px;color:var(--blue);border-bottom:1px solid var(--border);font-size:12px;line-height:1.3;text-decoration:underline;overflow-wrap:anywhere}
body.prblem-core .prblem-sidebar-editorial-list a:nth-child(even){background:var(--prblem-even)}
body.prblem-core .prblem-directory-infeed-ad img{max-width:100%;height:auto}
/* Do not force iframe height:auto: banner embeds (e.g. 728x90) otherwise can acquire default 150px iframe height and leave unused space. */
body.prblem-core .prblem-directory-infeed-ad iframe{max-width:100%}

/* Responsive ad units keep their one supplied code on mobile; never hide it as a desktop-only creative. */
@media(max-width:760px){body.prblem-core .prblem-directory-infeed-ad .prblem-ad--responsive .prblem-ad__desktop{display:block!important;width:100%}}

/* v1.7.10: editorial sidebar cleanup and tighter spacing below ads.
 * No forced height is applied to ad creatives; the network's actual content size is respected.
 */
body.prblem-core .prblem-directory-right .prblem-ad{min-height:0;margin-bottom:10px}
body.prblem-core .prblem-directory-right .prblem-ad__desktop,
body.prblem-core .prblem-directory-right .prblem-ad__mobile{min-height:0}
body.prblem-core .prblem-directory-right .prblem-sidebar-editorial{margin-top:12px}
body.prblem-core .prblem-directory-infeed-ad{padding-block:6px}
body.prblem-core .prblem-directory-infeed-ad>.prblem-ad{min-height:0;margin:0 auto;padding:0}
body.prblem-core .prblem-directory-infeed-ad :where(.prblem-ad__desktop,.prblem-ad__mobile){min-height:0}

/* v1.7.13: Footer-ad spacing is local to the homepage bottom slot.
 * The ad network controls the creative height; we remove only theme-added space.
 */
body.prblem-core .prblem-home-has-bottom-ad > .prblem-directory-content{
  padding-bottom:7px;
}
body.prblem-core .prblem-directory-home > .prblem-home-bottom-ad{
  box-sizing:border-box;width:100%;max-width:100%;min-height:0;
  margin:0;padding:5px 12px 9px;
  display:flex;justify-content:center;align-items:center;
}
body.prblem-core .prblem-directory-home > .prblem-home-bottom-ad > .prblem-ad{
  box-sizing:border-box;min-height:0!important;max-width:100%;width:100%;
  margin:0!important;padding:0!important;
  overflow:visible;
}
body.prblem-core .prblem-home-bottom-ad :is(.prblem-ad__desktop,.prblem-ad__mobile){
  min-height:0;max-width:100%;
}
body.prblem-core .prblem-home-bottom-ad img{max-width:100%;height:auto}
body.prblem-core .prblem-home-bottom-ad iframe{max-width:100%}
@media(max-width:760px){
  body.prblem-core .prblem-directory-home > .prblem-home-bottom-ad{padding:5px 8px 8px}
  body.prblem-core .prblem-home-bottom-ad .prblem-ad--responsive > .prblem-ad__desktop{
    display:block!important;
  }
  /* A desktop-only placement must not reserve a blank strip on mobile. */
  body.prblem-core .prblem-directory-home > .prblem-home-bottom-ad:has(> .prblem-ad--desktop-only){
    display:none;
  }
}

/* v1.7.14 — footer-ad space: earlier fixes targeted only "home_bottom", but
 * the visible 728x90 creative uses "home_after_tools". Both slots now live
 * AFTER the two-column content grid, so neither can be left stranded above
 * an empty portion of the taller sidebar. Only theme-added space is removed.
 */
body.prblem-core .prblem-directory-home.prblem-home-has-bottom-ad > .prblem-directory-content{
  padding-bottom:6px;
}
body.prblem-core .prblem-directory-home > .prblem-home-footer-slot{
  display:flex;align-items:center;justify-content:center;
  width:100%;max-width:100%;min-width:0;min-height:0;
  margin:0;padding:5px 12px 7px;box-sizing:border-box;
}
body.prblem-core .prblem-directory-home > .prblem-home-footer-slot > .prblem-ad{
  min-height:0!important;margin:0!important;padding:0!important;
  box-sizing:border-box;width:100%;max-width:100%;
  display:flex;align-items:center;justify-content:center;
}
body.prblem-core .prblem-home-footer-slot .prblem-ad__desktop,
body.prblem-core .prblem-home-footer-slot .prblem-ad__mobile{
  min-height:0;max-width:100%;
}
body.prblem-core .prblem-home-footer-slot :is(img,video){max-width:100%;height:auto}
body.prblem-core .prblem-home-footer-slot iframe{max-width:100%}
body.prblem-core .prblem-home-footer-slot:empty{display:none}
@media(max-width:760px){
  body.prblem-core .prblem-directory-home > .prblem-home-footer-slot{padding:4px 8px 6px}
  body.prblem-core .prblem-home-footer-slot .prblem-ad--responsive > .prblem-ad__desktop{
    display:block!important
  }
  body.prblem-core .prblem-directory-home > .prblem-home-footer-slot:has(> .prblem-ad--desktop-only){
    display:none
  }
}


/* v1.7.15 - true homepage banner/footer spacing and alignment.
 * Previous changes removed .prblem-ad margin, but the base theme still put a
 * 50px margin ABOVE the footer and the last article group added 27px below it.
 * The banner must align to the left article column, not the entire page body.
 */
body.prblem-core .prblem-directory-home + .prblem-footer{
  margin-top:0;
}
body.prblem-core .prblem-directory-home .prblem-directory-primary > .prblem-directory-group:last-child{
  margin-bottom:0;
}
body.prblem-core .prblem-directory-home > .prblem-home-footer-slot{
  padding-top:5px;
  padding-bottom:7px;
}
@media(min-width:1280px){
  body.prblem-core .prblem-directory-home > .prblem-home-after-tools-ad{
    width:calc(100% - 32px - var(--prblem-ad-rail) - 18px);
    max-width:calc(100% - 32px - var(--prblem-ad-rail) - 18px);
    margin-left:16px;
    margin-right:0;
    padding-inline:0;
  }
}
@media(min-width:961px) and (max-width:1279px){
  body.prblem-core .prblem-directory-home > .prblem-home-after-tools-ad{
    width:calc(100% - 32px);
    margin-left:16px;
    padding-inline:0;
  }
}
@media(max-width:960px){
  body.prblem-core .prblem-directory-home > .prblem-home-after-tools-ad{
    width:calc(100% - 24px);
    margin-left:12px;
    padding-inline:0;
  }
}

/* v1.7.17: focused readability and a useful nonduplicating resources panel.
   Ad slots, creative heights and legacy directory behavior are unchanged. */
body.prblem-core .prblem-directory-feed-entry p{font-size:11.5px;line-height:1.42;color:#425361}
html[data-mode=dark] body.prblem-core .prblem-directory-feed-entry p{color:#cdd4da}
body.prblem-core .prblem-directory-feed-entry h3{line-height:1.36}
@media(min-width:1280px){
  body.prblem-core .prblem-directory-table-header,
  body.prblem-core .prblem-directory-feed-row{grid-template-columns:47px minmax(0,1fr) 184px;gap:8px}
  body.prblem-core .prblem-directory-row-badges{max-width:184px}
  body.prblem-core .prblem-header-nav a,
  body.prblem-core .prblem-header-nav button{font-size:13px}
}
body.prblem-core .prblem-home-help{background:var(--surface);border:1px solid var(--border);margin-top:16px;margin-bottom:14px;min-width:0}
body.prblem-core .prblem-home-help-heading{padding:13px 13px 10px;border-bottom:1px solid var(--border)}
body.prblem-core .prblem-home-help-kicker{font:800 10px/1.1 var(--font);letter-spacing:.05em;color:var(--muted)}
body.prblem-core .prblem-home-help-heading h2{margin:4px 0 7px;font-size:16px;line-height:1.2;color:var(--text)}
body.prblem-core .prblem-home-help-heading p{font-size:12px;line-height:1.45;color:var(--muted);margin:0}
body.prblem-core .prblem-home-help-steps{display:grid;gap:0}
body.prblem-core .prblem-home-help-step{display:flex;align-items:flex-start;gap:10px;padding:10px 13px;border-bottom:1px solid var(--border)}
body.prblem-core .prblem-home-help-number{flex:0 0 23px;font-size:11px;line-height:1.8;font-weight:800;color:var(--blue)}
body.prblem-core .prblem-home-help-step strong{display:block;font-size:12.5px;line-height:1.2;color:var(--text)}
body.prblem-core .prblem-home-help-step p{font-size:11.5px;line-height:1.4;margin:3px 0 0;color:var(--muted)}
body.prblem-core .prblem-home-help-actions{display:grid;gap:0;padding:5px 12px 10px}
body.prblem-core .prblem-home-help-actions :is(a,button){display:flex;align-items:center;gap:7px;text-decoration:none;text-align:left;width:100%;box-sizing:border-box;border:0;border-bottom:1px solid var(--border);background:transparent;padding:9px 4px;font-size:12.5px;line-height:1.3;font-weight:700;color:var(--blue);cursor:pointer}
body.prblem-core .prblem-home-help-actions :is(a,button):last-child{border-bottom:0}
body.prblem-core .prblem-home-help-actions :is(a,button):hover{background:var(--blue-soft)}
body.prblem-core .prblem-home-help-actions .prblem-svg{width:16px;height:16px;flex:0 0 16px}
@media(max-width:700px){body.prblem-core .prblem-home-help{margin-top:14px}}


/* v1.7.20: restore the single centered shell. The content already reserves
   the sidebar through padding-left; never add a second sidebar margin. */
body.prblem-core .prblem-article-topline{align-items:flex-start;flex-wrap:wrap}
body.prblem-core .prblem-article-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:0;max-width:75%}
body.prblem-core .prblem-article-top-actions .prblem-badge-list{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
body.prblem-core .prblem-article-top-actions .prblem-tax-badge{white-space:normal}
body.prblem-core .prblem-article-top-actions .prblem-status{flex-shrink:0}
/* Main and footer share the same 1320px centered frame. */
body.prblem-core main#prblem-content.prblem-download-directory{
  box-sizing:border-box;width:min(100%,var(--prblem-shell-width));
  max-width:var(--prblem-shell-width);min-width:0;
  margin-left:auto;margin-right:auto;
  padding:24px 24px 46px calc(var(--prblem-sidebar-width) + 24px);
  min-height:max(65vh,calc(100vh - 310px));
}
body.prblem-core main#prblem-content.prblem-download-directory > *{min-width:0;max-width:100%;box-sizing:border-box}
@media(max-width:960px){
  body.prblem-core main#prblem-content.prblem-download-directory{
    padding:20px 16px 40px;margin-left:auto;margin-right:auto;
  }
}
@media(max-width:700px){
  body.prblem-core .prblem-article-top-actions{max-width:100%;width:100%;justify-content:flex-start}
  body.prblem-core .prblem-article-top-actions .prblem-badge-list{justify-content:flex-start}
}

/* v1.7.21 targeted desktop navigation + downloads recovery. */
@media(min-width:961px){
 :root{--prblem-sidebar-width:220px}
 body.prblem-core .prblem-site-sidebar{width:var(--prblem-sidebar-width);grid-template-columns:40px minmax(0,1fr)}
 body.prblem-core .prblem-directory-sidebar-links{overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}
 body.prblem-core .prblem-directory-sidebar-links::-webkit-scrollbar{display:none;width:0}
 body.prblem-core .prblem-directory-sidebar-links a,body.prblem-core .prblem-directory-sidebar-links button{overflow-wrap:normal;word-break:normal}
 body.prblem-core main#prblem-content.prblem-download-directory{width:min(100%,var(--prblem-shell-width));max-width:var(--prblem-shell-width);margin-inline:auto;padding:24px 24px 46px calc(var(--prblem-sidebar-width) + 24px)}
}
body.prblem-core .prblem-download-directory .prblem-download-searchbar{display:grid;grid-template-columns:minmax(170px,2fr) minmax(115px,1fr) minmax(130px,1fr) auto;align-items:end;gap:10px;padding:14px;margin:0 0 14px;background:var(--surface,#f2f2f2);border:1px solid var(--border,#ccc);border-radius:3px}
body.prblem-core .prblem-download-searchbar>div{min-width:0}
body.prblem-core .prblem-download-searchbar label{display:block;margin:0 0 5px;font-size:12px;font-weight:700}
body.prblem-core .prblem-download-searchbar :is(input,select){box-sizing:border-box;display:block;width:100%;min-width:0;height:38px;padding:0 9px;border:1px solid var(--border,#bbc4cc);background:var(--surface-soft,#fff);color:var(--text,#222);border-radius:3px;font-size:13px}
body.prblem-core .prblem-download-search-actions{display:flex;gap:7px;align-items:center;min-height:38px}
body.prblem-core .prblem-download-search-actions button{min-height:38px;padding:0 15px;border:1px solid #11638b;background:#116d9e;color:white;font-size:13px;font-weight:700;border-radius:3px;cursor:pointer}
body.prblem-core .prblem-download-directory-filters{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:14px;margin-bottom:15px;border-bottom:1px solid var(--border,#bbb)}
body.prblem-core .prblem-download-directory-filters a{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid var(--border,#ccc);border-radius:3px;background:var(--surface,#eee);color:var(--text,#222);font-size:12px;text-decoration:none}
body.prblem-core .prblem-download-directory-filters a[aria-current=page]{background:#136d9d;color:white;border-color:#136d9d}
body.prblem-core .prblem-download-list-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 8px;border-bottom:1px solid var(--border,#bbb);padding-bottom:7px}
body.prblem-core .prblem-download-list-heading h2{margin:0;font-size:18px}
body.prblem-core .prblem-download-empty{padding:24px;background:var(--surface,#f2f2f2);border:1px solid var(--border,#ccc)}
body.prblem-core .prblem-download-empty p{margin:8px 0}
@media(max-width:1050px){body.prblem-core .prblem-download-directory .prblem-download-searchbar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){body.prblem-core .prblem-download-directory .prblem-download-searchbar{grid-template-columns:minmax(0,1fr)}}

/* v1.7.22: isolated home feed pagination; preserve established columns and ads. */
body.prblem-core .prblem-directory-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px;padding:10px 8px;background:var(--surface,#e5e5e5);border:1px solid #bfc2c5}
body.prblem-core .prblem-directory-pagination a,body.prblem-core .prblem-directory-pagination .prblem-page-current{display:inline-flex;min-width:30px;min-height:30px;align-items:center;justify-content:center;padding:4px 8px;border:1px solid #b8bdc1;background:#f3f3f3;color:#145b88;text-decoration:none;font-weight:700}
body.prblem-core .prblem-directory-pagination .prblem-page-current{background:#175e89;color:#fff;border-color:#175e89}
body.prblem-core .prblem-directory-pagination a:hover,body.prblem-core .prblem-directory-pagination a:focus-visible{background:#d8eaf6;outline:2px solid #278bc4;outline-offset:1px}
html[data-mode=dark] body.prblem-core .prblem-directory-pagination{background:#282b30;border-color:#555}
html[data-mode=dark] body.prblem-core .prblem-directory-pagination a{background:#373d43;color:#bde3ff;border-color:#626a70}
html[data-mode=dark] body.prblem-core .prblem-directory-pagination .prblem-page-current{background:#1672a5;color:#fff}
body.prblem-core .prblem-directory-pagination .prblem-page-ellipsis{padding:0 3px}


/* v1.7.26: page marker below the table headings, no awkward toolbar gap. */
body.prblem-core .prblem-directory-page-meta{
 display:flex;justify-content:flex-end;align-items:center;min-height:0;
 margin:-1px 0 0;padding:0 9px;background:var(--surface,#e6e6e6);
 border-left:1px solid var(--border,#c5c5c5);border-right:1px solid var(--border,#c5c5c5);
}
body.prblem-core .prblem-directory-page-meta .prblem-page-position{
 margin:3px 0;font-size:10px;font-weight:700;line-height:1.2;
 color:var(--muted,#56616b);border:0;border-radius:0;background:transparent;padding:0;
}
body.prblem-core main#prblem-content.prblem-sitemap{
 box-sizing:border-box;width:min(100%,var(--prblem-shell-width));
 max-width:var(--prblem-shell-width);margin:0 auto;
 padding:22px 24px 50px calc(var(--prblem-sidebar-width) + 24px);
 min-height:calc(100vh - 180px);color:var(--text,#222);
}
body.prblem-core .prblem-sitemap-hero{
 background:var(--surface,#f1f1f1);border:1px solid var(--border,#c8c8c8);
 padding:22px 24px;margin:0 0 16px;
}
body.prblem-core .prblem-sitemap-hero h1{margin:5px 0 8px;font-size:30px;line-height:1.15}
body.prblem-core .prblem-sitemap-intro{margin:0;color:var(--muted,#5e6670);line-height:1.55;font-size:13px}
body.prblem-core .prblem-sitemap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
body.prblem-core .prblem-sitemap-section{
 box-sizing:border-box;min-width:0;background:var(--surface,#f0f0f0);
 border:1px solid var(--border,#c8c8c8);padding:17px 19px;
}
body.prblem-core .prblem-sitemap-section h2{
 font-size:19px;line-height:1.25;color:var(--text,#222);
 margin:0 0 12px;padding:0 0 9px;border-bottom:2px solid #1684b9;
}
body.prblem-core .prblem-sitemap-section ul{list-style:none;margin:0;padding:0}
body.prblem-core .prblem-sitemap-section li{
 margin:0;padding:7px 0;border-bottom:1px solid var(--border,#d6d6d6);
 font-size:12.5px;line-height:1.4;overflow-wrap:anywhere;
}
body.prblem-core .prblem-sitemap-section li:last-child{border-bottom:0}
body.prblem-core .prblem-sitemap-section li a{color:var(--blue,#08699c);text-decoration:none}
body.prblem-core .prblem-sitemap-section li a:hover,
body.prblem-core .prblem-sitemap-section li a:focus-visible{text-decoration:underline}
body.prblem-core .prblem-sitemap-section .prblem-sitemap-more{
 display:inline-flex;margin-top:14px;padding:8px 11px;background:var(--blue-soft,#e5f2fa);
 border:1px solid var(--border,#b6c9d5);border-radius:3px;font-size:12px;text-decoration:none;
}
body.prblem-core .prblem-download-directory-list{gap:14px}
body.prblem-core .prblem-download-directory-list .prblem-download-card{
 align-items:flex-start;padding:15px 15px;gap:12px;
 background:var(--surface,#f0f0f0);border-radius:3px;
 box-shadow:0 1px 0 rgba(0,0,0,.04);
}
body.prblem-core .prblem-download-directory-list .prblem-download-iconbox{
 width:52px;height:52px;flex:0 0 52px;
}
body.prblem-core .prblem-download-directory-list .prblem-download-icon,
body.prblem-core .prblem-download-directory-list .prblem-download-thumb{
 width:50px;height:50px;
}
body.prblem-core .prblem-download-directory-list .prblem-download-title{font-size:15px;line-height:1.3}
body.prblem-core .prblem-download-directory-list .prblem-download-summary{font-size:12px!important;line-height:1.5!important}
body.prblem-core .prblem-download-directory-list .prblem-download-facts{font-size:11px;line-height:1.55}
body.prblem-core .prblem-download-directory-list .prblem-download-actions{margin-left:auto}
body.prblem-core .prblem-download-directory-list .prblem-download-card:hover{
 border-color:#69a8c9;border-left-color:#0879ab;background:var(--blue-soft,#eaf4fa)
}
body.prblem-core .prblem-download-directory-filters{gap:7px}
body.prblem-core .prblem-download-directory .prblem-download-meta-note{
 font-size:11.5px;line-height:1.5;margin:0 0 13px;
}
@media(max-width:960px){
 body.prblem-core main#prblem-content.prblem-sitemap{padding:18px 16px 40px}
}
@media(max-width:700px){
 body.prblem-core .prblem-sitemap-grid{grid-template-columns:minmax(0,1fr)}
 body.prblem-core .prblem-sitemap-hero{padding:17px}
 body.prblem-core .prblem-sitemap-hero h1{font-size:25px}
}

/* v1.7.27: compact page position inside the table header; no extra row. */
body.prblem-core .prblem-directory-page-meta{display:none!important}
body.prblem-core .prblem-directory-table-header .prblem-directory-header-topics{
 display:flex;align-items:center;justify-content:space-between;gap:5px;min-width:0;
}
body.prblem-core .prblem-directory-table-header .prblem-page-position{
 display:inline-block;flex-shrink:0;white-space:nowrap;margin:0;padding:1px 4px;
 border:1px solid var(--border,#bbb);border-radius:2px;
 background:var(--surface,#eee);color:var(--muted,#56616b);
 font-size:9px;font-weight:600;line-height:1.3;letter-spacing:0;
}
@media(max-width:620px){body.prblem-core .prblem-directory-table-header .prblem-directory-header-topics{gap:2px}body.prblem-core .prblem-directory-table-header .prblem-page-position{font-size:8px;padding:1px 2px}}

/* v1.7.29: current page stays within the Topics & Tags heading, without adding a row. */
body.prblem-core .prblem-directory-table-header .prblem-directory-header-topics{display:flex;align-items:center;justify-content:space-between;gap:6px}
body.prblem-core .prblem-directory-table-header .prblem-page-position{font-size:10px;line-height:1.2;padding:2px 5px;border:1px solid var(--border,#bbb);border-radius:2px;white-space:nowrap}

/* v1.7.30: compact human sitemap. The left column stacks short lists;
   the long Solutions directory uses two text columns without card gaps. */
body.prblem-core .prblem-sitemap-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:14px;align-items:start}
body.prblem-core .prblem-sitemap-left,body.prblem-core .prblem-sitemap-right{min-width:0;display:flex;flex-direction:column;gap:14px}
body.prblem-core .prblem-sitemap-right .prblem-sitemap-section ul{columns:2;column-gap:20px;column-rule:1px solid var(--border,#d3d3d3)}
body.prblem-core .prblem-sitemap-right .prblem-sitemap-section li{break-inside:avoid;page-break-inside:avoid;overflow-wrap:anywhere}
body.prblem-core .prblem-sitemap-layout .prblem-sitemap-section{margin:0}
@media(max-width:1050px){body.prblem-core .prblem-sitemap-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}body.prblem-core .prblem-sitemap-right .prblem-sitemap-section ul{columns:1}}
@media(max-width:700px){body.prblem-core .prblem-sitemap-layout{grid-template-columns:minmax(0,1fr)}body.prblem-core .prblem-sitemap-right .prblem-sitemap-section ul{columns:1}}

/* v1.7.31: download filters share the heading panel without an extra row. */
body.prblem-core .prblem-download-directory-head{display:grid;grid-template-columns:minmax(180px,0.8fr) minmax(0,2fr);column-gap:20px;align-items:center;padding:20px 24px;margin-bottom:13px}
body.prblem-core .prblem-download-directory-head>.prblem-eyebrow,body.prblem-core .prblem-download-directory-head>h1,body.prblem-core .prblem-download-directory-head>p{grid-column:1;min-width:0}
body.prblem-core .prblem-download-directory-head>.prblem-eyebrow{align-self:end}
body.prblem-core .prblem-download-directory-head>p{align-self:start}
body.prblem-core .prblem-download-directory-head .prblem-download-searchbar{grid-column:2;grid-row:1 / span 3;display:grid;grid-template-columns:minmax(130px,1.5fr) minmax(100px,1fr) minmax(110px,1fr) auto;gap:7px;align-items:end;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
body.prblem-core .prblem-download-directory-head .prblem-download-searchbar label{font-size:11px;margin-bottom:4px}
body.prblem-core .prblem-download-directory-head .prblem-download-searchbar :is(input,select){height:36px;font-size:12px}
body.prblem-core .prblem-download-directory-head .prblem-download-search-actions button{height:36px}
@media(max-width:1150px){body.prblem-core .prblem-download-directory-head{grid-template-columns:minmax(0,1fr)}body.prblem-core .prblem-download-directory-head .prblem-download-searchbar{grid-column:1;grid-row:auto;grid-template-columns:minmax(150px,2fr) minmax(110px,1fr) minmax(110px,1fr) auto;margin-top:15px}}
@media(max-width:700px){body.prblem-core .prblem-download-directory-head .prblem-download-searchbar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:450px){body.prblem-core .prblem-download-directory-head .prblem-download-searchbar{grid-template-columns:minmax(0,1fr)}}

/* v1.7.33 — scoped regular pages: retain original sidebar/layout offsets. */
body.prblem-core.page main#prblem-content.prblem-regular-page {
  box-sizing:border-box;
  width:auto;
  max-width:none;
  margin:0;
  padding:26px clamp(20px,3vw,42px) 42px;
  min-height:0;
  background:transparent;
  border:0;
}
body.prblem-core.page main#prblem-content.prblem-regular-page > h1,
body.prblem-core.page main#prblem-content.prblem-regular-page > .prblem-article-body,
body.prblem-core.page main#prblem-content.prblem-regular-page > .prblem-contact-form {
  box-sizing:border-box;
  max-width:900px;
  width:100%;
  margin-left:auto;
  margin-right:auto;
}
body.prblem-core.page main#prblem-content.prblem-regular-page > .prblem-article-body {
  line-height:1.65;
}
body.prblem-core.page main#prblem-content.prblem-regular-page > h1 {
  padding:0 0 13px;
  margin-top:0;
  margin-bottom:20px;
  border-bottom:1px solid var(--border,#c9c9c9);
}
body.prblem-core.page main#prblem-content.prblem-regular-page > .prblem-article-body h2 {
  margin:26px 0 12px;
}
body.prblem-core.page main#prblem-content.prblem-regular-page > .prblem-article-body p {
  max-width:80ch;
}
body.prblem-core .prblem-contact-form {
  margin-top:26px;
  padding:24px;
  border:1px solid var(--border,#c8c8c8);
  background:var(--surface,#f1f1f1);
}
body.prblem-core .prblem-contact-form h2{margin:0 0 18px;font-size:21px}
body.prblem-core .prblem-contact-form form{display:grid;gap:9px;max-width:650px}
body.prblem-core .prblem-contact-form label{font-size:12px;font-weight:700}
body.prblem-core .prblem-contact-form input,
body.prblem-core .prblem-contact-form textarea{
  display:block;width:100%;box-sizing:border-box;
  padding:10px 12px;font:inherit;color:var(--text,#222);
  background:var(--surface,#fff);border:1px solid var(--border,#aaa);border-radius:3px;
}
body.prblem-core .prblem-contact-form button{
  justify-self:start;background:#087cae;color:#fff;border:0;border-radius:3px;
  padding:11px 19px;cursor:pointer;font-weight:700;
}
body.prblem-core .prblem-contact-form button:hover{background:#075c85}
body.prblem-core .prblem-contact-form .prblem-contact-privacy{font-size:12px;line-height:1.5;color:var(--muted,#667);margin:5px 0}
body.prblem-core .prblem-contact-form .prblem-contact-feedback{border-left:3px solid #087cae;padding:9px 12px;background:var(--blue-soft,#e6f2f9)}
body.prblem-core .prblem-contact-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){
 body.prblem-core.page main#prblem-content.prblem-regular-page{padding:18px 14px 28px}
 body.prblem-core .prblem-contact-form{padding:16px}
}


/* v1.7.34: regular-page shell uses the same reserved sidebar gutter as Downloads.
   Unlike prior versions, do not center the main element across the sidebar. */
@media (min-width:961px){
  body.prblem-core.page main#prblem-content.prblem-static-page-shell.prblem-regular-page{
    box-sizing:border-box!important;width:min(100%,var(--prblem-shell-width))!important;
    max-width:var(--prblem-shell-width)!important;
    margin:0 auto 24px!important;
    padding:24px 24px 46px calc(var(--prblem-sidebar-width) + 24px)!important;
    min-height:calc(100vh - 170px);background:transparent;border:0;
  }
}
body.prblem-core.page main#prblem-content.prblem-static-page-shell .prblem-static-page-card{
  box-sizing:border-box;max-width:100%;min-width:0;
  margin:0;padding:25px 28px 32px;background:var(--surface,#f1f1f1);
  border:1px solid var(--border,#c6c6c6);color:var(--text,#222);
}
body.prblem-core.page main#prblem-content.prblem-static-page-shell .prblem-static-page-card > h1,
body.prblem-core.page main#prblem-content.prblem-static-page-shell .prblem-static-page-card > .prblem-article-body,
body.prblem-core.page main#prblem-content.prblem-static-page-shell .prblem-static-page-card > .prblem-contact-form{
  width:100%;max-width:900px;min-width:0;margin-left:0;margin-right:0;
}
body.prblem-core.page main#prblem-content.prblem-static-page-shell .prblem-article-body{line-height:1.65;overflow-wrap:anywhere}
body.prblem-core.page main#prblem-content.prblem-static-page-shell .prblem-article-body p{max-width:82ch}
body.prblem-core.page main#prblem-content.prblem-static-page-shell .prblem-static-page-card > h1{
  margin:0 0 18px;padding:0 0 12px;border-bottom:1px solid var(--border,#ccc);
}
body.prblem-core.page main#prblem-content.prblem-static-page-shell .prblem-contact-form{margin-top:26px}
@media(max-width:960px){
 body.prblem-core.page main#prblem-content.prblem-static-page-shell.prblem-regular-page{
  width:100%!important;max-width:100%!important;margin:0 auto 24px!important;
  padding:18px 16px 35px!important;background:transparent;border:0;
 }
 body.prblem-core.page main#prblem-content.prblem-static-page-shell .prblem-static-page-card{padding:20px 18px}
}
@media(max-width:600px){
 body.prblem-core.page main#prblem-content.prblem-static-page-shell.prblem-regular-page{padding:10px 10px 25px!important}
 body.prblem-core.page main#prblem-content.prblem-static-page-shell .prblem-static-page-card{padding:16px 13px}
}

/* v1.7.34 Premium Compact cards, no remote icons/fonts and no invented license claims. */
.prblem-download-directory-list .prblem-download-card{
 display:grid;grid-template-columns:60px minmax(0,1fr) auto;
 align-items:start;gap:12px 13px;min-height:168px;padding:16px;
 border:1px solid var(--border,#c3ccd4);border-left:3px solid #1685b6;
 border-radius:7px;background:var(--surface,#f3f4f5);
 box-shadow:0 2px 6px rgba(12,33,54,.045);
 transition:background .15s,border-color .15s,box-shadow .15s,transform .15s;
}
.prblem-download-directory-list .prblem-download-card:hover,
.prblem-download-directory-list .prblem-download-card:focus-within{
 background:var(--blue-soft,#edf5fa);border-color:#75aac7;border-left-color:#0879ab;
 box-shadow:0 4px 13px rgba(13,64,100,.10);transform:translateY(-1px);
}
.prblem-download-directory-list .prblem-download-iconbox{
 width:60px;height:60px;min-width:0;display:grid;place-items:center;
 background:var(--blue-soft,#e6f3fa);border:1px solid var(--border,#c5d8e4);
 border-radius:8px;overflow:hidden;
}
.prblem-download-directory-list .prblem-download-icon,
.prblem-download-directory-list .prblem-download-thumb{width:48px;height:48px;object-fit:contain;border:0;background:transparent}
.prblem-download-directory-list .prblem-download-icon{display:grid;place-items:center;font-size:11px}
.prblem-download-directory-list .prblem-download-info{min-width:0;flex:none}
.prblem-download-directory-list .prblem-download-title{font-size:16px;line-height:1.25;font-weight:800;margin-bottom:3px}
.prblem-download-directory-list .prblem-download-summary{font-size:12px!important;line-height:1.48!important;margin:5px 0 8px!important}
.prblem-download-directory-list .prblem-download-publisher{font-size:11px;color:var(--muted,#626c75);line-height:1.35;margin:3px 0 7px}
.prblem-download-directory-list .prblem-download-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.prblem-download-directory-list .prblem-download-tags span{font-size:10px;font-weight:700;line-height:1.25;padding:3px 6px;border:1px solid var(--border,#c5d3dc);background:var(--surface-soft,#edf1f4);border-radius:3px;color:var(--text,#334)}
.prblem-download-directory-list .prblem-download-facts{font-size:10.5px;line-height:1.5;margin-top:8px}
.prblem-download-directory-list .prblem-download-actions{min-width:105px;max-width:140px;margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;gap:8px}
.prblem-download-directory-list .prblem-download-button{min-height:37px;padding:9px 11px;border-radius:5px;box-shadow:0 1px 2px rgba(0,0,0,.09)}
.prblem-download-directory-list .prblem-download-detail-link{font-size:11px;align-self:center}
@media(max-width:700px){
 .prblem-download-directory-list .prblem-download-card{grid-template-columns:52px minmax(0,1fr);gap:10px;min-height:0;padding:13px}
 .prblem-download-directory-list .prblem-download-iconbox{width:52px;height:52px}
 .prblem-download-directory-list .prblem-download-actions{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;max-width:none;width:100%;margin-top:2px}
 .prblem-download-directory-list .prblem-download-button{flex:1;max-width:220px}
}
@media(prefers-reduced-motion:reduce){.prblem-download-directory-list .prblem-download-card{transition:none}.prblem-download-directory-list .prblem-download-card:hover{transform:none}}


/* v1.7.35 / Center v1.6.7 — compact Premium cards; no fixed heights. */
.prblem-download-directory-list .prblem-download-card{
 min-height:0; height:100%; padding:12px 13px;
 grid-template-columns:52px minmax(0,1fr) 105px;
 gap:8px 11px; align-items:start;
}
.prblem-download-directory-list .prblem-download-iconbox{
 width:52px;height:52px;border-radius:6px;
}
.prblem-download-directory-list .prblem-download-icon,
.prblem-download-directory-list .prblem-download-thumb{
 width:46px;height:46px;object-fit:contain;
}
.prblem-download-directory-list .prblem-download-title{font-size:15px;line-height:1.22;margin:0 0 2px}
.prblem-download-directory-list .prblem-download-publisher{font-size:10.5px;line-height:1.25;margin:1px 0 4px}
.prblem-download-directory-list .prblem-download-summary{font-size:11.5px!important;line-height:1.35!important;margin:3px 0 5px!important}
.prblem-download-directory-list .prblem-download-tags{margin:5px 0 0;gap:4px}
.prblem-download-directory-list .prblem-download-tags span{font-size:9.5px;padding:2px 5px}
.prblem-download-directory-list .prblem-download-facts{font-size:10px;margin-top:5px;line-height:1.25}
.prblem-download-directory-list .prblem-download-actions{
 min-width:0;max-width:none;width:105px;
 align-self:start;justify-content:flex-start;gap:7px;
}
.prblem-download-directory-list .prblem-download-button{
 min-height:34px;padding:7px 8px;font-size:11px;
}
.prblem-download-directory-list .prblem-download-detail-link{
 align-self:center;font-size:10.5px;
}
@media(max-width:700px){
 .prblem-download-directory-list .prblem-download-card{
  grid-template-columns:48px minmax(0,1fr);padding:11px;gap:9px;
 }
 .prblem-download-directory-list .prblem-download-iconbox{width:48px;height:48px}
 .prblem-download-directory-list .prblem-download-icon,
 .prblem-download-directory-list .prblem-download-thumb{width:43px;height:43px}
 .prblem-download-directory-list .prblem-download-actions{
  grid-column:1/-1;flex-direction:row;align-items:center;
  justify-content:space-between;width:100%;max-width:none;margin:0;
 }
 .prblem-download-directory-list .prblem-download-button{max-width:210px}
}


/* v1.7.36: Premium Compact actions share one compact block. */
.prblem-download-directory-list .prblem-download-card{
  padding:11px 12px; gap:7px 10px; min-height:0; height:100%;
  grid-template-columns:50px minmax(0,1fr) 105px;
}
.prblem-download-directory-list .prblem-download-actions{
  display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;
  gap:5px;align-self:start;width:105px;min-width:0;
}
.prblem-download-directory-list .prblem-download-detail-link{
  align-self:center;display:inline-block;margin:0;line-height:1.25;
}
.prblem-download-directory-list .prblem-download-alternate{display:none!important}
.prblem-download-directory-list .prblem-download-details{
  font-size:10px;line-height:1.3;margin-top:5px;
}
.prblem-download-directory-list .prblem-download-facts{margin-top:4px}
@media(max-width:700px){
 .prblem-download-directory-list .prblem-download-card{grid-template-columns:48px minmax(0,1fr)}
 .prblem-download-directory-list .prblem-download-actions{
   grid-column:1/-1;display:flex;flex-direction:row;align-items:center;
   justify-content:space-between;width:100%;max-width:none;
 }
}


/* v1.7.39 / Center 1.6.11 — scoped premium card final polish. */
.prblem-download-directory-list .prblem-download-heading{
 display:flex!important;flex-wrap:wrap!important;align-items:center!important;
 column-gap:0!important;row-gap:4px!important;min-width:0!important;
 margin:0 0 5px!important;
}
.prblem-download-directory-list .prblem-download-title{
 display:inline-block!important;max-width:100%!important;min-width:0!important;
 overflow-wrap:anywhere!important;margin:0!important;
}
.prblem-download-directory-list .prblem-download-publisher-group{
 display:inline-flex!important;align-items:center!important;gap:8px!important;
 margin-left:8px!important;max-width:100%!important;min-width:0!important;
 white-space:normal!important;vertical-align:middle!important;
}
.prblem-download-directory-list .prblem-download-separator{
 display:block!important;width:1px!important;height:13px!important;flex:0 0 1px!important;
 background:var(--border,#aeb8c1)!important;
}
.prblem-download-directory-list .prblem-download-publisher{
 display:inline!important;border:0!important;padding:0!important;margin:0!important;
 min-width:0!important;overflow-wrap:anywhere!important;font-size:10px!important;
 line-height:1.3!important;color:var(--muted,#64717c)!important;
}
.prblem-download-directory-list .prblem-download-card{
 min-height:0!important;align-items:start!important;transition:background-color .15s,border-color .15s!important;
}
.prblem-download-directory-list .prblem-download-card:hover,
.prblem-download-directory-list .prblem-download-card:focus-within{
 background:var(--blue-soft,#edf6fa)!important;border-color:#72acc9!important;border-left-color:#0879ab!important;
 transform:none!important;
}
.prblem-download-directory-list .prblem-download-info{min-width:0!important}
.prblem-download-directory-list .prblem-download-actions{
 justify-content:flex-start!important;align-self:start!important;gap:3px!important;
}
.prblem-download-directory-list .prblem-download-alternate{
 display:block!important;opacity:.8!important;color:var(--muted,#687783)!important;
}
.prblem-download-directory-list .prblem-download-alternate:hover,
.prblem-download-directory-list .prblem-download-alternate:focus-visible{opacity:1!important}
.prblem-download-directory-list .prblem-download-actions a:focus-visible{
 outline:2px solid #148dc1!important;outline-offset:3px!important;
}
.prblem-download-directory-list .prblem-download-icon--fallback{
 display:grid!important;place-items:center!important;width:46px!important;height:46px!important;
 font-size:24px!important;line-height:1!important;font-family:Arial,sans-serif!important;
 color:#17678d!important;background:#e1eef5!important;border:1px solid #b9d3e1!important;
 border-radius:6px!important;
}
.prblem-download-directory-list .prblem-download-tags{
 display:flex!important;flex-wrap:wrap!important;gap:5px!important;align-items:center!important;
}
.prblem-download-directory-list .prblem-download-tags span{display:inline-block!important;margin:0!important}
@media(max-width:700px){
 .prblem-download-directory-list .prblem-download-publisher-group{margin-left:8px!important}
 .prblem-download-directory-list .prblem-download-actions{gap:8px!important}
}
@media(prefers-reduced-motion:reduce){
 .prblem-download-directory-list .prblem-download-card{transition:none!important}
}

/* v1.7.41: Transparent application artwork without decorative tile.
   Restrict to real image thumbnails; keep fallback icons legible. */
body.prblem-core .prblem-download-directory-list .prblem-download-iconbox:has(img.prblem-download-thumb){
 background:transparent!important;border:0!important;box-shadow:none!important;
 border-radius:0!important;overflow:visible!important;
}
body.prblem-core .prblem-download-directory-list .prblem-download-iconbox img.prblem-download-thumb{
 background:transparent!important;border:0!important;border-radius:0!important;
 box-shadow:none!important;padding:0!important;object-fit:contain!important;
}

/* v1.7.42: preserve existing sitemap columns; downloads alone uses two columns. */
body.prblem-core .prblem-sitemap-left .prblem-sitemap-section--downloads ul{columns:2;column-gap:20px;column-rule:1px solid var(--border,#d3d3d3)}
body.prblem-core .prblem-sitemap-left .prblem-sitemap-section--downloads li{break-inside:avoid;page-break-inside:avoid;overflow-wrap:anywhere}
@media(max-width:1050px){body.prblem-core .prblem-sitemap-left .prblem-sitemap-section--downloads ul{columns:1}}

/* v1.7.55: human Sitemap categories and blog lists use the same two-column
   reading pattern as Solutions, without changing Downloads or Solutions. */
body.prblem-core .prblem-sitemap-left .prblem-sitemap-section--categories ul,
body.prblem-core .prblem-sitemap-left .prblem-sitemap-section--blog ul{
 columns:2;column-gap:20px;column-rule:1px solid var(--border,#d3d3d3);
}
body.prblem-core .prblem-sitemap-left .prblem-sitemap-section--categories li,
body.prblem-core .prblem-sitemap-left .prblem-sitemap-section--blog li{
 break-inside:avoid;page-break-inside:avoid;overflow-wrap:anywhere;
}
/* Below the same breakpoint used by the existing Solutions list, return to
   one text column so long blog headlines remain readable on small screens. */
@media(max-width:1050px){
 body.prblem-core .prblem-sitemap-left .prblem-sitemap-section--categories ul,
 body.prblem-core .prblem-sitemap-left .prblem-sitemap-section--blog ul{
  columns:1;column-rule:none;
 }
}

/* v1.7.56: Code Library in quick navigation; compact spacing before mobile collapse. */
body.prblem-core .prblem-header-nav{gap:10px}
body.prblem-core .prblem-header-nav>a[aria-current="page"]{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
@media(min-width:761px) and (max-width:1370px){
 body.prblem-core .prblem-header-inner{gap:10px}
 body.prblem-core .prblem-header-nav{gap:7px}
 body.prblem-core .prblem-header-search{flex:0 1 380px}
}
@media(min-width:761px) and (max-width:1150px){
 body.prblem-core .prblem-header-search{flex:0 1 260px}
}
