/* mobile-feed.css */
/* Responsive feed controls share one grid and retain the existing theme tokens. */
.feed-page-header{position:relative;align-items:center;gap:12px;flex-wrap:wrap}
.feed-page-header>div:first-child{flex:1;min-width:0}
.feed-page-header>.reference-search{width:auto;flex:0 0 auto;margin-left:auto;flex-wrap:nowrap}
.feed-search-toggle{display:grid;place-items:center;width:40px;min-height:40px;padding:8px;border-radius:var(--ui-radius-sm);color:var(--secondary);flex:0 0 auto}
.feed-search-toggle:hover,.feed-search-toggle[aria-expanded=true]{background:var(--raised);color:var(--ink)}
.feed-search-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.feed-page:not(.people-feed) :is(.primary-filter-row,.secondary-filter-row){display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:14px;flex-wrap:nowrap}
.feed-page:not(.people-feed) .primary-filter-row{padding-bottom:9px;grid-template-columns:34px minmax(0,max-content) calc(var(--ui-tab-hit-height) + var(--ui-space-1));column-gap:0}
.feed-page:not(.people-feed) .primary-filter-row>.source-tabs{width:auto;margin-inline-start:14px}
.feed-page:not(.people-feed) .primary-filter-row>.custom-channel-add{margin-inline-start:var(--ui-space-1)}
.feed-page:not(.people-feed) :is(.source-tabs,.category-tabs){width:100%;max-width:none}
.feed-page:not(.people-feed) .filter-level{width:auto;white-space:nowrap}
.feed-page:not(.people-feed) .category-tabs{gap:22px}
.feed-page:not(.people-feed) .category-tabs a{padding:8px 10px 10px}
.feed-page:not(.people-feed) .category-tabs a.active:after{left:10px;right:10px;bottom:0}
@media(max-width:820px){
  .mobile-header .appearance-menu{margin-left:auto}
  .mobile-header .mobile-action+.appearance-menu{margin-left:0}
  .feed-page:not(.people-feed) :is(.primary-filter-row,.secondary-filter-row){grid-template-columns:30px minmax(0,1fr);gap:9px}
  .feed-page:not(.people-feed) .primary-filter-row{grid-template-columns:30px minmax(0,max-content) calc(var(--ui-tab-hit-height) + var(--ui-space-1));column-gap:0}
  .feed-page:not(.people-feed) .primary-filter-row>.source-tabs{margin-inline-start:9px}
  .feed-page:not(.people-feed) .category-tabs{gap:3px}
  .feed-page:not(.people-feed) .category-tabs a{padding-inline:9px}
  .feed-page:not(.people-feed) .category-tabs a.active:after{left:9px;right:9px}
  .feed-page-header>.reference-search{margin:0;width:100%;flex-basis:100%}
  .public-body .footer{padding-bottom:calc(24px + env(safe-area-inset-bottom))}
  /* One soft surface per entry, with an unobtrusive timestamp outside the card. */
  .public-body .timeline-list{display:grid;gap:14px}
  .public-body .timeline-item{grid-template-columns:34px 8px minmax(0,1fr)}
  .public-body .timeline-rail:after{display:none}
  .public-body .timeline-dot{width:4px;height:4px;margin-top:25px;background:var(--muted)}
  .public-body .timeline-time{padding-top:22px}
  .public-body :is(.unified-card,.news-card){border:0;border-radius:var(--ui-radius-panel);padding:16px 14px;background:var(--paper);margin:0;min-width:0}
  .public-body :is(.unified-card,.news-card):hover{background:var(--paper);border:0;box-shadow:none;transform:none}
  .public-body .timeline-card-head{gap:8px}
  .public-body .timeline-head-left{min-width:0;flex-wrap:wrap}
  .public-body .timeline-head-right{flex-shrink:0}
  .public-body .timeline-source{overflow-wrap:anywhere}
  .public-body .timeline-star{width:36px;height:36px}
  .public-body .reader-useful{min-height:36px}
  .public-body .timeline-reason{border:0;border-radius:calc(var(--ui-radius-sm) + 2px);padding:10px;background:var(--raised)}
  .public-body :is(.timeline-title,.uc-x-title,.timeline-summary){overflow-wrap:anywhere}
}

/* branding.css */
/* Shared identity for desktop navigation and the compact mobile header. */
.brand .brand-wordmark{
  color:var(--ink);
  font-size:calc(var(--ui-text-title) + 2px);
  font-weight:750;
  letter-spacing:-.035em;
  line-height:1.2;
  white-space:nowrap;
}
.brand small{
  color:var(--muted);
  font-size:calc(var(--ui-text-caption) - 2px);
  letter-spacing:0;
  line-height:1.5;
}
.brand-compact .brand-wordmark{font-size:calc(var(--ui-text-body) + 2px)}
@media(max-width:360px){
  .brand-compact .brand-wordmark{font-size:calc(var(--ui-text-body) + 1px)}
}

/* The supplied ghost is the same identity on both navigation surfaces. */
.top-search-fallback{display:none}
@media(min-width:821px){.top-search-fallback{display:flex;align-items:center;gap:12px;position:sticky;top:0;padding:8px 16px;background:var(--bg);border-bottom:1px solid var(--line);z-index:30}}
.brand-heading,.header-brand{display:flex;align-items:center;gap:8px;min-width:0}
.brand-ghost{display:block;width:32px;height:32px;flex:0 0 32px;object-fit:contain}
.header-brand .brand-ghost{width:28px;height:28px;flex-basis:28px}
.header-brand{color:var(--ink);white-space:nowrap}
.top-search-slot{position:relative;flex:1;min-width:0;max-width:600px;margin-left:auto}
.top-search-slot[hidden]{display:none}
.top-search-slot .top-search-box{display:flex;flex-wrap:nowrap;width:100%;height:40px;min-width:0;margin:0;border:1px solid var(--line);border-radius:var(--ui-radius-pill);background:var(--raised);overflow:hidden}
.top-search-slot .top-search-box:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.top-search-slot .top-search-box input{flex:1;width:0;min-width:0;max-width:none;height:38px;padding:0 10px;font:inherit;color:var(--ink);outline:none}
.top-search-slot .top-search-box.has-query input{padding-right:38px}
.top-search-slot input::-webkit-search-cancel-button{display:none}
.top-search-slot .top-search-box button{flex:0 0 36px;width:36px;height:38px;min-height:0;padding:8px;font-size:var(--ui-text-body);color:var(--secondary)}
.top-search-slot .top-search-box button svg{width:18px;height:18px}
.top-search-clear{position:absolute;right:36px;top:0;width:36px;height:40px;min-height:0;padding:0;color:var(--muted);font-size:calc(var(--ui-text-section) - 1px);line-height:1}
.top-search-clear:hover{color:var(--ink)}
.top-search-clear:focus-visible{outline:2px solid var(--accent);outline-offset:-3px;border-radius:var(--ui-radius-sm)}
.top-search-ready .workspace-breadcrumb>:not(a){display:none}
.top-search-ready .feed-page-header{padding-top:28px;padding-bottom:20px}
@media(max-width:820px){
  .mobile-header .brand-compact{display:flex;flex:0 0 32px;align-items:center;padding:0}
  .mobile-header .brand-wordmark{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .public-body.top-search-ready .mobile-header{gap:8px;justify-content:flex-start}
  .top-search-ready .mobile-header>.appearance-menu{display:none}
  .top-search-slot{margin:0;max-width:none}
  .top-search-slot .top-search-box{height:44px}
  .top-search-slot .top-search-box input{height:42px;font-size:var(--ui-text-body)}
  .top-search-slot .top-search-box button{height:42px;flex-basis:40px;width:40px;padding:11px}
  .top-search-clear{height:44px;width:40px;right:40px}
  .top-search-slot .top-search-box.has-query input{padding-right:40px}
  .top-search-ready .feed-page-header{padding-top:24px;padding-bottom:20px}
}
@media(min-width:821px) and (max-width:1080px){
  .top-search-ready .workspace-bar{padding-inline:12px;gap:8px}
  .top-search-ready .workspace-bar .appearance-label{display:none}
}

/* reader-login.css */
.reader-login-overlay{top:var(--reader-login-top,0px);bottom:auto;height:var(--reader-login-height,100dvh)}
.reader-login-modal{max-height:calc(var(--reader-login-height,100dvh) - 48px);scroll-padding-block:16px}
.reader-login-modal input{font-size:var(--ui-text-body);min-width:0}
.reader-login-modal input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.reader-login-modal [data-email-step],.reader-login-modal [data-code-step]{display:grid;gap:16px}
.reader-login-modal [hidden]{display:none}
.reader-login-modal .reader-code-button{margin:0}
.reader-login-modal [data-email-step]>.button,.reader-login-modal [data-code-step]>.button{width:100%;min-height:44px}
.reader-code-destination{margin:0;font-size:calc(var(--ui-text-caption) + 1px);line-height:1.6;overflow-wrap:anywhere;color:var(--secondary)}
.reader-code-secondary{display:flex;justify-content:space-between;gap:12px}
.reader-code-secondary button{min-height:36px;padding:6px 0;color:var(--secondary);font-size:var(--ui-text-caption)}
.reader-code-secondary button:disabled{opacity:.6}
.reader-code-secondary button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--ui-radius-sm)}
.reader-login-close{width:44px;height:44px}
.reader-login-modal .form-message{margin-top:12px;line-height:1.6;overflow-wrap:anywhere}
@media(max-width:820px){
  .reader-login-overlay{padding:12px;align-items:center}
  .reader-login-modal{max-height:calc(var(--reader-login-height,100dvh) - 24px);padding:20px}
  .reader-login-header{gap:12px}.reader-login-header h2{font-size:var(--ui-text-title)}
  .reader-login-description{margin-bottom:18px}
  .reader-login-footer{margin:18px -20px -20px;padding:14px 20px}
  .reader-code-secondary button{min-height:44px}
}

