/* Grokipedia skin: loads after theme.css. Paper background, serif headings, teal + gold + rust palette, wiki-style entries.
   Only the identity layer lives here; component mechanics stay in theme.css. */

/* ═══ Tokens ═══ */
:root{
  --tsm-navy:#0F4C5C;--tsm-navy-2:#15606F;--tsm-navy-3:#0B3A47;--tsm-navy-soft:#E6F0F1;--tsm-navy-deep:#0A2B33;
  --tsm-saffron:#A8561B;--tsm-saffron-soft:#FBF1E3;--tsm-orange:#B8651E;--tsm-orange-2:#94501A;--tsm-amber:#E09F3E;--tsm-amber-soft:#FBF1DC;--tsm-amber-text:#7A4E10;
  --tsm-green:#2E7D4F;--tsm-green-2:#1F5E3A;--tsm-green-soft:#E7F2EA;--tsm-green-line:#BFDCC9;
  --tsm-red:#9A1B2E;--tsm-red-soft:#FBECEE;--tsm-red-line:#F1C6CC;
  --tsm-blue:#1D4E89;--tsm-blue-2:#163C6A;--tsm-blue-soft:#EAF0F7;--tsm-blue-line:#C8D7E9;
  --tsm-gold:#C9962B;--tsm-flag-saffron:#E09F3E;--tsm-flag-green:#2E7D4F;
  --tsm-text:#1C1917;--tsm-text-2:#3F3A36;--tsm-muted:#6F675F;--tsm-border:#E3DCCF;--tsm-bg:#F3EFE6;--tsm-card:#FFFDF9;
  --tsm-r:6px;--tsm-r-sm:4px;--tsm-shadow:0 1px 0 rgba(28,25,23,.04);--tsm-shadow-lg:0 10px 28px rgba(28,25,23,.10);
  --gp-paper:#F8F5EE;--gp-paper-2:#F1ECE1;--gp-ink:#1C1917;--gp-line:#E3DCCF;
  --gp-serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Times New Roman",serif;
}
body{background:var(--gp-paper);color:var(--gp-ink)}
h1,h2,h3,.tsm-st,.tsm-h2,.tsm-band-title,.tsm-hero-title,.tsm-card-title,.tsm-dcard-title,.tsm-sb-card h3,.tsm-sb-title,.gp-entry-title,.tsm-urow-title,.tsm-nrow-title{font-family:var(--gp-serif);letter-spacing:0;font-weight:700}
a{color:var(--tsm-navy)}
a:hover{color:var(--tsm-orange-2)}
.tsm-btn{border-radius:6px}
.tsm-btn-orange{box-shadow:none}
.tsm-btn-outline{background:var(--tsm-card)}
.tsm-pill,.tsm-badge{border-radius:4px;font-weight:600}
.tsm-chip{border-radius:4px;background:var(--tsm-card)}
.tsm-container{max-width:1280px}

/* ═══ Header ═══ */
.gp-header{background:var(--tsm-card);border-bottom:1px solid var(--gp-line)}
.gp-rule{height:3px;background:linear-gradient(90deg,var(--tsm-gold),var(--tsm-navy))}
.tsm-tricolor{display:none}
.gp-topbar{display:none;background:var(--gp-paper-2);border-bottom:1px solid var(--gp-line);font-size:12px;color:var(--tsm-muted)}
.gp-topbar-inner{display:flex;align-items:center;justify-content:space-between;height:30px;gap:12px}
.gp-topbar-left{display:flex;align-items:center;gap:8px;white-space:nowrap}
.gp-topbar-date{font-family:var(--gp-serif);font-style:italic}
.gp-topbar-right{display:flex;gap:16px}
.gp-topbar-right a{color:var(--tsm-text-2);font-weight:600}
.gp-topbar-right a:hover{color:var(--tsm-navy);text-decoration:underline;text-underline-offset:3px}
.tsm-header-inner{height:62px}
.tsm-logo{color:var(--gp-ink);font-size:23px;gap:10px}
.tsm-logo-name{font-family:var(--gp-serif);font-weight:700;letter-spacing:-.01em}
.tsm-logo-text small{font-size:9px;letter-spacing:.16em;color:var(--tsm-saffron)}
.tsm-logo-mark{background:var(--tsm-navy);border-radius:5px;font-family:var(--gp-serif);font-size:20px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}
.tsm-logo-mark-xs{font-size:11px;border-radius:3px}
.tsm-nav>a,.tsm-dd-btn{color:var(--tsm-text-2);font-size:14px;font-weight:600;border-radius:4px;padding:7px 10px}
.tsm-nav>a:hover,.tsm-dd-btn:hover,.tsm-dd.open .tsm-dd-btn{background:transparent;color:var(--tsm-navy);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px;text-decoration-color:var(--tsm-gold)}
.tsm-nav>a.active{box-shadow:none;background:transparent;color:var(--tsm-navy);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px;text-decoration-color:var(--tsm-gold);border-radius:4px}
.gp-nav-accent{color:var(--tsm-saffron)!important}
.tsm-dd-menu{border-radius:6px;box-shadow:var(--tsm-shadow-lg);background:var(--tsm-card)}
.tsm-dd-menu a{border-radius:4px}
.tsm-icon-btn{border-radius:6px}
.tsm-btn-search{border-radius:6px}
.tsm-search-overlay{background:var(--gp-paper-2)}
.tsm-search-form{border-radius:6px;background:var(--tsm-card)}
.tsm-live-results{border-radius:6px}
.tsm-mobile{background:var(--tsm-card)}
.tsm-mobile-chips a{border-radius:4px;background:var(--gp-paper)}

