/* Shared public News / Viewer presentation. Content and media keep their own routes. */
html { background:#10261f; }
html[data-theme="light"] { background:#f5f6f0; }
body.isayso-public {
  --bg:#10261f; --surface:#142f27; --card:#193b31; --panel:#193b31;
  --text:#f1f5ef; --muted:#b7c9be; --border:#36564a;
  --gold:#e5cb77; --accent:#e5cb77; --accent-dark:#dfc367;
  --navy:#245442; --navy-2:#193b31; --cyan:#e5cb77; --cyan-soft:#294c3d;
  --shadow:none; margin:0; background:var(--bg); color:var(--text);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  font-size:16px; line-height:1.5; color-scheme:dark;
}
html[data-theme="light"] body.isayso-public {
  --bg:#f5f6f0; --surface:#edf1e9; --card:#fff; --panel:#fff;
  --text:#173b30; --muted:#51665a; --border:#cdd9cd;
  --gold:#80631e; --accent:#705613; --accent-dark:#5e4910;
  --navy:#245442; --navy-2:#e3ecdf; --cyan:#80631e; --cyan-soft:#e7eedf; color-scheme:light;
}
.isayso-public * { box-sizing:border-box; }
.isayso-public a { color:var(--accent); }
.isayso-public :is(button,input,select) { font:inherit; }
.isayso-public :is(a,button,input,select,summary,[tabindex]):focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.isayso-public [hidden] { display:none!important; }
.isayso-public .skip-link { position:fixed; left:1rem; top:-100px; z-index:11000; padding:.7rem; background:var(--card); }
.isayso-public .skip-link:focus { top:.5rem; }
body.isayso-public header.public-header {
  position:sticky; top:0; z-index:1000; display:flex; flex-direction:row; align-items:center;
  justify-content:space-between; flex-wrap:nowrap; gap:1rem; min-height:64px;
  padding:8px max(20px,calc((100vw - 1320px)/2)); background:var(--bg);
  border-bottom:1px solid var(--border); box-shadow:none; backdrop-filter:none;
}
.isayso-public .brand-lockup { display:flex; align-items:center; gap:9px; flex:none; color:var(--text); text-decoration:none; }
.isayso-public .brand-lockup .brand-seal { width:38px; height:42px; max-height:none; object-fit:contain; border-radius:0; filter:none; }
.isayso-public .brand-lockup strong { color:var(--text); font-size:1.1rem; letter-spacing:-.035em; }
.isayso-public .public-nav { display:flex; flex:1; justify-content:center; align-items:center; flex-wrap:nowrap; gap:5px; margin:0; }
.isayso-public .public-nav a { color:var(--muted); background:none; border:1px solid transparent; box-shadow:none; text-decoration:none; padding:8px 12px; min-height:40px; font-size:.88rem; font-weight:650; border-radius:7px; }
.isayso-public .public-nav a:hover,.isayso-public .public-nav a[aria-current="page"] { color:var(--text); background:var(--surface); border-color:var(--border); }
.isayso-public .public-nav a.member-link { background:var(--card); color:var(--text); border-color:var(--border); }
.isayso-public .public-header-actions { display:flex; gap:8px; align-items:center; flex:none; }
.isayso-public .public-contribute { color:#173b30; background:#e5cb77; border:1px solid #e5cb77; border-radius:7px; padding:9px 13px; font-size:.85rem; text-decoration:none; font-weight:750; }
.isayso-public .public-theme { border:0; color:var(--muted); background:none; padding:10px 8px; min-height:40px; cursor:pointer; font-size:.8rem; white-space:nowrap; }
.isayso-public .public-masthead { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding:22px 0 24px; }
.isayso-public .public-masthead h1 { margin:0 0 5px; font-size:clamp(1.7rem,3vw,2.4rem); line-height:1.15; letter-spacing:-.04em; }
.isayso-public .public-masthead p { margin:0; color:var(--muted); font-size:.95rem; max-width:650px; }
.isayso-public .public-local-nav { display:flex; flex-wrap:wrap; gap:10px 20px; font-size:.86rem; flex-shrink:0; }
.isayso-public .public-footer { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; max-width:1280px; margin:28px auto 0; padding:20px 0; border-top:1px solid var(--border); color:var(--muted); font-size:.85rem; }
.isayso-public .public-footer nav { display:flex; flex-wrap:wrap; gap:20px; }
.isayso-public :is(.btn,.pdf-link,.filters button,.pagination button,.pagination select,.news-chip,.topic-chip,.chip,.category-toggle,.filter-toggle,.filter-close,.secondary-action,.load-more-btn,.nav-btn,.cta) {
  color:var(--text); background:var(--surface); border:1px solid var(--border); border-radius:7px; box-shadow:none; text-shadow:none; min-height:38px;
}
.isayso-public :is(.btn,.cta,.load-more-btn):hover { background:var(--card); filter:none; box-shadow:none; }
.isayso-public :is(.news-chip.active,.chip.active,.topic-chip.active) { background:var(--cyan-soft); border-color:var(--accent); color:var(--text); }
.isayso-public :is(input,select,.filters input,.filters select,.filter-input,.category-select) { background:var(--bg); color:var(--text); border:1px solid var(--border); border-radius:7px; min-height:42px; }
.isayso-public :is(input,select)::placeholder { color:var(--muted); opacity:1; }
.isayso-public :is(.pill,.notice-kind,.category-pill,.status-pill,.video-tags span) { background:var(--cyan-soft); color:var(--text); border-color:var(--border); }
/* News is a reading list, with a consistent thumbnail rather than oversized feature tiles. */
body.news-page main { max-width:1320px; margin:auto; padding:0 20px 24px; }
.news-page .card { background:transparent; border:0; border-radius:0; box-shadow:none; padding:0; margin:0 0 32px; }
.news-page :is(#articles-of-interest,.news-feature-card) { border-top:1px solid var(--border); padding-top:24px; scroll-margin-top:90px; }
.news-page .notice-board-heading { align-items:center; gap:10px; }
.news-page .notice-board-heading-main h3 { font-size:1.08rem; }
.news-page .notice-board-heading-main { gap:10px; }
.news-page .notice-controls { background:var(--surface); padding:9px; box-shadow:none; margin:12px 0 4px; }
.news-page .notice-controls .filters { background:transparent; }
.news-page .filters { background:var(--surface); box-shadow:none; position:static; }
.news-page .pagination { background:transparent; border:0; gap:8px; color:var(--muted); }
.news-page ul.notice { display:block; margin:0; padding:0; }
.news-page ul.notice li { display:block; border:0; border-bottom:1px solid var(--border); border-radius:0; background:transparent; box-shadow:none; padding:20px 0; }
.news-page ul.notice li:hover { transform:none; box-shadow:none; background:transparent; }
.news-page .notice-row { display:grid; grid-template-columns:180px minmax(0,1fr); gap:24px; height:auto; align-items:start; }
.news-page :is(.notice-thumb,.notice-card-featured .notice-thumb) { width:100%; height:auto; aspect-ratio:3/2; border-radius:8px; background:var(--surface); overflow:hidden; }
.news-page .notice-thumb img { width:100%; height:100%; object-fit:cover; }
.news-page .notice-thumb.notice-thumb-default { background:var(--surface); padding:20px; }
.news-page .notice-thumb.notice-thumb-default img { object-fit:contain; }
.news-page :is(.notice-meta,.notice-card-featured .notice-meta) { padding:0; min-width:0; }
.news-page :is(.notice-title,.notice-card-featured .notice-title) { font-size:1.18rem; line-height:1.3; min-height:0; letter-spacing:-.015em; -webkit-line-clamp:3; }
.news-page .notice-topline { font-size:.78rem; margin-bottom:5px; }
.news-page .notice-desc { margin-top:7px; font-size:.9rem; color:var(--muted); -webkit-line-clamp:2; }
.news-page .notice-actions { margin:0; padding-top:10px; gap:8px; align-items:center; }
.news-page .notice-actions .btn { min-height:32px; padding:4px 9px; font-size:.78rem; }
.news-page .notice-actions .btn-view { background:var(--card); color:var(--text); border-color:var(--border); }
.news-page .notice-actions small { flex-basis:auto; margin-left:auto; font-size:.72rem; }
.news-page :is(.filter-drawer,.filter-section,.modal-panel,.active-notice-panel,.active-notice-header,.modal-header,.modal-footer) { background:var(--surface); color:var(--text); border-color:var(--border); box-shadow:none; }
.news-page .active-notice-header { flex-wrap:wrap; }
.news-page .active-notice-actions { flex-wrap:wrap; }
.news-page .news-feature-top { background:var(--surface); border:1px solid var(--border); padding:20px; border-radius:10px; }
.news-page .news-feature-top h1 { font-size:1.35rem; }
.news-page.notice-active .public-masthead { display:none; }
.news-page.notice-active #noticeboard { padding-top:16px; }
/* Published documents retain a paper surface; their original colours can be explicit. */
.news-page :is(.active-notice-content,#newsletter-body,.modal-body) {
  --text:#173b30; --muted:#51665a; --card:#fff; --border:#cdd9cd; --accent:#245442;
  color:#173b30; background:#fff; border-radius:0 0 8px 8px;
}
.news-page #newsletter-body { overflow-wrap:anywhere; padding:16px; }
.news-page #newsletter-body img { max-width:100%; height:auto; }
.news-page .public-resources { display:flex; flex-wrap:wrap; gap:12px 24px; padding:18px 0; border-top:1px solid var(--border); font-size:.88rem; }
/* Viewer uses the same shell, with local search and topics kept out of global navigation. */
body.viewer-page .viewer-layout { display:block; max-width:1320px; margin:auto; padding:0 20px 24px; }
.viewer-page .viewer-shell { padding:0; }
body.viewer-page .filter-panel { position:static; top:auto; grid-template-columns:minmax(180px,1fr) minmax(180px,280px); padding:10px; gap:10px; margin:0 0 22px; background:var(--surface); border:1px solid var(--border); box-shadow:none; }
.viewer-page .filter-panel .chips-wrap { grid-column:1/-1; }
.viewer-page .library-topic { display:flex; align-items:center; gap:10px; color:var(--muted); font-size:.86rem; }
.viewer-page .library-topic select { min-width:0; font-size:.88rem; font-weight:500; }
.viewer-page .filter-input { min-height:42px; }
.viewer-page .video-grid { grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:20px; }
.viewer-page :is(.video-card,.featured-player-card,.video-engagement-panel,.empty-state) { background:var(--surface); border-color:var(--border); box-shadow:none; }
.viewer-page .video-card:hover { border-color:var(--accent); box-shadow:none; }
.viewer-page .video-card-body { padding:12px; }
.viewer-page .video-title { font-size:.99rem; }
.viewer-page .video-meta { font-size:.78rem; }
.viewer-page .section-heading h2 { font-size:1.15rem; }
.viewer-page .section-heading p { font-size:.82rem; }
.viewer-page.has-selected-video .public-masthead { padding:16px 0; }
.viewer-page.has-selected-video .public-masthead h1 { font-size:1.35rem; }
.viewer-page.has-selected-video .public-masthead p { display:none; }
.viewer-page.has-selected-video .watch-layout { grid-template-columns:minmax(0,1fr) 320px; }
.viewer-page.has-selected-video .recommendation-panel .video-card { grid-template-columns:120px minmax(0,1fr); }
.viewer-page .video-engagement-panel a { background:var(--card); border:1px solid var(--border); color:var(--text); }
.viewer-page .viewer-modal { background:var(--bg); color:var(--text); }
.viewer-page #modal-details { color:var(--text); }
.viewer-page :is(#shareFacebook,#shareX) { color:var(--text); background:var(--card); border-color:var(--border); }
.viewer-page .back-to-top { background:var(--card); color:var(--text); border:1px solid var(--border); box-shadow:none; }
.share-page .page { max-width:1280px; }
.share-page .title-row { justify-content:flex-start; text-align:left; }
.share-page .title-row h1 { color:var(--text); font-size:clamp(1.4rem,3vw,2rem); }
.share-page :is(.description,.badge) { color:var(--text); background:var(--surface); border-color:var(--border); }
.share-page .main-video-socials button { background:var(--card); color:var(--text); border:1px solid var(--border); box-shadow:none; }
.share-page .player-shell { border:1px solid var(--border); box-shadow:none; }
.share-page .desc-article { background:#fff; color:#173b30; padding:16px; border-radius:7px; }
@media(max-width:900px) {
  body.isayso-public header.public-header { display:grid; grid-template-columns:1fr auto; gap:4px 12px; padding:7px 16px; }
  .isayso-public .public-nav { grid-row:2; grid-column:1/-1; justify-content:flex-start; gap:6px; }
  .isayso-public .public-nav a { flex:1; text-align:center; padding:6px; min-height:36px; font-size:.82rem; }
  .isayso-public .public-header-actions { grid-column:2; grid-row:1; }
  .isayso-public .public-masthead { display:block; padding:20px 0; }
  .isayso-public .public-local-nav { margin-top:12px; }
  .viewer-page.has-selected-video .watch-layout { display:flex; flex-direction:column; }
  .viewer-page.has-selected-video .watch-main { order:0; width:100%; }
  .viewer-page.has-selected-video .watch-side { order:1; width:100%; }
  .viewer-page.has-selected-video .recommendation-panel .video-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); }
}
@media(max-width:540px) {
  body.isayso-public header.public-header { padding:6px 12px; }
  .isayso-public .brand-lockup { gap:6px; }
  .isayso-public .brand-lockup .brand-seal { width:30px; height:35px; }
  .isayso-public .brand-lockup strong { font-size:1rem; }
  .isayso-public .public-contribute { padding:8px 9px; font-size:.76rem; }
  .isayso-public .public-theme { padding:8px 3px; font-size:.73rem; }
  .isayso-public .public-header-actions { gap:5px; }
  body.news-page main,body.viewer-page .viewer-layout { padding-left:14px; padding-right:14px; }
  .news-page .notice-board-heading { flex-wrap:wrap; }
  .news-page .notice-row { grid-template-columns:84px minmax(0,1fr); gap:12px; }
  .news-page :is(.notice-thumb,.notice-card-featured .notice-thumb) { aspect-ratio:1; }
  .news-page ul.notice li { padding:16px 0; }
  .news-page :is(.notice-title,.notice-card-featured .notice-title) { font-size:1rem; }
  .news-page .notice-desc { font-size:.84rem; }
  .news-page .notice-actions small { margin-left:0; flex-basis:100%; }
  .news-page .notice-actions .btn-share-copy { display:none; }
  .news-page .active-notice-header { padding:12px; }
  .news-page .active-notice-actions .btn { font-size:.76rem; padding:6px 8px; }
  .news-page .active-notice-heading h2 { font-size:1.35rem; }
  body.viewer-page .filter-panel { grid-template-columns:minmax(0,1fr); }
  .viewer-page .library-topic { grid-column:1; }
  .viewer-page .video-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .viewer-page .video-card-body { padding:9px; }
  .viewer-page .video-title { font-size:.88rem; }
  .viewer-page .video-tags { display:none; }
  .viewer-page .video-meta { flex-wrap:wrap; font-size:.72rem; }
  .viewer-page .featured-heading { flex-wrap:wrap; }
  .viewer-page .viewer-load-more-wrap { flex-wrap:wrap; padding:16px 0; }
}
@media(prefers-reduced-motion:reduce) {
 .isayso-public * { scroll-behavior:auto!important; transition:none!important; }
}

/* Keep archive rows compact and unavailable media thumbnails intentional. */
.news-page .notice-board-heading { margin-top:0; }
.news-page .public-masthead { padding-bottom:14px; }
.news-page .notice-board-heading-main { flex-wrap:wrap; }
.viewer-page .video-thumb-fallback { object-fit:contain; padding:24px; opacity:.8; }

.news-page main { gap:0; }
.viewer-page :is(.viewer-main,.filter-panel,.chips-wrap,.library-topic) { min-width:0; max-width:100%; }
@media(max-width:540px) {
  .news-page .active-notice-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:6px; }
  .news-page .active-notice-actions .btn { min-width:0; width:auto; min-height:36px; }
}