/* discover-tags.css */
.channel-builder-page:has(.discover-search-row)>.channel-builder-header{margin:0}
.channel-builder-page:has(.discover-search-row)>.channel-builder-header>h1{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.discover-search-row{position:relative;margin:0 52px 14px 0}
.discover-search-row[hidden]{display:none}
.discover-search-box{display:flex;align-items:center;gap:8px;height:44px;padding:0 12px;margin:0;border:1px solid var(--line);border-radius:var(--ui-radius-pill);background:var(--raised)}
.discover-search-box:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.discover-search-box>svg{flex:0 0 16px;width:16px;height:16px;color:var(--muted)}
.discover-search-box input{flex:1;width:0;min-width:0;height:42px;margin:0;padding:0 32px 0 0;border:0;border-radius:0;background:transparent;font:inherit;font-size:var(--ui-text-control);font-weight:400;letter-spacing:normal;color:var(--ink);outline:none}
.discover-search-box input:focus{box-shadow:none;outline:none}
.discover-search-box input::-webkit-search-cancel-button{display:none}
.discover-search-clear{position:absolute;right:1px;top:0;min-height:44px;width:36px;padding:0;color:var(--muted);font-size:calc(var(--ui-text-title) + 2px);line-height:1}
.discover-search-clear[hidden]{display:none}
.channel-tag-modes.discover-modes{max-width:calc(100% - 52px);margin:0 52px 16px 0;gap:4px;border-bottom:0}
.channel-create-dialog .discover-modes button,.discover-modes button{min-height:36px;padding:8px 12px;border:0;border-radius:var(--ui-radius-pill);font-size:calc(var(--ui-text-caption) + 1px)}
.discover-modes button[aria-selected=true]{background:var(--soft);font-weight:600}
.channel-create-dialog .discover-tag-picker,.discover-tag-picker{padding:0;border:0;border-radius:0;background:transparent}
.discover-tags{display:flex;align-items:flex-start;flex-wrap:wrap;gap:8px}
.discover-chip{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%;min-height:36px;padding:7px 12px;border:1px solid var(--line);border-radius:var(--ui-radius-pill);background:var(--paper);color:var(--ink);font:inherit;font-size:calc(var(--ui-text-caption) + 1px);line-height:20px;text-decoration:none;cursor:pointer}
.discover-chip[hidden]{display:none}
.discover-chip:hover{background:var(--raised);border-color:var(--line-strong)}
.discover-chip.is-added{background:var(--soft);border-color:var(--line-strong)}
.discover-chip:disabled{opacity:.6;cursor:progress}
.discover-chip:focus-visible,.discover-search-clear:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.discover-tag-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.discover-tag-kind{flex:0 0 auto;color:var(--muted);font-size:calc(var(--ui-text-caption) - 1px);line-height:20px}
.discover-chip>svg{flex:0 0 13px;width:13px;height:13px}
.discover-empty,.discover-status{margin:16px 0 0;font-size:var(--ui-text-caption);line-height:1.6;color:var(--muted)}
.discover-status:empty{display:none}
.channel-create-dialog:has(.discover-search-row){width:min(660px,calc(100% - 32px));max-height:calc(var(--channel-dialog-visible-height,100dvh) - 32px);top:var(--channel-dialog-top,0px);bottom:auto;margin:16px auto 0}
.channel-create-dialog:has(.discover-search-row)>.channel-dialog-content{padding:20px;max-height:calc(var(--channel-dialog-visible-height,100dvh) - 34px)}
.channel-create-dialog:has(.discover-search-row)>.channel-dialog-close{top:20px;right:20px;width:44px;height:44px}
@media(max-width:820px){
 .discover-search-box input{font-size:var(--ui-text-body)}
 .discover-chip{min-height:44px;padding:11px 12px}
 .discover-modes button,.channel-create-dialog .discover-modes button{min-height:44px}
}

/* tracking-simple.css */
.tracking-result{max-width:none;margin:16px 0;padding:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.tracking-result>p{flex:1 1 200px;margin:0;font-size:calc(var(--ui-text-caption) + 1px);line-height:1.6;color:var(--muted)}
.tracking-result .channel-creation-actions{display:flex;gap:8px;margin:0;flex:0 0 auto}
.tracking-result .button{min-height:36px;padding:7px 12px;font-size:calc(var(--ui-text-caption) + 1px)}
.channel-builder-page:has(.tracking-config)>.channel-builder-header{margin:0 0 20px}
.channel-builder-page:has(.tracking-config)>.channel-builder-header h1{font-size:var(--ui-text-title);line-height:1.4;margin:0}
.channel-builder-form [data-channel-form-pane]{gap:16px}
.channel-builder-form>.form-message{display:block;min-height:20px;margin:0 0 8px;font-size:calc(var(--ui-text-caption) + 1px);line-height:20px}
.tracking-config>.form-message:empty{display:none}
.channel-builder-form textarea[name=description]{min-height:120px;resize:vertical}
.channel-builder-form [type=submit]{min-width:120px}
.tracking-config{padding:20px 0 0;min-width:0}
.tracking-config-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.tracking-status-tags{display:flex;gap:6px;flex-wrap:wrap;min-width:0}
.tracking-status-tags button{min-height:32px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--ui-radius-pill);background:var(--soft);font-size:var(--ui-text-caption);color:var(--muted)}
.tracking-status-tags button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.tracking-source-section{margin-top:0;min-width:0}
.tracking-source-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.tracking-source-heading h2{margin:0}
.tracking-config-controls{margin-top:20px}
.tracking-source-section h2{font-size:var(--ui-text-body);margin:0 0 12px;line-height:1.5}
.tracking-source-section h3{font-size:calc(var(--ui-text-caption) + 1px);font-weight:600;margin:16px 0 8px}
.tracking-source-section [role=status],.tracking-source-section [data-private-source-list]{font-size:var(--ui-text-caption);color:var(--muted)}
.tracking-source-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0;min-width:0}
.tracking-source-row>a{flex:1 1 150px;min-width:0;overflow-wrap:anywhere;font-size:calc(var(--ui-text-caption) + 1px)}
.tracking-source-row small{color:var(--muted);font-size:calc(var(--ui-text-caption) - 1px)}
.tracking-source-section [data-private-source-form]{display:flex;align-items:flex-end;flex-wrap:wrap;gap:8px;margin-top:16px}
.tracking-source-section [data-private-source-form]>label{flex:1 1 240px;min-width:0;font-size:var(--ui-text-caption)}
.tracking-source-section input{width:100%;min-width:0}
.tracking-detail-popover{position:fixed;inset:auto;margin:0;width:min(320px,calc(100vw - 32px));max-height:min(200px,calc(100dvh - 32px));overflow:auto;padding:16px 44px 16px 16px;border:1px solid var(--line);border-radius:var(--ui-radius-control);background:var(--paper);color:var(--ink);box-shadow:0 8px 32px #0002;z-index:250}
.tracking-detail-popover[hidden]{display:none}
.tracking-detail-popover>button{position:absolute;right:0;top:0;width:44px;height:44px;font-size:var(--ui-text-title);color:var(--muted)}
.tracking-detail-popover>p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--ui-text-caption);line-height:1.7}
.tracking-identity-choices:empty{display:none}
.tracking-pending-actions{margin-top:16px}
.tracking-source-entry{padding:12px 0;border-bottom:1px solid var(--line);min-width:0}
.tracking-source-entry>p{font-size:var(--ui-text-caption);line-height:1.7;overflow-wrap:anywhere;white-space:pre-wrap;margin:8px 0;color:var(--muted)}
.tracking-source-entry summary{cursor:pointer;font-size:calc(var(--ui-text-caption) + 1px);padding:8px 0}
.tracking-source-editor{display:grid;gap:12px;margin:12px 0;min-width:0}
.tracking-source-editor label{font-size:calc(var(--ui-text-caption) + 1px);min-width:0}
.tracking-source-editor textarea,.tracking-source-section [data-private-source-form] textarea{width:100%;min-width:0;resize:vertical}
.tracking-source-section .check-label input{width:auto}
.tracking-source-editor>.ui-button{justify-self:start}
.tracking-source-section>.muted,.tracking-source-section [data-private-sources]>.muted{font-size:var(--ui-text-caption);line-height:1.7}
@media(max-width:820px){.tracking-result .button,.tracking-status-tags button,.tracking-config .button{min-height:44px}.tracking-source-section input{font-size:var(--ui-text-body)}.tracking-config-controls{align-items:flex-start}.tracking-result .channel-creation-actions{width:100%}}
.tracking-detail-popover p{margin:0;white-space:pre-line}