/* ═══ Hero ═══ */
.gp-hero{background:radial-gradient(1200px 400px at 10% -10%,#FFFFFF 0,var(--gp-paper) 60%),var(--gp-paper);color:var(--gp-ink);padding:30px 0 22px;border-bottom:1px solid var(--gp-line)}
.gp-hero-inner{max-width:820px}
.gp-hero .tsm-hero-kicker{color:var(--tsm-muted);font-size:13.5px;margin-bottom:14px}
.gp-kicker-pill{display:inline-flex;align-items:center;font-family:var(--gp-serif);font-style:italic;font-size:13.5px;color:var(--tsm-navy);background:var(--tsm-navy-soft);padding:3px 10px;border-radius:4px;border:1px solid #CFE0E2}
.gp-hero .tsm-hero-title{color:var(--gp-ink);font-size:30px;line-height:1.18;font-weight:700;margin-bottom:12px}
.gp-hero .tsm-hero-title em{font-style:italic;color:var(--tsm-saffron);font-weight:700}
.gp-hero .tsm-hero-desc{color:var(--tsm-text-2);font-size:15.5px;max-width:680px;margin-bottom:18px}
.gp-hero .tsm-hero-search{box-shadow:0 1px 0 rgba(28,25,23,.04),0 12px 30px rgba(28,25,23,.08);border:1px solid var(--gp-line);border-radius:8px;max-width:720px;background:#fff}
.gp-hero-links{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
.gp-hero .tsm-hstats{border-top:1px solid var(--gp-line);margin-top:22px;padding-top:14px;grid-template-columns:repeat(3,1fr)}
.gp-hero .tsm-hstats b{color:var(--tsm-navy);font-family:var(--gp-serif);font-size:24px}
.gp-hero .tsm-hstats span{color:var(--tsm-muted)}
/* A-Z strip */
.gp-az{display:flex;flex-wrap:nowrap;align-items:center;gap:3px;margin:16px 0 0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:2px}
.gp-az::-webkit-scrollbar{display:none}
.gp-az-label{white-space:nowrap;flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--tsm-muted);margin-right:6px;text-transform:uppercase}
.gp-az a,.gp-az-off{flex-shrink:0;display:inline-grid;place-items:center;min-width:27px;height:28px;padding:0 5px;border-radius:4px;font-family:var(--gp-serif);font-size:14px;font-weight:700;border:1px solid var(--gp-line);background:var(--tsm-card);color:var(--tsm-navy)}
.gp-az a:hover,.gp-az a.active{background:var(--tsm-navy);color:#fff;border-color:var(--tsm-navy)}
.gp-az-off{color:#B9B1A5;background:transparent;border-color:transparent}
.gp-az-page{margin:18px 0 6px;position:sticky;top:64px;z-index:5;background:var(--gp-paper);padding:8px 0;border-bottom:1px solid var(--gp-line)}
body.admin-bar .gp-az-page{top:96px}
/* finder strip */
.tsm-strip{background:var(--gp-paper-2);border-top:1px solid var(--gp-line);border-bottom:1px solid var(--gp-line)}
.tsm-strip-text b{font-family:var(--gp-serif);font-size:16px}

/* ═══ Section titles ═══ */
.tsm-st-row{margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--gp-line);align-items:flex-end}
.tsm-st,.tsm-h2{padding-left:0;font-size:22px;font-weight:700}
.tsm-st::before,.tsm-h2::before{display:none}
.tsm-h2{padding-bottom:6px;border-bottom:1px solid var(--gp-line);margin-bottom:12px}
.tsm-h2>.tsm-i,.tsm-st>.tsm-i{display:none}
.tsm-st-emoji,.tsm-band-emoji{display:none}
.tsm-st-sub{margin-left:0;font-style:italic;font-family:var(--gp-serif);font-size:14px}
.tsm-st-link{font-size:13px;padding-bottom:2px}
.tsm-home{padding-top:26px}

/* ═══ Portals, Did you know, entry rows ═══ */
.gp-portal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.gp-portal{background:var(--tsm-card);border:1px solid var(--gp-line);border-radius:6px;padding:14px 16px 12px;display:flex;flex-direction:column}
.gp-portal h3{font-size:16px;margin:0 0 8px;display:flex;align-items:center;gap:6px;padding-bottom:8px;border-bottom:1px solid var(--gp-line)}
.gp-portal ul{list-style:none}
.gp-portal li a{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 2px;border-bottom:1px dotted var(--gp-line);font-size:14px;color:var(--tsm-text)}
.gp-portal li:last-child a{border-bottom:0}
.gp-portal li a:hover{color:var(--tsm-navy)}
.gp-portal li a:hover span:first-child{text-decoration:underline;text-underline-offset:3px}
.gp-portal li small{color:var(--tsm-muted);font-size:12px;font-variant-numeric:tabular-nums}
.gp-portal-more{display:inline-flex;align-items:center;gap:4px;margin-top:10px;font-size:13.5px;font-weight:700}
.gp-dyk{background:#FFF9EC;border:1px solid #EAD9B0;border-left:4px solid var(--tsm-gold);border-radius:6px;padding:14px 18px;margin:0 0 30px}
.gp-dyk-title{font-size:17px;margin:0 0 8px;display:flex;align-items:center;gap:6px}
.gp-dyk ul{list-style:none;display:flex;flex-direction:column;gap:6px}
.gp-dyk li{font-size:14.5px;line-height:1.55;color:var(--tsm-text-2);padding-left:14px;position:relative}
.gp-dyk li::before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;border-radius:50%;background:var(--tsm-gold)}
.gp-dyk li a{display:inline-flex;align-items:center;gap:3px;font-weight:700;font-style:italic;font-family:var(--gp-serif)}
.gp-entries{display:flex;flex-direction:column;background:var(--tsm-card);border:1px solid var(--gp-line);border-radius:6px;overflow:hidden}
.gp-entry{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-bottom:1px solid var(--gp-line);color:var(--tsm-text);transition:background .15s}
.gp-entry:last-child{border-bottom:0}
.gp-entry:hover{background:#FBF8F1}
.gp-entry-letter{flex-shrink:0;width:38px;height:38px;border-radius:5px;display:grid;place-items:center;font-family:var(--gp-serif);font-size:20px;font-weight:700;color:var(--tsm-navy);background:var(--tsm-navy-soft);border:1px solid #CFE0E2}
.gp-entry-body{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.gp-entry-title{font-size:16px;line-height:1.3}
.gp-entry:hover .gp-entry-title{color:var(--tsm-navy);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--tsm-gold)}
.gp-entry-benefit{font-size:13.5px;color:var(--tsm-green-2);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gp-entry-meta{font-size:12.5px;color:var(--tsm-muted);display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.gp-entry-meta .tsm-badge{font-size:10.5px;padding:1px 6px}
.gp-entry-go{display:none;color:var(--tsm-muted);align-self:center}

/* ═══ Cards, grids, rows ═══ */
.tsm-card{border-radius:6px;border-top:3px solid var(--tsm-navy);box-shadow:none;background:var(--tsm-card)}
.tsm-card:hover{transform:none;box-shadow:var(--tsm-shadow-lg);border-color:var(--gp-line);border-top-color:var(--tsm-gold)}
.tsm-card-title{font-size:17px}
.tsm-benefit{border-radius:4px;background:var(--tsm-green-soft)}
.tsm-cat-card,.tsm-state-card{border-radius:6px;background:var(--tsm-card)}
.tsm-cat-card:hover,.tsm-state-card:hover{transform:none;border-color:var(--tsm-navy)}
.tsm-state-name{font-family:var(--gp-serif);font-size:15px}
.tsm-urow,.tsm-rows{border-radius:6px;background:var(--tsm-card)}
.tsm-urow:hover{box-shadow:none;border-color:var(--tsm-navy)}
.tsm-urow-days{border-radius:4px}
.tsm-about-box{background:var(--tsm-card);border-color:var(--gp-line);border-radius:6px}
.tsm-about-stat{border-color:var(--gp-line);border-radius:4px;background:var(--gp-paper)}
.tsm-vfaq-list{border-radius:6px;background:var(--tsm-card)}
.tsm-empty{border-radius:6px;background:var(--tsm-card)}

/* ═══ Discover cards + trending ═══ */
.tsm-dcard{border-radius:6px;box-shadow:none;background:var(--tsm-card)}
.tsm-dcard:hover{box-shadow:var(--tsm-shadow-lg)}
.tsm-dcard-kind{color:var(--tsm-saffron)}
.tsm-hot-section{border-radius:6px;background:var(--tsm-card)}
.tsm-hot-head .tsm-sec-title{padding-left:0;font-family:var(--gp-serif);font-size:20px}
.tsm-hot-head .tsm-sec-title::before{display:none}
.tsm-tab{border-radius:4px;background:var(--tsm-card)}
.tsm-tab.active{background:var(--tsm-navy);border-color:var(--tsm-navy)}
.tsm-hstrip-arrow{border-radius:50%;background:var(--tsm-card)}

/* ═══ Page bands (archives, hubs, entries) ═══ */
.tsm-band{background:var(--gp-paper-2);color:var(--gp-ink);border-bottom:1px solid var(--gp-line);padding:16px 0 20px}
.tsm-bc-in a{color:var(--tsm-muted)}
.tsm-bc-in a:hover{color:var(--tsm-navy)}
.tsm-bc-in span,.tsm-bc-in span[aria-current]{color:var(--tsm-text-2)}
.tsm-bc-in li+li::before{color:#B9B1A5}
.tsm-band-title{color:var(--gp-ink);font-size:28px;font-weight:700}
.tsm-band-sub,.tsm-band-desc,.tsm-band-meta,.tsm-band-pub,.tsm-band-rev{color:var(--tsm-text-2)}
.tsm-band-rev a{color:var(--tsm-navy)}
.tsm-band-pills .tsm-badge,.tsm-pill-glass{background:var(--tsm-card);color:var(--tsm-text-2);border:1px solid var(--gp-line)}
a.tsm-pill-glass:hover{background:var(--tsm-navy-soft);color:var(--tsm-navy)}
.tsm-pill-text{color:var(--tsm-muted)}
.tsm-band-act{color:var(--tsm-navy);background:var(--tsm-card);border:1px solid var(--gp-line);border-radius:4px}
button.tsm-band-act:hover,.tsm-band-act.tsm-save:hover{background:var(--tsm-navy-soft)}
.tsm-save[aria-pressed="true"]{background:var(--tsm-gold);border-color:var(--tsm-gold);color:#fff}
.tsm-band-figure{border-radius:6px;box-shadow:0 1px 0 rgba(28,25,23,.04),0 10px 24px rgba(28,25,23,.12);border:1px solid var(--gp-line)}
.tsm-band-search{background:#fff;border:1px solid var(--gp-line);box-shadow:none}
.tsm-band-avatar img{border-color:var(--gp-line)}
.tsm-live.tsm-live-lg{border-radius:4px}

/* ═══ Layout: entry pages get a left Contents column on wide screens ═══ */
.tsm-layout{gap:22px}
.tsm-content{background:transparent}
.gp-contents{display:none}
.tsm-sidebar{gap:14px}
.tsm-sb-card{border-radius:6px;box-shadow:none;background:var(--tsm-card)}
.tsm-sb-card h3,.tsm-sb-title{padding-left:0;font-size:16px;padding-bottom:6px;border-bottom:1px solid var(--gp-line)}
.tsm-sb-card h3::before,.tsm-sb-title::before{display:none}
.tsm-sb-warn{background:#FFF9EC;border-color:#EAD9B0}

/* ═══ Entry (single) ═══ */
.tsm-astrip{background:var(--tsm-card);border-color:var(--gp-line);border-radius:6px}
.tsm-toc{border-bottom-color:var(--gp-line)}
.tsm-toc a{border-radius:4px;background:var(--tsm-card)}
.tsm-lead{font-family:var(--gp-serif);font-size:18px;line-height:1.6;color:var(--gp-ink)}
.tsm-lead-box{background:var(--tsm-card);border-left-color:var(--tsm-gold);border-radius:4px}
.tsm-kv,.tsm-kf-table{border-radius:6px;background:var(--tsm-card)}
.tsm-kv th,.tsm-kf-table th{background:var(--gp-paper-2);color:var(--tsm-text-2);font-weight:700;font-size:13px;letter-spacing:.01em}
.tsm-elig{border-radius:6px;border-color:#CFE0E2;background:var(--tsm-card)}
.tsm-chips-elig li{border-radius:4px;background:var(--gp-paper)}
.tsm-box{border-radius:6px;background:var(--tsm-card)}
.tsm-box-head{font-family:var(--gp-serif);font-size:16px}
.tsm-box-green{background:var(--tsm-card)}
.tsm-box-green .tsm-box-head{background:var(--tsm-green-soft)}
.tsm-box-orange{background:var(--tsm-card)}
.tsm-prose{font-size:15.5px;line-height:1.75}
.tsm-prose h2,.tsm-prose h3{font-family:var(--gp-serif)}
.tsm-prose a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:#CFE0E2}
.tsm-prose a:hover{text-decoration-color:var(--tsm-gold)}
.tsm-item-figure{border-radius:6px;border:1px solid var(--gp-line)}
.gp-refs{margin-top:8px}
.gp-ref-list{list-style:decimal;padding-left:26px;background:var(--tsm-card);border:1px solid var(--gp-line);border-radius:6px;padding:14px 16px 14px 38px;font-size:14px}
.gp-ref-list li{margin:0 0 8px;line-height:1.55;padding-left:4px}
.gp-ref-list li:last-child{margin-bottom:0}
.gp-ref-list li::marker{font-family:var(--gp-serif);font-weight:700;color:var(--tsm-navy)}
.gp-ref-primary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;background:var(--tsm-green-soft);border:1px solid var(--tsm-green-line);border-radius:6px;padding:12px 14px;margin:0 0 10px}
.gp-ref-primary>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.gp-ref-kicker{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tsm-green-2)}
.gp-ref-host{font-family:var(--gp-serif);font-size:17px;font-weight:700;color:var(--tsm-text);word-break:break-all;display:inline-flex;align-items:center;gap:4px}
.gp-ref-title{font-weight:700;color:var(--tsm-text)}
.gp-ref-list a{color:var(--tsm-navy);text-decoration:underline;text-underline-offset:3px;word-break:break-all}
.gp-ref-apply{text-decoration:none!important;color:#fff!important}
.gp-ref-note{font-size:13px;color:var(--tsm-muted);font-style:italic;font-family:var(--gp-serif);margin:10px 0 0}
.tsm-official{display:none}
.tsm-author-box{border-radius:6px;background:var(--tsm-card)}
.tsm-faq-item,.tsm-faq{border-radius:6px}
.tsm-ad{background:transparent}

/* ═══ A-Z page ═══ */
.gp-az-group{margin:0 0 22px;scroll-margin-top:120px}
.gp-az-letter{font-size:30px;line-height:1;padding:0 0 6px;border-bottom:2px solid var(--tsm-navy);margin-bottom:10px;display:flex;align-items:baseline;gap:10px}
.gp-az-letter small{font-size:13px;color:var(--tsm-muted);font-family:var(--tsm-font);font-weight:600}
.gp-az-list{list-style:none;columns:1;column-gap:24px}
.gp-az-list li{break-inside:avoid;padding:5px 0;border-bottom:1px dotted var(--gp-line);font-size:14.5px}
.gp-az-list a{color:var(--tsm-text)}
.gp-az-list a:hover{color:var(--tsm-navy);text-decoration:underline;text-underline-offset:3px}
.gp-az-type{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--tsm-saffron);margin-left:6px}
.gp-az-top{display:inline-block;margin-top:8px;font-size:12.5px;color:var(--tsm-muted)}

/* ═══ Footer ═══ */
.tsm-footer{background:var(--gp-ink);color:#CFC8BC;border-top:4px solid var(--tsm-gold)}
.tsm-footer h3{color:var(--tsm-gold);font-family:var(--gp-serif);text-transform:none;letter-spacing:0;font-size:16px}
.tsm-footer a{color:#E6E0D4}
.tsm-footer-logo{font-family:var(--gp-serif);font-size:22px}
.tsm-footer-about p{color:#CFC8BC}
.tsm-footer-hint,.tsm-footer-bottom{color:#A39B8E}
.tsm-footer-legal a{color:#CFC8BC}
.tsm-totop{background:var(--tsm-navy);border-radius:6px}
.tsm-bottombar a.active,.tsm-bottombar a:hover{color:var(--tsm-navy)}

/* ═══ Responsive ═══ */
@media(min-width:600px){
  .gp-hero .tsm-hero-title{font-size:36px}
  .gp-az-list{columns:2}
  .gp-entry-go{display:block}
  .gp-hero .tsm-hstats{grid-template-columns:repeat(5,1fr)}
}
@media(min-width:900px){
  .gp-topbar{display:block}
  html{scroll-padding-top:110px}
  .tsm-sec,.tsm-section,.tsm-box,.tsm-h2{scroll-margin-top:110px}
  .gp-az-page{top:96px}
  body.admin-bar .gp-az-page{top:128px}
  .tsm-sb-sticky-toc{top:110px}
  .tsm-news-bar{top:96px}
  body.admin-bar .tsm-news-bar{top:128px}
  .gp-hero{padding:38px 0 26px}
  .gp-hero .tsm-hero-title{font-size:42px}
  .gp-az-list{columns:2}
}
@media(min-width:1200px){
  .gp-article{grid-template-columns:190px minmax(0,1fr) 320px}
  .gp-article.tsm-layout-full{grid-template-columns:190px minmax(0,1fr);max-width:1080px}
  .gp-contents{display:block}
  .gp-contents-in{position:sticky;top:112px;max-height:calc(100vh - 128px);overflow:auto;scrollbar-width:thin;padding-right:6px}
  body.admin-bar .gp-contents-in{top:144px}
  .gp-contents h3{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tsm-muted);font-family:var(--tsm-font);font-weight:700;margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid var(--gp-line)}
  .gp-contents ol{list-style:none;counter-reset:gp}
  .gp-contents li{counter-increment:gp}
  .gp-contents a{display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.35;color:var(--tsm-text-2);padding:5px 6px;border-left:2px solid transparent;border-radius:0 4px 4px 0}
  .gp-contents a::before{content:counter(gp);font-family:var(--gp-serif);font-weight:700;color:#B9B1A5;min-width:14px}
  .gp-contents a:hover{color:var(--tsm-navy);background:#F3EFE6}
  .gp-contents a.active{color:var(--tsm-navy);border-left-color:var(--tsm-gold);background:#F3EFE6;font-weight:700}
  .gp-contents a.active::before{color:var(--tsm-navy)}
  .gp-article .tsm-toc{display:none}
  .gp-article.gp-no-contents{grid-template-columns:minmax(0,1fr) 320px}
  .gp-article.gp-no-contents.tsm-layout-full{grid-template-columns:minmax(0,1fr)}
  .gp-article.gp-no-contents .tsm-toc{display:flex}
  .gp-az-list{columns:3}
}

/* See also (related entries) */
.gp-seealso .gp-entries{margin-top:4px}
.gp-az-archive{margin:14px 0 10px}
.tsm-archive-main>#states,.tsm-archive-main .tsm-home-sec{margin-top:28px}
.tsm-band .tsm-topic-tag{background:var(--tsm-card);color:var(--tsm-text-2);border:1px solid var(--gp-line);border-radius:4px}
.tsm-band a.tsm-topic-tag:hover{color:var(--tsm-navy)}

/* ═══ Reference desk (home), glossary, by the numbers, ministries ═══ */
.gp-desk-grid{display:grid;grid-template-columns:1fr;gap:10px}
.gp-desk-card{display:flex;gap:12px;align-items:flex-start;background:var(--tsm-card);border:1px solid var(--gp-line);border-left:3px solid var(--tsm-gold);border-radius:6px;padding:12px 14px;color:var(--tsm-text);min-width:0}
.gp-desk-card:hover{border-color:var(--tsm-navy);border-left-color:var(--tsm-navy)}
.gp-desk-ico{font-size:22px;line-height:1.1;flex-shrink:0}
.gp-desk-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.gp-desk-body b{font-family:var(--gp-serif);font-size:16px}
.gp-desk-card:hover .gp-desk-body b{color:var(--tsm-navy);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--tsm-gold)}
.gp-desk-body span{font-size:13.5px;color:var(--tsm-muted);line-height:1.45}

/* bars */
.gp-bars{list-style:none;display:flex;flex-direction:column;gap:2px;background:var(--tsm-card);border:1px solid var(--gp-line);border-radius:6px;padding:10px 14px}
.gp-bars li{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name n" "bar bar";gap:3px 10px;align-items:center;padding:6px 0;border-bottom:1px dotted var(--gp-line)}
.gp-bars li:last-child{border-bottom:0}
.gp-bar-name{grid-area:name;font-size:14px;min-width:0;overflow-wrap:anywhere;line-height:1.35}
.gp-bar-name a{color:var(--tsm-text)}
.gp-bar-name a:hover{color:var(--tsm-navy);text-decoration:underline;text-underline-offset:3px}
.gp-bar{grid-area:bar;display:block;height:8px;background:var(--gp-paper-2);border-radius:4px;overflow:hidden;min-width:0}
.gp-bar-fill{display:block;height:100%;background:linear-gradient(90deg,var(--tsm-navy),var(--tsm-navy-2));border-radius:4px}
.gp-bars li:first-child .gp-bar-fill{background:linear-gradient(90deg,var(--tsm-gold),var(--tsm-amber))}
.gp-bar-n{grid-area:n;font-size:13px;font-weight:700;color:var(--tsm-navy);font-variant-numeric:tabular-nums;text-align:right}

/* numbers page */
.gp-stats{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 20px}
.gp-stats li{background:var(--tsm-card);border:1px solid var(--gp-line);border-radius:6px;padding:10px 12px;display:flex;flex-direction:column;gap:1px;min-width:0}
.gp-stats b{font-family:var(--gp-serif);font-size:24px;line-height:1.15;color:var(--tsm-navy);font-variant-numeric:tabular-nums}
.gp-stats span{font-size:12.5px;color:var(--tsm-muted);line-height:1.35}
.gp-num-lead{margin:0 0 16px;padding:14px 16px}
.gp-num-q{font-size:18px;margin:0 0 6px}
.gp-num-lead p{font-size:15px;line-height:1.65;color:var(--tsm-text-2);margin:0}
.gp-num-notes{list-style:none;margin:10px 0 0;display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--tsm-muted)}
.gp-num-method .tsm-prose p{font-size:14.5px}

/* at-a-glance table (ministry / department hubs) */
.gp-glance-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13.5px;background:var(--tsm-card);border:1px solid var(--gp-line);border-radius:6px;overflow:hidden}
.gp-glance-table th,.gp-glance-table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--gp-line);vertical-align:top;line-height:1.45}
.gp-glance-table thead th{background:var(--gp-paper-2);color:var(--tsm-text-2);font-weight:700;font-size:12.5px;white-space:nowrap}
.gp-glance-table tbody tr:last-child td{border-bottom:0}
.gp-glance-table tbody tr:hover td{background:#FBF8F1}
.gp-glance-table td:first-child{min-width:200px;font-weight:600}
.gp-glance-table td:first-child a{color:var(--tsm-text)}
.gp-glance-table td:first-child a:hover{color:var(--tsm-navy);text-decoration:underline;text-underline-offset:3px}
.gp-glance-table td:nth-child(2){color:var(--tsm-green-2);min-width:130px}
.gp-glance-table td:nth-child(3),.gp-glance-table td:nth-child(4){color:var(--tsm-muted);white-space:nowrap}
.gp-glance-sub{display:block;font-size:12px;font-weight:500;color:var(--tsm-muted);margin-top:2px}
.tsm-table-scroll .gp-glance-table{min-width:0}
.gp-glance-table th:nth-child(3),.gp-glance-table th:nth-child(4),.gp-glance-table td:nth-child(3),.gp-glance-table td:nth-child(4){display:none}
.gp-glance-table td:first-child{min-width:0;width:58%}

/* glossary */
.gp-gl-lead{margin:0 0 16px;padding:14px 16px}
.gp-gl-lead p{font-size:15px;line-height:1.65;color:var(--tsm-text-2);margin:0 0 6px}
.gp-gl-lead p:last-child{margin-bottom:0}
.gp-gl-full{font-family:var(--gp-serif);font-size:18px!important;color:var(--gp-ink)!important}
.gp-gl-def{display:flex;gap:12px;align-items:flex-start;background:var(--tsm-card);border:1px solid var(--gp-line);border-radius:6px;padding:14px 16px;margin:0 0 10px;min-width:0}
.gp-gl-def.is-own{border-left:3px solid var(--tsm-green)}
.gp-gl-num{flex-shrink:0;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-family:var(--gp-serif);font-weight:700;font-size:14px;color:var(--tsm-navy);background:var(--tsm-navy-soft);border:1px solid #CFE0E2}
.gp-gl-body{min-width:0;flex:1}
.gp-gl-quote{margin:0;padding:0 0 0 12px;border-left:3px solid var(--tsm-gold);font-family:var(--gp-serif);font-size:16px;line-height:1.65;color:var(--gp-ink);overflow-wrap:anywhere}
.gp-gl-quote p{margin:0}
.gp-gl-text{overflow-wrap:anywhere}
.gp-gl-text p:last-child{margin-bottom:0}
.gp-gl-src{font-size:12px;color:var(--tsm-muted);font-style:italic;margin:6px 0 10px}
.gp-gl-used{font-size:13px;margin:0 0 4px;color:var(--tsm-text-2)}
.gp-gl-entries{list-style:none;display:flex;flex-direction:column;gap:3px;font-size:14px}
.gp-gl-entries li{padding-left:14px;position:relative;line-height:1.45;overflow-wrap:anywhere}
.gp-gl-entries li::before{content:"";position:absolute;left:2px;top:9px;width:5px;height:5px;border-radius:50%;background:var(--tsm-gold)}
.gp-gl-meta{font-size:12px;color:var(--tsm-muted)}
.gp-gl-moreents{margin-top:6px}
.gp-gl-moreents summary{cursor:pointer;font-size:13px;font-weight:700;color:var(--tsm-navy)}
.gp-gl-moreents .gp-gl-entries{margin-top:4px}
.gp-gl-back{margin:18px 0 0;font-size:14px;font-weight:700}
.gp-gl-filter{margin:0 0 16px}
.gp-gl-filter input{width:100%;max-width:520px;padding:10px 12px;font-size:15px;border:1px solid var(--gp-line);border-radius:6px;background:#fff}
.gp-gl-filter input:focus{outline:2px solid var(--tsm-navy);outline-offset:1px}
.gp-gl-n{font-size:11.5px;font-weight:700;color:var(--tsm-muted);font-variant-numeric:tabular-nums}
.gp-gl-list li{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.gp-gl-list li a{min-width:0;overflow-wrap:anywhere}
.gp-gl-list li[hidden],.gp-az-group[hidden]{display:none}
.gp-gl-none{font-style:italic;color:var(--tsm-muted)}
.gp-def-more-p{margin:4px 0 0}
.gp-def-more{font-size:12.5px;font-weight:700;color:var(--tsm-navy);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#CFE0E2}
.gp-def-more:hover{text-decoration-color:var(--tsm-gold)}

/* ministries */
.gp-min-jump{margin:0 0 6px}
.gp-min-grid{display:grid;grid-template-columns:1fr;gap:10px}
.gp-min{background:var(--tsm-card);border:1px solid var(--gp-line);border-radius:6px;padding:12px 14px;min-width:0}
.gp-min-name{font-size:15.5px;line-height:1.35;margin:0;display:flex;justify-content:space-between;gap:10px;align-items:baseline;overflow-wrap:anywhere}
.gp-min-name a{color:var(--gp-ink);min-width:0}
.gp-min-name a:hover{color:var(--tsm-navy);text-decoration:underline;text-underline-offset:3px}
.gp-min-deps{list-style:none;margin:8px 0 0;padding:8px 0 0;border-top:1px solid var(--gp-line);display:flex;flex-direction:column;gap:2px}
.gp-min-deps li{display:flex;justify-content:space-between;gap:10px;align-items:baseline;font-size:13.5px;padding:3px 0;line-height:1.4;overflow-wrap:anywhere}
.gp-min-deps li a{color:var(--tsm-text-2);min-width:0}
.gp-min-deps li a:hover{color:var(--tsm-navy);text-decoration:underline;text-underline-offset:3px}
.gp-min>.gp-min-deps:first-child{border-top:0;margin-top:0;padding-top:0}

@media(min-width:600px){
  .gp-desk-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gp-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gp-bars li{grid-template-columns:minmax(0,230px) minmax(0,1fr) 64px;grid-template-areas:"name bar n";gap:12px}
  .gp-min-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gp-glance-table th:nth-child(3),.gp-glance-table th:nth-child(4),.gp-glance-table td:nth-child(3),.gp-glance-table td:nth-child(4){display:table-cell}
  .gp-glance-sub{display:none}
  .gp-glance-table td:first-child{min-width:200px;width:auto}
}
@media(min-width:900px){
  .gp-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
}
