/* Cross-page foundations: preserve specialized calculator/table geometry. */
:root { --surface-radius:10px;--space-section:28px;--font-heading:26px;--font-body:14px; }
.page-heading h1 { font-size:var(--font-heading);line-height:1.4;font-weight:600; }
.page-heading > div > p { color:var(--muted);font-size:13px;line-height:1.7; }
.section-heading h2 { font-size:17px;font-weight:600;line-height:1.5; }
.main-menu [data-icon] svg { width:20px;height:20px;display:block; }
.main-menu .nav-lock svg { width:13px;height:13px; }
.main-menu .nav-lock { color:var(--muted);opacity:.75; }
.catalogue-toolbar,.guide-filter,.policy-filters { border:1px solid var(--line);border-radius:var(--surface-radius);background:var(--panel);padding:16px; }
.catalogue-toolbar { gap:12px;margin-bottom:16px; }
.guide-filter,.policy-filters { margin-bottom:18px; }
.catalogue-toolbar input { background:var(--panel); }
.empty-state { border-radius:var(--surface-radius);padding:44px 22px;gap:12px; }
.empty-state h2 { font-size:17px;color:var(--text);line-height:1.5;margin:0; }
.empty-state p { max-width:48em;line-height:1.8;margin:0;color:var(--muted);font-size:14px; }
.empty-state > svg { width:26px;height:26px;color:var(--blue-dark); }
.load-status { color:var(--muted);line-height:1.8;font-size:14px; }
.primary-button,.secondary-button { border-radius:8px;min-height:38px;font-size:14px;font-weight:500; }
.back-link,.text-action { color:var(--muted);font-size:13px;line-height:1.8; }
.back-link:hover,.text-action:hover { color:var(--blue-dark); }
.tool-resource-bar { font-size:13px; }
.tool-resource-bar a { color:var(--blue-dark); }
.reader-article,.project-card,.pt-settings,.ft-settings,.task-summary,.tax-summary,.pt-summary { border-radius:var(--surface-radius); }
.task-toolbar,.thirdparty-toolbar { gap:16px; }
.task-search > span,.thirdparty-search > span { font-size:13px;color:var(--muted); }
.project-categories { max-width:900px; }
.project-categories .entry-card { align-items:center;padding:24px; }
.project-categories .entry-icon { flex-shrink:0; }
.project-category-count { margin-left:auto;color:var(--muted);font-size:13px; }
.internal-toolbar > .secondary-button { flex-shrink:0; }
@media(max-width:760px){:root{--font-heading:23px}.primary-button,.secondary-button{min-height:44px}.catalogue-toolbar,.guide-filter,.policy-filters{padding:14px}.project-categories .entry-card{padding:20px}.internal-toolbar{gap:12px}.section-heading h2{font-size:16px}}

/* Topic directory shares the same continuous list/grid boundary. */
#topicCategories{margin:18px 0;grid-template-columns:repeat(5,minmax(0,1fr))}
#topicCategories>.topic-category{border:0;border-radius:0;padding:18px;text-align:left;background:var(--panel);min-width:0;display:flex;flex-direction:column;gap:8px;color:var(--text);cursor:pointer;box-shadow:none}
#topicCategories .topic-category span{font-size:13px;color:var(--muted)}
#topicCategories .topic-category[aria-pressed="true"]{background:#edf3ff;color:#285bb5}
#topicsView .info-note{margin:0 0 18px;font-size:13px}
#topicResults small{display:block;margin-top:14px;color:var(--muted);font-size:13px}
@media(max-width:1100px){#topicCategories{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){#topicCategories{grid-template-columns:repeat(2,minmax(0,1fr))}#topicCategories>.topic-category{padding:16px}}

.topic-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.topic-filters>label{display:flex;flex-direction:column;gap:8px;min-width:0}
.topic-filters :is(select,input){width:100%;min-width:0;box-sizing:border-box}
@media(min-width:601px) and (max-width:1100px){#topicCategories>.topic-category:last-child{grid-column:span 2}}
@media(max-width:600px){.topic-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.topic-filters :is(select,input){min-height:44px}#topicCategories>.topic-category:last-child{grid-column:1/-1}}