/* channel-tabs-alignment.css */
/* The row divider and selected indicator share the same bottom pixels. */
.feed-page .filter-hierarchy:has([data-feed-secondary-row]){border-bottom:0;padding-bottom:0}
.feed-page [data-feed-secondary-row]{align-items:stretch;min-height:44px;background:linear-gradient(var(--line),var(--line)) left bottom/100% 1px no-repeat}
.feed-page [data-feed-secondary-row]>.filter-level{align-self:center}
.feed-page [data-feed-secondary-row]>.category-tabs{align-items:stretch}
.feed-page [data-feed-secondary-row]>.category-tabs>a{display:inline-flex;align-items:center;flex-shrink:0;min-height:44px;padding-block:8px}
.feed-page [data-feed-secondary-row]>.category-tabs>a.active::after{bottom:0}
/* Keep separate hit targets while tightening the visible name-to-icon gap. */
.source-tabs .custom-channel-tab-group>.custom-channel-pill{padding-inline-end:2px}
.source-tabs .custom-channel-tab-group>.custom-channel-tab-edit{justify-content:flex-start;padding-inline-start:6px}

/* components.css */
/* Shared component contract. Colors belong to theme.css; layout belongs to pages. */
/* Self-hosted (CSP font-src 'self'); SIL OFL, see /static/fonts/LibreBaskerville-OFL.txt. */
@font-face {
  font-family: "Libre Baskerville";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/static/fonts/libre-baskerville-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root {
  --ui-font-display: "Libre Baskerville", Georgia, "Times New Roman", "Songti SC", STSong, "Noto Serif CJK SC", "Source Han Serif SC", "Noto Serif SC", "Microsoft YaHei", serif;
  --ui-font-sans: -apple-system-body, ui-sans-serif, -apple-system, system-ui, "Segoe UI", Helvetica, "Apple Color Emoji", Arial, "Noto Sans CJK SC", "PingFang SC", "Microsoft YaHei", sans-serif, "Segoe UI Emoji", "Segoe UI Symbol";
  --ui-text-body: 16px;
  --ui-leading-body: 24px;
  --ui-text-control: 14px;
  --ui-leading-control: 20px;
  --ui-text-caption: 12px;
  --ui-text-title: 20px;
  --ui-text-section: 24px;
  --ui-text-display: 36px;
  --ui-leading-caption: 16px;
  --ui-weight-regular: 400;
  --ui-weight-medium: 500;
  --ui-weight-strong: 600;
  --ui-weight-headline: 700;
  --ui-sidebar-width: 260px;
  --ui-nav-icon: 16px;
  --ui-nav-height: 36px;
  --sidebar: var(--ui-sidebar-width);
  font-family: var(--ui-font-sans);
  font-size: var(--ui-text-body);
  line-height: var(--ui-leading-body);
  --ui-space-1: 4px;
  --ui-space-2: 8px;
  --ui-space-3: 12px;
  --ui-space-4: 16px;
  --ui-space-6: 24px;
  --ui-space-8: 32px;
  --ui-control-sm: 32px;
  --ui-control-md: 40px;
  --ui-control-lg: 44px;
  --ui-tab-height: 36px;
  --ui-tab-hit-height: var(--ui-tab-height);
  --ui-tab-hit-inset: calc((var(--ui-tab-hit-height) - var(--ui-tab-height)) / 2);
  --ui-radius-sm: 8px;
  --ui-radius-control: 12px;
  --ui-radius-panel: 16px;
  --ui-radius-pill: 999px;
  --ui-duration: 140ms;
  --ui-ease: cubic-bezier(.2, 0, 0, 1);
}

/* Typography belongs to the shared layer, including legacy workspace consumers. */
body { font-family: var(--ui-font-sans); font-size: var(--ui-text-body); line-height: var(--ui-leading-body); font-weight: var(--ui-weight-regular); }
button, input, select, textarea { font-family: var(--ui-font-sans); }
.ui-text-body, .timeline-summary, .dt-reading-copy, .dt-reading-copy p { font-size: var(--ui-text-body); line-height: var(--ui-leading-body); font-weight: var(--ui-weight-regular); }
.ui-text-control { font-size: var(--ui-text-control); line-height: var(--ui-leading-control); font-weight: var(--ui-weight-regular); }
.ui-text-caption { font-size: var(--ui-text-caption); line-height: var(--ui-leading-caption); font-weight: var(--ui-weight-regular); }
.sidebar { --ui-nav-text: .875rem; --ui-nav-leading: 1.25rem; --ui-nav-caption: .75rem; --ui-nav-caption-leading: 1rem; --ui-nav-gap: 8px; }
:is(.public-body, .admin-body) .sidebar { --sidebar-bg: var(--nav-bg); --sidebar-hover: var(--nav-hover); padding-inline: 8px; background: var(--nav-bg); color: var(--nav-ink); }
.sidebar .sidebar-navigation { padding-inline-end: 0; }
:is(.public-body, .admin-body) .sidebar .nav-item,
.admin-body .admin-sidebar .admin-nav-group > summary,
.sidebar > .brand .brand-wordmark, .sidebar .reader-account-copy strong, .sidebar-foot > strong { color: var(--nav-ink); }
:is(.public-body, .admin-body) .sidebar .nav-item:hover,
:is(.public-body, .admin-body) .sidebar .nav-item.active { background: var(--nav-hover); color: var(--nav-ink); }
:is(.public-body, .admin-body) .sidebar .nav-item > span,
:is(.public-body, .admin-body) .sidebar .nav-item .nav-icon,
.admin-body .admin-sidebar .admin-nav-group > summary > .lucide { color: inherit; }
.sidebar > .brand { padding-inline: 10px; }
.sidebar .brand small { font-size: var(--ui-nav-caption); line-height: var(--ui-nav-caption-leading); font-weight: var(--ui-weight-regular); letter-spacing: normal; }
:is(.public-body, .admin-body) .sidebar .nav-item,
.admin-body .admin-sidebar .admin-nav-items .nav-item { min-height: var(--ui-nav-height); margin-block: 0; padding: 8px 10px; gap: var(--ui-nav-gap); font-size: var(--ui-nav-text); line-height: var(--ui-nav-leading); font-weight: var(--ui-weight-regular); }
:is(.public-body, .admin-body) .sidebar .nav-item > span:not(.nav-icon) { font-size: var(--ui-nav-text); line-height: var(--ui-nav-leading); font-weight: var(--ui-weight-regular); letter-spacing: -.2px; }
:is(.public-body, .admin-body) .sidebar .nav-item .nav-icon { width: var(--ui-nav-icon); height: var(--ui-nav-icon); flex: 0 0 var(--ui-nav-icon); }
.sidebar .sidebar-navigation .side-group { padding: 8px 10px 6px; font-size: var(--ui-nav-caption); line-height: var(--ui-nav-caption-leading); font-weight: var(--ui-weight-medium); letter-spacing: normal; }
.admin-body .admin-nav-group > summary { font-size: var(--ui-nav-text); line-height: var(--ui-nav-leading); font-weight: var(--ui-weight-medium); }
.admin-body .admin-nav-group > summary > small { font-size: var(--ui-nav-caption); line-height: var(--ui-nav-caption-leading); }
:is(.public-body, .admin-body) .sidebar > .sidebar-foot { padding-inline: 0; }
.sidebar .reader-account-card { padding: 8px 6px; gap: 4px; }
.sidebar .reader-account-avatar { width: 24px; height: 24px; font-size: var(--ui-nav-caption); }
.sidebar .reader-account-copy strong, .sidebar-foot > strong { font-size: var(--ui-nav-text); line-height: var(--ui-nav-leading); font-weight: var(--ui-weight-regular); }
.sidebar .reader-account-copy small, .sidebar-foot > small { font-size: var(--ui-nav-caption); line-height: var(--ui-nav-caption-leading); font-weight: var(--ui-weight-regular); }
.sidebar .reader-account-menu .reader-menu-item, .sidebar .reader-account-menu .language-switch a, .sidebar .reader-account-menu .appearance-options > button { font-size: var(--ui-nav-text); line-height: var(--ui-nav-leading); font-weight: var(--ui-weight-regular); }
/* Account popovers follow their footer anchor instead of a viewport-wide box. */
.sidebar .reader-account-menu { position: absolute; inset: auto 0 calc(100% + var(--ui-space-2)); width: 100%; min-width: 0; max-width: 100%; max-height: calc(100dvh - 128px); padding: var(--ui-space-2); }
.sidebar .reader-account-menu .reader-menu-item { min-width: 0; padding-inline: 10px; gap: var(--ui-nav-gap); }
.sidebar .reader-menu-value { flex: 0 1 auto; min-width: 0; max-width: 50%; white-space: normal; overflow: visible; overflow-wrap: anywhere; text-align: end; }
.sidebar .reader-account-email { white-space: normal; overflow: visible; overflow-wrap: anywhere; font-size: var(--ui-nav-caption); line-height: var(--ui-nav-caption-leading); font-weight: var(--ui-weight-regular); }
.sidebar .reader-menu-submenu:not(.reader-menu-flyout) { margin-inline: calc(var(--ui-nav-icon) + var(--ui-nav-gap)) 0; }
.sidebar .reader-account-menu :is(.language-switch a, .appearance-options > button) { min-width: 0; white-space: normal; }
.sidebar .reader-account-menu :is(.language-switch a, .appearance-options > button) > span:not(.ui-navigation-icon) { min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 820px) {
  .sidebar .reader-account-menu :is(.reader-menu-item, .language-switch a, .appearance-options > button) { min-height: var(--ui-control-lg); }
}
.workspace-bar .workspace-breadcrumb { font-size: var(--ui-text-control); line-height: var(--ui-leading-control); }

/* Critical navigation uses the vendored Lucide paths without waiting for its script. */
.workspace-nav-toggle, .sidebar-close { color: var(--ink); }
.workspace-nav-toggle > :is(i, svg), .sidebar-close > :is(i, svg) { display: none; }
.workspace-nav-toggle::before, .sidebar-close::before,
.ui-navigation-icon::before, .sidebar .reader-account-avatar:not(.signed-in)::before, .sidebar .reader-account-card::after {
  content: "";
  display: block;
  width: var(--ui-navigation-size, 18px);
  height: var(--ui-navigation-size, 18px);
  background-color: currentColor;
  -webkit-mask: var(--ui-navigation-icon) center / contain no-repeat;
  mask: var(--ui-navigation-icon) center / contain no-repeat;
}
.workspace-nav-toggle { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='3' rx='2'/%3E%3Cpath d='M9 3v18'/%3E%3C/svg%3E"); }
.sidebar-close { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='3' rx='2'/%3E%3Cpath d='M9 3v18'/%3E%3Cpath d='m16 15-3-3 3-3'/%3E%3C/svg%3E"); }
@media (max-width: 820px) {
  :is(.public-body, .admin-body) .mobile-header { padding-block: 4px; }
  .mobile-header .workspace-nav-toggle { width: 44px; min-height: 44px; padding: 12px; flex: 0 0 44px; }
  .sidebar-close { width: 44px; min-height: 44px; top: 8px; right: 8px; }
  .mobile-header .workspace-nav-toggle::before, .sidebar-close::before { width: 20px; height: 20px; }
}

/* Public navigation and account icons share the same script-independent renderer. */
.sidebar .ui-navigation-icon { --ui-navigation-size: var(--ui-nav-icon); display: inline-grid; place-items: center; width: var(--ui-nav-icon); height: var(--ui-nav-icon); flex: 0 0 var(--ui-nav-icon); }
.sidebar .reader-account-avatar:not(.signed-in), .sidebar .reader-account-card::after { --ui-navigation-size: var(--ui-nav-icon); color: var(--nav-ink); }
.sidebar .reader-account-avatar:not(.signed-in) > :is(i, svg), .sidebar .reader-account-chevron { display: none; }
.sidebar .reader-account-card::after { flex: 0 0 var(--ui-nav-icon); }
.sidebar > .brand, .sidebar > .sidebar-foot { flex-shrink: 0; }
.sidebar .nav-item:focus-visible { outline: 2px solid var(--nav-ink); outline-offset: -2px; }
:is(.public-body, .admin-body) .sidebar .nav-item > span:not(.nav-icon) { width: auto; min-width: 0; flex: 1; text-align: left; white-space: normal; overflow-wrap: anywhere; }
.sidebar .reader-account-copy :is(strong, small), .sidebar .reader-menu-label { white-space: normal; overflow: visible; overflow-wrap: anywhere; }
.sidebar .reader-account-menu :is(.reader-menu-item, .language-switch a, .appearance-options > button) { height: auto; }
.sidebar .reader-menu-icon, .sidebar .reader-menu-icon svg { width: var(--ui-nav-icon); height: var(--ui-nav-icon); stroke-width: 1.8; }
.sidebar .reader-menu-value { font-size: var(--ui-nav-caption); line-height: var(--ui-nav-caption-leading); }
[data-ui-navigation-icon="sparkles"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M11.017%202.814a1%201%200%200%201%201.966%200l1.051%205.558a2%202%200%200%200%201.594%201.594l5.558%201.051a1%201%200%200%201%200%201.966l-5.558%201.051a2%202%200%200%200-1.594%201.594l-1.051%205.558a1%201%200%200%201-1.966%200l-1.051-5.558a2%202%200%200%200-1.594-1.594l-5.558-1.051a1%201%200%200%201%200-1.966l5.558-1.051a2%202%200%200%200%201.594-1.594z%22%2F%3E%3Cpath%20d%3D%22M20%202v4%22%2F%3E%3Cpath%20d%3D%22M22%204h-4%22%2F%3E%3Ccircle%20cx%3D%224%22%20cy%3D%2220%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="list"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%205h.01%22%2F%3E%3Cpath%20d%3D%22M3%2012h.01%22%2F%3E%3Cpath%20d%3D%22M3%2019h.01%22%2F%3E%3Cpath%20d%3D%22M8%205h13%22%2F%3E%3Cpath%20d%3D%22M8%2012h13%22%2F%3E%3Cpath%20d%3D%22M8%2019h13%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="building-2"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%2012h4%22%2F%3E%3Cpath%20d%3D%22M10%208h4%22%2F%3E%3Cpath%20d%3D%22M14%2021v-3a2%202%200%200%200-4%200v3%22%2F%3E%3Cpath%20d%3D%22M6%2010H4a2%202%200%200%200-2%202v7a2%202%200%200%200%202%202h16a2%202%200%200%200%202-2V9a2%202%200%200%200-2-2h-2%22%2F%3E%3Cpath%20d%3D%22M6%2021V5a2%202%200%200%201%202-2h8a2%202%200%200%201%202%202v16%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="clock"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22M12%206v6l4%202%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="newspaper"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%2018h-5%22%2F%3E%3Cpath%20d%3D%22M18%2014h-8%22%2F%3E%3Cpath%20d%3D%22M4%2022h16a2%202%200%200%200%202-2V4a2%202%200%200%200-2-2H8a2%202%200%200%200-2%202v16a2%202%200%200%201-4%200v-9a2%202%200%200%201%202-2h2%22%2F%3E%3Crect%20width%3D%228%22%20height%3D%224%22%20x%3D%2210%22%20y%3D%226%22%20rx%3D%221%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="flame"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203q1%204%204%206.5t3%205.5a1%201%200%200%201-14%200%205%205%200%200%201%201-3%201%201%200%200%200%205%200c0-2-1.5-3-1.5-5q0-2%202.5-4%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="git-branch"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%206a9%209%200%200%200-9%209V3%22%2F%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%226%22%20r%3D%223%22%2F%3E%3Ccircle%20cx%3D%226%22%20cy%3D%2218%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="activity"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2012h-2.48a2%202%200%200%200-1.93%201.46l-2.35%208.36a.25.25%200%200%201-.48%200L9.24%202.18a.25.25%200%200%200-.48%200l-2.35%208.36A2%202%200%200%201%204.49%2012H2%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="messages-square"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M16%2010a2%202%200%200%201-2%202H6.828a2%202%200%200%200-1.414.586l-2.202%202.202A.71.71%200%200%201%202%2014.286V4a2%202%200%200%201%202-2h10a2%202%200%200%201%202%202z%22%2F%3E%3Cpath%20d%3D%22M20%209a2%202%200%200%201%202%202v10.286a.71.71%200%200%201-1.212.502l-2.202-2.202A2%202%200%200%200%2017.172%2019H10a2%202%200%200%201-2-2v-1%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="shapes"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8.3%2010a.7.7%200%200%201-.626-1.079L11.4%203a.7.7%200%200%201%201.198-.043L16.3%208.9a.7.7%200%200%201-.572%201.1Z%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%2214%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221%22%2F%3E%3Ccircle%20cx%3D%2217.5%22%20cy%3D%2217.5%22%20r%3D%223.5%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="calendar-days"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M8%202v3%22%2F%3E%3Cpath%20d%3D%22M16%202v3%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M3%209h18%22%2F%3E%3Cpath%20d%3D%22M8%2013h.01%22%2F%3E%3Cpath%20d%3D%22M12%2013h.01%22%2F%3E%3Cpath%20d%3D%22M16%2013h.01%22%2F%3E%3Cpath%20d%3D%22M8%2017h.01%22%2F%3E%3Cpath%20d%3D%22M12%2017h.01%22%2F%3E%3Cpath%20d%3D%22M16%2017h.01%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="briefcase-business"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2012h.01%22%2F%3E%3Cpath%20d%3D%22M16%206V4a2%202%200%200%200-2-2h-4a2%202%200%200%200-2%202v2%22%2F%3E%3Cpath%20d%3D%22M22%2013a18.15%2018.15%200%200%201-20%200%22%2F%3E%3Crect%20width%3D%2220%22%20height%3D%2214%22%20x%3D%222%22%20y%3D%226%22%20rx%3D%222%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="timer-reset"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%202h4%22%2F%3E%3Cpath%20d%3D%22M12%2014v-4%22%2F%3E%3Cpath%20d%3D%22M4%2013a8%208%200%200%201%208-7%208%208%200%201%201-5.3%2014L4%2017.6%22%2F%3E%3Cpath%20d%3D%22M9%2017H4v5%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="panels-top-left"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%2218%22%20height%3D%2218%22%20x%3D%223%22%20y%3D%223%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M3%209h18%22%2F%3E%3Cpath%20d%3D%22M9%2021V9%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="heart"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%209.5a5.5%205.5%200%200%201%209.591-3.676.56.56%200%200%200%20.818%200A5.49%205.49%200%200%201%2022%209.5c0%202.29-1.5%204-3%205.5l-5.492%205.313a2%202%200%200%201-3%20.019L5%2015c-1.5-1.5-3-3.2-3-5.5%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="bookmark"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M17%203a2%202%200%200%201%202%202v15a1%201%200%200%201-1.496.868l-4.512-2.578a2%202%200%200%200-1.984%200l-4.512%202.578A1%201%200%200%201%205%2020V5a2%202%200%200%201%202-2z%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="thumbs-up"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%205.88%2014%2010h5.83a2%202%200%200%201%201.92%202.56l-2.33%208A2%202%200%200%201%2017.5%2022H4a2%202%200%200%201-2-2v-8a2%202%200%200%201%202-2h2.76a2%202%200%200%200%201.79-1.11L12%202a3.13%203.13%200%200%201%203%203.88Z%22%2F%3E%3Cpath%20d%3D%22M7%2010v12%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="folder-heart"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10.638%2020H4a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2h3.9a2%202%200%200%201%201.69.9l.81%201.2a2%202%200%200%200%201.67.9H20a2%202%200%200%201%202%202v3.417%22%2F%3E%3Cpath%20d%3D%22M14.62%2018.8A2.25%202.25%200%201%201%2018%2015.836a2.25%202.25%200%201%201%203.38%202.966l-2.626%202.856a.998.998%200%200%201-1.507%200z%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="user-round"], .sidebar .reader-account-avatar:not(.signed-in) { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%225%22%2F%3E%3Cpath%20d%3D%22M20%2021a8%208%200%200%200-16%200%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="chevrons-up-down"], .sidebar .reader-account-card { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m7%2015%205%205%205-5%22%2F%3E%3Cpath%20d%3D%22m7%209%205-5%205%205%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="log-in"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m10%2017%205-5-5-5%22%2F%3E%3Cpath%20d%3D%22M15%2012H3%22%2F%3E%3Cpath%20d%3D%22M15%203h4a2%202%200%200%201%202%202v14a2%202%200%200%201-2%202h-4%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="mail"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m22%207-8.991%205.727a2%202%200%200%201-2.009%200L2%207%22%2F%3E%3Crect%20x%3D%222%22%20y%3D%224%22%20width%3D%2220%22%20height%3D%2216%22%20rx%3D%222%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="badge-check"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3.85%208.62a4%204%200%200%201%204.78-4.77%204%204%200%200%201%206.74%200%204%204%200%200%201%204.78%204.78%204%204%200%200%201%200%206.74%204%204%200%200%201-4.77%204.78%204%204%200%200%201-6.75%200%204%204%200%200%201-4.78-4.77%204%204%200%200%201%200-6.76Z%22%2F%3E%3Cpath%20d%3D%22m16%209-5.5%205.5L8%2012%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="credit-card"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20width%3D%2220%22%20height%3D%2214%22%20x%3D%222%22%20y%3D%225%22%20rx%3D%222%22%2F%3E%3Cline%20x1%3D%222%22%20x2%3D%2222%22%20y1%3D%2210%22%20y2%3D%2210%22%2F%3E%3Cpath%20d%3D%22M6%2014h2%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="circle-dot"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="circle-help"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22%2F%3E%3Cpath%20d%3D%22M9.09%209a3%203%200%200%201%205.83%201c0%202-3%203-3%203%22%2F%3E%3Cpath%20d%3D%22M12%2017h.01%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="languages"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m5%208%206%206%22%2F%3E%3Cpath%20d%3D%22m4%2014%206-6%202-3%22%2F%3E%3Cpath%20d%3D%22M2%205h12%22%2F%3E%3Cpath%20d%3D%22M7%202h1%22%2F%3E%3Cpath%20d%3D%22m22%2022-5-10-5%2010%22%2F%3E%3Cpath%20d%3D%22M14%2018h6%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="check"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%206%209%2017l-5-5%22%2F%3E%3C%2Fsvg%3E"); }
[data-ui-navigation-icon="log-out"] { --ui-navigation-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m16%2017%205-5-5-5%22%2F%3E%3Cpath%20d%3D%22M21%2012H9%22%2F%3E%3Cpath%20d%3D%22M9%2021H5a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2h4%22%2F%3E%3C%2Fsvg%3E"); }
@media (max-width: 820px) {
  .sidebar { --ui-nav-text: 1.0625rem; --ui-nav-leading: 1.5rem; --ui-nav-caption: .8125rem; --ui-nav-caption-leading: 1.25rem; --ui-nav-icon: 20px; --ui-nav-gap: 12px; }
  .sidebar .reader-account-card { gap: 8px; }
  .sidebar .reader-account-avatar { width: 28px; height: 28px; }
}

/* Content cards: one surface and typography contract, independent of scenario. */
:root {
  --ui-card-padding: 20px;
  --ui-card-title-size: 18px;
  --ui-card-title-leading: 28px;
  --ui-card-lead-title-size: 28px;
  --ui-card-lead-title-leading: 36px;
}
[data-ui-content-card].unified-card {
  min-width: 0;
  margin: 0;
  padding: var(--ui-card-padding);
  border: 1px solid var(--line);
  border-radius: var(--ui-radius-panel);
  background: var(--paper);
  color: var(--ink);
  box-shadow: none;
  transform: none;
  overflow-wrap: anywhere;
  transition: border-color var(--ui-duration) var(--ui-ease);
}
[data-ui-content-card].unified-card:hover { border: 1px solid var(--line-strong); background: var(--paper); box-shadow: none; transform: none; }
.timeline-item > .timeline-card.timeline-card-shell { min-width: 0; padding-bottom: var(--ui-space-3); }
[data-ui-content-card] .timeline-card-head { align-items: flex-start; gap: var(--ui-space-2); }
[data-ui-content-card] .timeline-head-left { flex: 1; min-width: 0; gap: var(--ui-space-2); align-items: center; flex-wrap: wrap; }
[data-ui-content-card] .timeline-head-right { gap: var(--ui-space-2); }
[data-ui-content-card] .timeline-source { color: var(--secondary); font-size: var(--ui-text-caption); line-height: var(--ui-leading-caption); font-weight: var(--ui-weight-medium); overflow-wrap: anywhere; }
[data-ui-content-card] :is(.translation-badge, .timeline-selected-badge, .badge.demo) { max-width: 100%; padding: 3px 8px; border-radius: var(--ui-radius-pill); font-size: var(--ui-text-caption); line-height: var(--ui-leading-caption); font-weight: var(--ui-weight-medium); white-space: normal; }
[data-ui-content-card] :is(.timeline-title, .uc-x-title) { margin: var(--ui-space-3) 0 var(--ui-space-2); color: var(--ink); font-size: var(--ui-card-title-size); line-height: var(--ui-card-title-leading); font-weight: var(--ui-weight-strong); overflow-wrap: anywhere; }
/* Fixed shared emphasis, used once by a selected feed without changing its order. */
[data-ui-content-card].unified-card[data-ui-content-emphasis="lead"] { padding: var(--ui-space-6); border-color: var(--line-strong); }
[data-ui-content-card][data-ui-content-emphasis="lead"] .timeline-title { font-size: var(--ui-card-lead-title-size); line-height: var(--ui-card-lead-title-leading); font-weight: var(--ui-weight-headline); }
.public-body .timeline-time,
[data-ui-content-card] .timeline-head-left .timeline-source,
[data-ui-content-card] :is(.timeline-linked-to, .timeline-dup-count) { color: var(--muted); font-family: var(--ui-font-sans); font-size: var(--ui-text-caption); line-height: var(--ui-leading-caption); font-weight: var(--ui-weight-regular); }
[data-ui-content-card] .timeline-summary { padding: 0; margin: var(--ui-space-2) 0 0; color: var(--secondary); font-size: var(--ui-text-body); line-height: var(--ui-leading-body); font-weight: var(--ui-weight-regular); }
/* A verified event's narrative is body copy in every shared card consumer. */
[data-ui-content-card][data-ui-content-kind="subject-event"] :is(.timeline-summary, .timeline-summary .timeline-source) { font-size: var(--ui-text-body); line-height: var(--ui-leading-body); font-weight: var(--ui-weight-regular); }
[data-ui-content-card][data-ui-content-kind="subject-event"] :is(.timeline-source, .translation-badge) { font-weight: var(--ui-weight-regular); }
[data-ui-content-card] .timeline-divider { margin: var(--ui-space-3) 0 0; border: 0; }
[data-ui-content-card] .timeline-reason { margin: 0; padding: var(--ui-space-3); border: 0; border-radius: var(--ui-radius-sm); background: var(--raised); color: var(--muted); font-size: var(--ui-text-control); line-height: var(--ui-leading-control); }
[data-ui-content-card].unified-card:has(> .reader-feedback-row) { padding-bottom: var(--ui-space-3); }
[data-ui-content-card] .reader-feedback-row { margin: var(--ui-space-3) 0 0; padding: 0; border: 0; }
[data-ui-content-card] .reader-feedback-actions { max-width: 100%; column-gap: var(--ui-space-2); row-gap: var(--ui-space-4); }
[data-ui-content-card] .reader-useful {
  position: relative;
  min-height: var(--ui-control-sm);
  margin: 0;
  padding: 3px 12px;
  gap: 6px;
  border: 1px solid var(--line-strong);
  border-radius: var(--ui-radius-pill);
  background: var(--paper);
  color: var(--ink);
  font-size: calc(var(--ui-text-caption) + 1px);
  font-weight: var(--ui-weight-medium);
  line-height: var(--ui-leading-control);
}
[data-ui-content-card] .reader-useful:hover { border-color: var(--line-strong); background: var(--raised); }
[data-ui-content-card] .reader-useful[aria-pressed="true"] { border-color: var(--ink); background: var(--raised); }
[data-ui-content-card] .reader-useful .lucide { flex: 0 0 16px; }
[data-ui-content-card] .reader-feedback-count { font-size: var(--ui-text-caption); }
.public-body .reader-feedback-count[data-feedback-zero="true"] { display: none; }
[data-ui-content-card] .event-reading { margin-top: var(--ui-space-3); font-size: var(--ui-text-control); line-height: var(--ui-leading-control); }
[data-ui-content-card] details.event-reading > summary { cursor: pointer; padding-block: 6px; }
[data-ui-content-card] :is(a, button, summary):focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
@media (max-width: 820px) {
  :root { --ui-card-padding: 16px; --ui-card-title-size: 16px; --ui-card-title-leading: 24px; --ui-card-lead-title-size: 20px; --ui-card-lead-title-leading: 28px; }
  [data-ui-content-card].unified-card[data-ui-content-emphasis="lead"] { padding: var(--ui-card-padding); }
  .public-body .timeline-item { grid-template-columns: 40px 12px minmax(0, 1fr); }
  .public-body .timeline-list { gap: 0; }
}
@media (max-width: 820px), (pointer: coarse) {
  [data-ui-content-card] .timeline-star { width: 44px; height: 44px; }
  /* Keep the hit target inside card padding without stretching the label row. */
  [data-ui-content-card] .timeline-head-right { margin-block: calc(-1 * var(--ui-space-2)); }
  [data-ui-content-card] details.event-reading > summary { min-height: 44px; }
  /* Extend the hit area inside existing footer spacing; keep the painted pill compact. */
  [data-ui-content-card] .reader-useful::after { content: ""; position: absolute; inset: -7px -1px; border-radius: inherit; }
}
@media (prefers-reduced-motion: reduce) { [data-ui-content-card].unified-card { transition: none; } }

/* Compact ranking panels use the shared content surface corners. */
.current-hotspots { border-radius: var(--ui-radius-panel); overflow: visible; box-shadow: none; }
.current-hotspots > header { border-start-start-radius: calc(var(--ui-radius-panel) - 1px); border-start-end-radius: calc(var(--ui-radius-panel) - 1px); }
.current-hotspots a:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }

/* X source posts: shared layout, distinct from AInews editorial copy. */
.x-post { min-width: 0; color: var(--x-ink); font-family: var(--ui-font-sans); text-align: start; }
[data-ui-content-card].unified-card[data-x-surface], .x-post[data-x-surface] {
  min-width: 0; margin: 0; padding: var(--ui-card-padding); border: 1px solid var(--x-line);
  border-radius: var(--ui-radius-panel); background: var(--x-bg); color: var(--x-ink); box-shadow: none; transform: none;
}
[data-ui-content-card][data-x-surface] > .timeline-card-head { margin-bottom: 12px; }
.x-post .x-post-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin: 0 0 12px; padding: 0; }
.x-post .x-post-identity { display: flex; align-items: center; min-width: 0; gap: 10px; }
.x-post .x-post-avatar { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; overflow: hidden; border-radius: 50%; background: var(--raised); color: var(--x-muted); }
.x-post .x-post-avatar img { display: block; width: 100%; height: 100%; object-fit: cover; }
.x-post .x-post-avatar .lucide { width: 22px; height: 22px; }
.x-post .x-post-names { display: flex; flex-direction: column; min-width: 0; gap: 1px; }
.x-post .x-post-author { margin: 0; padding: 0; color: var(--x-ink); font-size: calc(var(--ui-text-control) + 1px); font-weight: 700; line-height: 20px; overflow-wrap: anywhere; text-decoration: none; }
.x-post a.x-post-author:hover { text-decoration: underline; }
.x-post .x-post-handle { color: var(--x-muted); font-size: calc(var(--ui-text-control) + 1px); line-height: 20px; overflow-wrap: anywhere; }
.x-post .x-post-brand { display: grid; place-items: center; flex: 0 0 36px; min-height: 36px; border-radius: var(--ui-radius-pill); color: var(--x-ink); }
.x-post .x-post-brand svg { width: 22px; height: 22px; }
.x-post .x-post-text, .x-post .x-post-text p { margin: 0; padding: 0; border: 0; color: var(--x-ink); font-size: var(--ui-text-body); font-weight: 400; line-height: 24px; letter-spacing: normal; white-space: pre-wrap; overflow-wrap: anywhere; }
.x-post .x-post-text p + p { margin-top: 12px; }
.x-post .x-post-text a, .x-post .x-post-context-link { color: var(--x-link); text-decoration: none; }
.x-post .x-post-text a:hover, .x-post .x-post-context-link:hover { text-decoration: underline; }
.x-post .x-post-notice { margin: 12px 0; font-size: var(--ui-text-control); line-height: 20px; color: var(--x-muted); }
.x-post .x-post-language, .x-post .x-post-label { display: block; margin: 0 0 10px; font-size: var(--ui-text-caption); line-height: 18px; color: var(--x-muted); }
.x-post .x-post-label { width: fit-content; padding: 3px 8px; border: 1px solid var(--x-line); border-radius: var(--ui-radius-pill); }
.x-post [data-x-media] { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2px; margin: 12px 0 0; overflow: hidden; border: 1px solid var(--x-line); border-radius: var(--ui-radius-panel); aspect-ratio: 16 / 9; }
.x-post .x-post-media-cell { display: block; padding: 0; margin: 0; border: 0; min-width: 0; min-height: 0; overflow: hidden; background: var(--raised); cursor: zoom-in; }
.x-post [data-x-media] img { display: block; width: 100%; height: 100%; object-fit: cover; }
.x-post [data-x-media][data-count="1"] { grid-template-columns: minmax(0,1fr); aspect-ratio: auto; }
.x-post [data-x-media][data-count="1"] img { height: auto; max-height: 560px; object-fit: contain; }
.x-post [data-x-media][data-count="3"] { grid-template-rows: repeat(2,minmax(0,1fr)); }
.x-post [data-x-media][data-count="3"] > :first-child { grid-row: span 2; }
.x-post [data-x-media][data-count="4"] { grid-template-rows: repeat(2,minmax(0,1fr)); }
.x-post .x-post-quote { display: block; margin: 12px 0 0; padding: 12px; min-width: 0; border: 1px solid var(--x-line); border-radius: var(--ui-radius-panel); background: transparent; color: var(--x-ink); }
.x-post .x-post-quote figcaption { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 6px; margin: 0 0 6px; color: var(--x-muted); font-size: var(--ui-text-control); line-height: 20px; overflow-wrap: anywhere; }
.x-post .x-post-quote figcaption strong { color: var(--x-ink); font-size: inherit; font-weight: 700; }
.x-post .x-post-relation { flex-basis: 100%; font-size: var(--ui-text-caption); }
.x-post .x-post-quote blockquote { padding: 0; margin: 0; border: 0; background: transparent; color: var(--x-ink); font-size: var(--ui-text-body); font-weight: 400; line-height: 24px; white-space: pre-wrap; overflow-wrap: anywhere; }
.x-post .x-post-context-link { display: inline-flex; align-items: center; margin-top: 8px; min-height: 32px; font-size: calc(var(--ui-text-caption) + 1px); line-height: 20px; }
.x-post .x-post-translation { margin: 12px 0 0; padding-top: 10px; border-top: 1px solid var(--x-line); color: var(--x-muted); }
.x-post .x-post-translation summary { display: list-item; width: fit-content; font-size: calc(var(--ui-text-caption) + 1px); line-height: 20px; cursor: pointer; color: var(--x-link); }
.x-post .x-post-translation p { margin: 8px 0 0; padding: 0; color: var(--x-ink); font-size: var(--ui-text-body); font-weight: 400; line-height: 24px; white-space: pre-wrap; overflow-wrap: anywhere; }
.x-post .x-post-date { margin: 12px 0 0; color: var(--x-muted); font-size: calc(var(--ui-text-caption) + 1px); line-height: 20px; overflow-wrap: anywhere; }
.x-post .x-post-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 16px; margin: 12px 0 0; padding: 8px 0 0; border-top: 1px solid var(--x-line); }
.x-post .x-post-actions a { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 36px; color: var(--x-muted); font-size: calc(var(--ui-text-caption) + 1px); line-height: 20px; text-decoration: none; }
.x-post .x-post-actions .lucide { width: 18px; height: 18px; }
.x-post .x-post-actions a:hover { color: var(--x-link); }
.x-post :is(a,button,summary):focus-visible { outline: 2px solid var(--x-link); outline-offset: 3px; }
[data-x-surface] .x-post-editorial { margin: 12px 0; font-size: var(--ui-text-control); line-height: 20px; }
[data-x-surface] .x-post-editorial summary { cursor: pointer; color: var(--muted); }
[data-x-surface] .x-post-editorial .uc-x-title { font-size: var(--ui-text-body); line-height: 24px; }
/* Compact source-post variant: author, quote and time keep one reading order. */
.x-post--source .x-post-head { align-items: center; justify-content: flex-start; flex-wrap: wrap; gap: 8px 12px; }
.x-post--source .x-post-avatar { flex-basis: 32px; width: 32px; height: 32px; }
.x-post--source .x-post-names { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; }
.x-post--source .x-post-label { margin: 0; }
.x-post--source .x-post-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 16px; margin-top: 12px; }
.x-post--source .x-post-date, .x-post--source .x-post-actions { margin: 0; padding: 0; border: 0; }
.x-post--source .x-post-actions { justify-content: flex-start; }
@media (max-width: 820px), (pointer: coarse) {
  .x-post .x-post-actions a, .x-post .x-post-brand, .x-post .x-post-context-link, .x-post .x-post-translation summary, [data-x-surface] .x-post-editorial summary { min-height: 44px; }
  .x-post .x-post-translation summary, [data-x-surface] .x-post-editorial summary { align-content: center; }
}

/* Existing .button consumers use the same foundation as new templates. */
:is(.ui-button, .button) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--ui-space-2);
  min-height: var(--ui-control-md);
  max-width: 100%;
  padding: 8px 16px;
  border: 1px solid var(--line-strong);
  border-radius: var(--ui-radius-pill);
  background: var(--paper);
  color: var(--ink);
  font: inherit;
  font-size: var(--ui-text-control);
  font-weight: 550;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  vertical-align: middle;
  transition: background-color var(--ui-duration) var(--ui-ease), border-color var(--ui-duration) var(--ui-ease), color var(--ui-duration) var(--ui-ease);
}
:is(.ui-button, .button):hover { background: var(--raised); border-color: var(--line-strong); color: var(--ink); }
:is(.ui-button--primary, .button.primary) { background: var(--accent-solid); color: var(--on-accent); border-color: var(--accent-solid); }
:is(.ui-button--primary, .button.primary):hover { background: var(--secondary); border-color: var(--secondary); color: var(--on-accent); filter: none; }
.ui-button--soft { background: var(--raised); border-color: transparent; }
.ui-button--soft:hover { background: var(--sidebar-hover); border-color: transparent; }
.ui-button--ghost { background: transparent; border-color: transparent; }
.ui-button--ghost:hover { background: var(--raised); border-color: transparent; }
:is(.ui-button--danger, .button.danger) { color: var(--danger-ink); border-color: var(--danger-line); background: transparent; }
:is(.ui-button--danger, .button.danger):hover { color: var(--danger-ink); background: var(--danger-bg); border-color: var(--danger-line); }
:is(.ui-button--sm, .button.small) { min-height: var(--ui-control-sm); padding: 5px 12px; font-size: calc(var(--ui-text-caption) + 1px); }
.ui-button--lg { min-height: var(--ui-control-lg); padding: 10px 20px; }
.ui-button--icon { width: var(--ui-control-md); min-width: var(--ui-control-md); padding: 8px; flex-shrink: 0; }
.ui-button--icon.ui-button--sm { width: var(--ui-control-sm); min-width: var(--ui-control-sm); }
:is(.ui-button, .button) :is(svg, .lucide) { width: 18px; height: 18px; flex-shrink: 0; }
:is(.ui-button, .button):is(:disabled, [aria-disabled="true"]) { opacity: .45; cursor: not-allowed; pointer-events: none; }
:is(.ui-button, .button)[aria-busy="true"] { opacity: 1; cursor: progress; }
:is(.ui-button, .button):active:not(:disabled):not([aria-disabled="true"]) { filter: brightness(.94); }
:is(.ui-button, .button, .ui-chip, .ui-tab, .ui-menu summary, .ui-menu-item, .ui-input):focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
.ui-spinner { display: inline-block; width: 16px; height: 16px; flex: 0 0 16px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: ui-spin .8s linear infinite; }
.ui-button > .ui-spinner { width: 18px; height: 18px; flex-basis: 18px; }
@keyframes ui-spin { to { transform: rotate(360deg); } }

/* Link navigation keeps native navigation semantics; in-page tabs opt into JS. */
.ui-tabs { display: flex; align-items: center; gap: var(--ui-space-1); max-width: 100%; min-width: 0; overflow-x: auto; overscroll-behavior-x: contain; padding: 4px; scrollbar-width: thin; }
.ui-tabs--segmented { width: fit-content; border-radius: var(--ui-radius-pill); background: var(--raised); }
.ui-tab { display: inline-flex; align-items: center; justify-content: center; gap: 6px; flex: 0 0 auto; min-height: 36px; padding: 7px 16px; border: 1px solid transparent; border-radius: var(--ui-radius-pill); background: transparent; color: var(--secondary); font: inherit; font-size: var(--ui-text-control); font-weight: 500; line-height: 1.5; white-space: nowrap; cursor: pointer; }
.ui-tab:hover { color: var(--ink); background: var(--sidebar-hover); }
.ui-tab:is([aria-selected="true"], [aria-current="page"]) { background: var(--paper); color: var(--ink); border-color: var(--line-strong); font-weight: 650; }
.ui-tabs .ui-tab:focus-visible { outline-offset: -3px; }
.ui-tabs--pills { padding: 4px 0; gap: 8px; }
.ui-tabs--pills .ui-tab { border-color: var(--line-strong); }
.ui-tabs--pills .ui-tab:is([aria-selected="true"], [aria-current="page"]) { background: var(--raised); border-color: var(--ink); }
.ui-tab:disabled { opacity: .45; cursor: not-allowed; }
.ui-panel { padding-block: 16px; }

/* Shared feed tabs, including the existing separate edit action. */
.source-tabs { gap: 8px; padding-block: 4px; }
/* Paint a standard 36px pill inside the larger touch target. */
.source-tabs a { --ui-tab-fill: transparent; --ui-tab-stroke: var(--line-strong); position: relative; isolation: isolate; display: inline-flex; align-items: center; justify-content: center; gap: 6px; flex-shrink: 0; min-height: var(--ui-tab-hit-height); padding: 6px 14px; border: 0; border-radius: var(--ui-radius-pill); background: transparent; color: var(--secondary); font-size: calc(var(--ui-text-caption) + 1px); line-height: 1.5; }
.source-tabs a::before, .source-tabs .custom-channel-tab-group::before { content: ""; position: absolute; z-index: -1; box-sizing: border-box; inset: var(--ui-tab-hit-inset) 0; border: 1px solid var(--ui-tab-stroke); border-radius: inherit; background: var(--ui-tab-fill); pointer-events: none; }
.source-tabs a:hover { --ui-tab-fill: var(--raised); background: transparent; color: var(--ink); }
.source-tabs a.active { --ui-tab-fill: var(--raised); --ui-tab-stroke: var(--ink); background: transparent; color: var(--ink); font-weight: 650; }
.source-tabs a:focus-visible { outline: 0; }
.source-tabs a:focus-visible::before { outline: 2px solid var(--ink); outline-offset: -3px; }
.source-tabs .custom-channel-pill { border: 0; }
.source-tabs .custom-channel-tab-group { --ui-tab-fill: var(--raised); --ui-tab-stroke: var(--ink); position: relative; isolation: isolate; border: 0; border-radius: var(--ui-radius-pill); background: transparent; }
.source-tabs .custom-channel-tab-group > a { --ui-tab-fill: transparent; --ui-tab-stroke: transparent; border: 0; background: transparent; }
.source-tabs .custom-channel-tab-group > .custom-channel-tab-edit { min-height: var(--ui-tab-hit-height); margin-inline-end: 3px; }
.source-tabs .custom-channel-tab-group > .custom-channel-tab-edit:hover { --ui-tab-fill: var(--sidebar-hover); background: transparent; }
.channel-tag-modes { width: fit-content; max-width: 100%; gap: 4px; padding: 4px; border: 0; border-radius: var(--ui-radius-pill); background: var(--raised); }
:is(.channel-tag-modes, .channel-create-dialog .channel-tag-modes) button { min-height: 36px; padding: 7px 14px; border: 1px solid transparent; border-radius: var(--ui-radius-pill); font-size: calc(var(--ui-text-caption) + 1px); }
.channel-tag-modes button[aria-selected="true"] { background: var(--paper); border-color: var(--line-strong); color: var(--ink); }
.channel-tag-modes button:focus-visible { outline-offset: -3px; }
.feed-page:not(.people-feed) .custom-channel-add { --ui-tab-fill: var(--raised); position: relative; isolation: isolate; width: var(--ui-tab-hit-height); height: var(--ui-tab-hit-height); border: 0; border-radius: var(--ui-radius-pill); background: transparent; color: var(--secondary); }
.feed-page:not(.people-feed) .custom-channel-add::before { content: ""; position: absolute; z-index: -1; inset: var(--ui-tab-hit-inset); border-radius: inherit; background: var(--ui-tab-fill); pointer-events: none; }
.feed-page:not(.people-feed) .custom-channel-add:hover { --ui-tab-fill: var(--sidebar-hover); background: transparent; color: var(--ink); }
.feed-page:not(.people-feed) .custom-channel-add:focus-visible { outline: 0; }
.feed-page:not(.people-feed) .custom-channel-add:focus-visible::before { outline: 2px solid var(--ink); outline-offset: -3px; }
.feed-page:not(.people-feed) .custom-channel-add .lucide { width: 18px; height: 18px; }

.ui-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 5px 12px; border: 1px solid var(--line-strong); border-radius: var(--ui-radius-pill); background: transparent; color: var(--secondary); font: inherit; font-size: calc(var(--ui-text-caption) + 1px); line-height: 1.5; cursor: pointer; }
.ui-chip:hover { background: var(--raised); color: var(--ink); }
.ui-chip[aria-pressed="true"] { border-color: var(--ink); background: var(--raised); color: var(--ink); }
.ui-chip svg { width: 14px; height: 14px; }
.ui-chip .ui-chip-check { visibility: hidden; }
.ui-chip[aria-pressed="true"] .ui-chip-check { visibility: visible; }
.ui-badge { display: inline-flex; align-items: center; gap: 5px; padding: 3px 9px; border-radius: var(--ui-radius-pill); background: var(--raised); color: var(--secondary); font-size: var(--ui-text-caption); font-weight: 500; line-height: 1.5; }
.ui-badge--success { background: var(--success-bg); color: var(--success-ink); }
.ui-badge--warning { background: var(--warning-bg); color: var(--warning-ink); }
.ui-badge--danger { background: var(--danger-bg); color: var(--danger-ink); }
.ui-badge svg { width: 13px; height: 13px; }

.ui-field { display: grid; gap: 8px; min-width: 0; }
.ui-field label { font-size: var(--ui-text-control); font-weight: 550; }
.ui-field .ui-input, .ui-input { width: 100%; min-width: 0; min-height: var(--ui-control-lg); margin: 0; padding: 10px 14px; border: 1px solid var(--control-border); border-radius: var(--ui-radius-control); background: var(--paper); color: var(--ink); font: inherit; font-size: var(--ui-text-control); line-height: 1.5; }
.ui-input::placeholder { color: var(--muted); opacity: 1; }
.ui-input:hover { border-color: var(--secondary); }
.ui-input[aria-invalid="true"] { border-color: var(--danger-ink); }
.ui-input:disabled { background: var(--raised); color: var(--muted); cursor: not-allowed; }
.ui-field-help { margin: 0; color: var(--muted); font-size: var(--ui-text-caption); line-height: 1.6; }
.ui-field-error { color: var(--danger-ink); }
.ui-check { display: flex; align-items: center; gap: 10px; min-height: 44px; font-size: var(--ui-text-control); font-weight: 400; cursor: pointer; }
.ui-check input[type="checkbox"] { width: 18px; height: 18px; margin: 0; accent-color: var(--ink); }
/* Named legacy fields consume control shape without changing checkbox/radio geometry. */
:is(.reader-login-modal, .channel-builder-form) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), textarea, select) { border-radius: var(--ui-radius-control); }
.search-box { border-radius: var(--ui-radius-pill); }
.search-box:focus-within { outline: 2px solid var(--ink); outline-offset: 2px; }
.search-box input:focus-visible { outline: none; }

.ui-card { padding: 24px; border: 1px solid var(--line); border-radius: var(--ui-radius-panel); background: var(--paper); }
.ui-notice { display: flex; align-items: flex-start; gap: 10px; padding: 12px 16px; border-radius: var(--ui-radius-control); background: var(--raised); color: var(--secondary); font-size: var(--ui-text-control); line-height: 1.6; }
.ui-notice--success { background: var(--success-bg); color: var(--success-ink); }
.ui-notice--danger { background: var(--danger-bg); color: var(--danger-ink); }
.ui-notice > svg { width: 18px; height: 18px; flex-shrink: 0; margin-top: 2px; }
.ui-menu { position: relative; width: fit-content; margin: 0; }
.ui-menu > summary { list-style: none; }
.ui-menu > summary::-webkit-details-marker { display: none; }
.ui-menu-content { position: absolute; z-index: 20; inset-inline-start: 0; top: calc(100% + 8px); display: grid; width: 224px; max-width: calc(100vw - 48px); padding: 6px; border: 1px solid var(--line-strong); border-radius: var(--ui-radius-panel); background: var(--paper); box-shadow: var(--shadow); }
.ui-menu-item { display: flex; align-items: center; gap: 10px; min-height: 40px; padding: 8px 12px; border: 0; border-radius: var(--ui-radius-sm); color: var(--ink); background: transparent; font-size: var(--ui-text-control); text-align: start; cursor: pointer; }
.ui-menu-item:hover { background: var(--raised); }
.ui-menu-item svg { width: 18px; height: 18px; }
.ui-dialog { width: min(480px, calc(100% - 32px)); max-height: calc(100dvh - 32px); padding: 24px; border: 1px solid var(--line); border-radius: var(--ui-radius-panel); background: var(--paper); color: var(--ink); box-shadow: var(--shadow); overflow-y: auto; }
body:has(.ui-dialog[open]) { overflow: hidden; }
.ui-dialog::backdrop { background: var(--overlay); }
.ui-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 12px; }
.ui-dialog-header h2 { font-size: var(--ui-text-title); }
.ui-dialog-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin-top: 24px; }

@media (max-width: 820px), (pointer: coarse) {
  :root { --ui-tab-hit-height: 44px; }
  .source-tabs { padding-block: 0; }
  .source-tabs a { min-width: 44px; }
  :is(.public-body, .admin-body) .sidebar .nav-item,
  .admin-body .admin-sidebar .admin-nav-items .nav-item,
  .admin-body .admin-nav-group > summary { min-height: 44px; }
  :is(.ui-button, .button, .ui-tab, .ui-chip, .ui-menu-item) { min-height: 44px; }
  .ui-button--icon, .ui-button--icon.ui-button--sm { width: 44px; min-width: 44px; }
  :is(.channel-tag-modes, .channel-create-dialog .channel-tag-modes) button { min-height: 44px; }
  .ui-input, .ui-field .ui-input { font-size: var(--ui-text-body); }
}
@media (prefers-reduced-motion: reduce) {
  :is(.ui-button, .button, .ui-tab, .ui-chip) { transition: none; }
  .ui-spinner { animation: none; }
}
@media (forced-colors: active) {
  .ui-tab[aria-selected="true"], .ui-chip[aria-pressed="true"], .source-tabs a.active { outline: 2px solid Highlight; outline-offset: -3px; }
  :is(.ui-button, .button):disabled { opacity: 1; color: GrayText; border-color: GrayText; }
}

/* Brand: an editorial serif for page-level headings only; cards, body and controls stay sans.
   One accent marks links and the selected badge; current tabs keep the ink color. */
.public-body main h1, .timeline-date-desktop, .m-daybar-main { font-family: var(--ui-font-display); font-weight: var(--ui-weight-medium); letter-spacing: normal; }
.public-body main h1 .translation-badge { font-family: var(--ui-font-sans); }
:is(.info-paper, .dt-reading-copy) a { color: var(--link); text-decoration: underline; text-underline-offset: 2px; }
:is(.timeline-selected-badge, .dt-selected-badge) { background: var(--highlight-bg); color: var(--highlight-ink); }
