:root {
  color-scheme: light;
  font-family: "Noto Sans KR", "Malgun Gothic", system-ui, sans-serif;
  color: #1b2825;
  background: #f3f4ef;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  --ink: #1b2825;
  --muted: #58665f;
  --line: #d9dfda;
  --paper: #fbfcf8;
  --green: #18775b;
  --green-soft: #e2f0e9;
  --amber: #956412;
  --amber-soft: #f6edda;
  --red: #a13e37;
}

* { box-sizing: border-box; }
html, body { width: 100%; height: 100%; }
body { height: 100vh; height: 100dvh; margin: 0; min-width: 320px; display: flex; flex-direction: column; overflow: hidden; }
button, select { font: inherit; }
button:focus-visible, select:focus-visible, a:focus-visible { outline: 3px solid #6ba88e; outline-offset: 3px; }
a { color: inherit; }

.site-header {
  min-height: 62px; flex: 0 0 auto; padding: 0; background: var(--paper); border-bottom: 1px solid var(--line);
}
.site-header-inner { width: min(1200px, 100%); min-width: 0; min-height: inherit; margin: 0 auto; padding: 0 clamp(16px, 4vw, 54px); display: grid; grid-template-columns: max-content minmax(0, 1fr) max-content; grid-template-areas: "brand ticker actions"; align-items: center; gap: clamp(10px, 1.4vw, 20px); }
.brand-topic-group { grid-area: brand; min-width: 0; display: flex; align-items: center; gap: clamp(12px, 1.8vw, 22px); }
.brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; font-size: 19px; letter-spacing: -.055em; font-weight: 760; }
.window-actions { grid-area: actions; min-width: 0; display: flex; align-items: center; gap: 6px; }
.window-action-button { min-height: 32px; display: inline-flex; align-items: center; justify-content: center; gap: 5px; padding: 5px 8px; border: 1px solid #cbd8cf; border-radius: 7px; background: var(--paper); color: #315b48; font-size: 11px; font-weight: 680; white-space: nowrap; cursor: pointer; }
.window-action-button:hover { background: var(--green-soft); }
.window-action-button svg { width: 14px; height: 14px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.window-action-secondary { color: #53645a; background: transparent; }
.window-action-button:disabled { opacity: .6; cursor: default; }
.window-action-button[hidden] { display: none; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.compact-app-view .window-actions, .popup-view .window-actions, .standalone-view .window-actions { display: none; }
.brand b { color: var(--green); }
.brand-mark { width: 25px; height: 25px; display: flex; align-items: end; gap: 3px; padding: 4px; border-radius: 8px; background: var(--green); }
.brand-mark i { flex: 1; display: block; border-radius: 2px 2px 1px 1px; background: #e4f2e9; }
.brand-mark i:nth-child(1) { height: 8px; }.brand-mark i:nth-child(2) { height: 13px; }.brand-mark i:nth-child(3) { height: 17px; }
.index-strip { grid-area: ticker; width: 100%; min-width: 0; min-height: 38px; flex: 0 1 auto; margin: 0; padding: 0; display: flex; align-items: center; justify-content: center; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; }
.index-strip::-webkit-scrollbar { display: none; }
.index-strip[hidden] { display: none; }
.index-track { width: max-content; min-width: 100%; display: flex; justify-content: center; }
.index-group { flex: 0 0 auto; display: flex; align-items: center; justify-content: center; gap: clamp(12px, 2.2vw, 30px); }
.index-group-copy { display: none; }
.index-quote { flex: 0 0 auto; display: inline-flex; align-items: baseline; gap: 4px; color: #35433d; font-size: 11px; font-weight: 650; white-space: nowrap; }
.index-strip span { margin-left: 0; color: #626e67; font-size: 11px; font-weight: 550; }
.index-strip .index-value { color: #35433d; font-variant-numeric: tabular-nums; }
.index-strip .index-change { font-variant-numeric: tabular-nums; }
.index-strip .index-change-up { color: #167254; }
.index-strip .index-change-down { color: #ad4139; }
.index-strip [hidden] { display: none; }
.index-strip .index-age { color: #766746; font-size: 9px; font-weight: 600; }
.index-quote.index-stale .index-value, .index-quote.index-stale .index-change { color: #6e695c; }
.icon-button { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; background: transparent; color: var(--ink); cursor: pointer; }
.icon-button:hover { background: #edf1ec; }.icon-button:disabled { opacity: .55; cursor: wait; }
.icon-button svg { width: 17px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }

.page-shell { width: min(1200px, 100%); flex: 1 1 auto; min-height: 0; margin: 0 auto; padding: 18px clamp(16px, 4vw, 54px) 20px; display: flex; flex-direction: column; }
.panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.panel-heading h2 { margin: 0; font-size: 19px; letter-spacing: -.04em; }
.panel-heading p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.compact-visually-hidden { position: static; width: auto; height: auto; padding: 0; margin: 0; overflow: visible; clip: auto; white-space: normal; border: 0; }
.summary-panel-heading { align-items: center; min-width: 0; gap: 10px; }
.summary-heading-main { min-width: 0; flex: 1 1 auto; display: flex; align-items: center; gap: 10px; }
.summary-heading-main h2 { flex: 0 0 auto; }
.summary-refresh-button { flex: 0 0 34px; }
.summary-refresh-button:disabled { cursor: wait; }

.mobile-top-tabs { display: none; }
.mobile-tabs { display: none; }
.topic-tabs { display: flex; gap: 6px; margin: 0 0 10px; }
.topic-tabs-header { flex: 0 0 auto; margin: 0; gap: 4px; }
.topic-tabs-header button { min-height: 32px; padding: 4px 11px; font-size: 11px; }
.page-shell .topic-tabs { display: none; }
.topic-tabs button { min-height: 34px; padding: 5px 14px; border: 1px solid #d8dfda; border-radius: 999px; background: #f2f4f1; color: #58665f; font-size: 12px; font-weight: 650; cursor: pointer; }
.topic-tabs button[aria-selected="true"] { border-color: #176446; background: var(--green-soft); color: #176446; font-weight: 750; }
.content-layout { flex: 1 1 auto; min-height: 0; display: grid; grid-template-columns: minmax(0, 1.86fr) minmax(290px, 1fr); gap: clamp(18px, 2.5vw, 30px); padding-top: 15px; overflow: hidden; }
.main-panel, .posts-panel { min-width: 0; min-height: 0; height: 100%; display: flex; flex-direction: column; overflow: hidden; }
.panel-heading { flex: 0 0 auto; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.panel-heading h2 { font-size: 18px; }
.history-control { min-width: 0; flex: 1 1 auto; display: flex; align-items: center; }
.history-control[hidden] { display: none; }.history-control select { width: 100%; min-width: 0; max-width: 270px; flex: 1 1 auto; border: 1px solid var(--line); border-radius: 7px; padding: 5px 23px 5px 8px; background: var(--paper); color: var(--ink); font-size: 12px; }
.scroll-frame { position: relative; flex: 1 1 auto; min-height: 0; overflow: hidden; }
.summary-list, .post-list { scrollbar-width: none; -ms-overflow-style: none; }
.summary-list::-webkit-scrollbar, .post-list::-webkit-scrollbar { display: none; }
.summary-list:focus-visible, .post-list:focus-visible { outline: 2px solid #6ba88e; outline-offset: -2px; }
.scroll-indicator { position: absolute; z-index: 2; right: 2px; width: 3px; height: min(28px, 100%); border-radius: 3px; background: #71867a; opacity: .22; pointer-events: none; transition: opacity 130ms ease-out; }
#summary-scroll-indicator { top: 0; }
#post-scroll-indicator { top: 0; }
.scroll-indicator[hidden] { display: none; }
.scroll-frame:hover .scroll-indicator, .scroll-frame:focus-within .scroll-indicator, .scroll-frame[data-scrolling="true"] .scroll-indicator { opacity: .72; }
.summary-list { width: 100%; height: 100%; min-height: 0; padding-right: 8px; overflow-y: auto; overscroll-behavior: contain; }
.topic-section { padding: 0 0 3px; }.topic-section + .topic-section { margin-top: 14px; border-top: 1px solid #c7d1ca; }
.topic-heading { margin: 0 0 3px; color: var(--green); font-size: 12px; font-weight: 740; letter-spacing: .02em; }
.briefing { padding: 15px 0 17px; border-bottom: 1px solid #e0e5e1; }.briefing:last-child { border-bottom: 0; }
.briefing-title { display: flex; align-items: center; gap: 8px; margin: 0 0 9px; font-size: 13px; font-weight: 700; }
.board-mark { display: inline-grid; place-items: center; width: 23px; height: 23px; flex: 0 0 23px; overflow: hidden; border-radius: 7px; background: #fff; color: #315d4d; font-size: 9px; font-weight: 800; }
.board-mark-small { width: 17px; height: 17px; flex-basis: 17px; border-radius: 4px; }
.board-mark-text { background: #eef2ef; color: #30483b; }
.board-mark-text .board-logo-fallback { font-size: 8px; }
.board-logo { display: block; width: 100%; height: 100%; object-fit: contain; }
.board-logo-fallback { display: block; max-width: 100%; padding: 0 2px; font-size: 7px; line-height: 1; text-align: center; overflow-wrap: anywhere; }
.board-mark-failed { width: auto; max-width: 110px; min-height: 17px; flex: 0 1 auto; padding: 2px 4px; border: 1px solid var(--line); }
.board-mark-failed .board-logo-fallback { max-width: 100%; padding: 0; font-size: 9px; line-height: 1.2; }
.briefing-meta { color: var(--muted); font-size: 12px; font-weight: 450; }
.briefing-body { margin: 0; color: #33413b; font-size: 13px; line-height: 1.78; overflow-wrap: anywhere; }
.empty-state { margin: 0; padding: 22px 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.loading-line { color: var(--muted); font-size: 12px; line-height: 1.6; }

.posts-controls { flex: 0 0 auto; min-width: 0; }
.posts-heading { margin-bottom: 0; padding-right: 8px; align-items: center; }
.post-filters { flex: 0 0 auto; display: flex; flex-wrap: wrap; gap: 5px; padding: 9px 0 8px; }
.filter-button { min-height: 32px; padding: 5px 8px; border: 1px solid #d8dfda; border-radius: 99px; background: #f2f4f1; color: #58665f; font-size: 11px; line-height: 1.2; cursor: pointer; }
.filter-button { display: inline-flex; align-items: center; gap: 6px; }
.filter-button.filter-icon-only { width: 32px; min-width: 32px; height: 32px; justify-content: center; padding: 4px; }
.filter-button[aria-pressed="true"] { border: 2px solid #176446; padding: 4px 7px; background: var(--green-soft); color: #176446; font-weight: 750; }
.filter-button-group { min-height: 32px; display: inline-flex; align-items: center; gap: 3px; padding: 2px 3px; border: 1px solid #d8dfda; border-radius: 99px; background: #f2f4f1; }
.filter-button-group > .board-mark { width: 17px; height: 17px; flex-basis: 17px; margin: 0 1px; border-radius: 4px; }
.filter-button-group .filter-button { min-height: 26px; padding: 3px 7px; border: 2px solid transparent; background: transparent; }
.filter-button-group .filter-button[aria-pressed="false"] { box-shadow: inset 0 0 0 1px #d8dfda; }
.filter-button-group .filter-button[aria-pressed="true"] { padding: 3px 7px; border-color: #176446; background: var(--green-soft); color: #176446; }
.filter-button.filter-icon-only[aria-pressed="true"] { padding: 4px; }
.filter-button.filter-icon-only .board-mark-failed { width: 20px; min-height: 17px; max-width: 20px; flex: 0 0 20px; padding: 0; border: 0; }
.filter-button.filter-icon-only .board-mark-failed .board-logo-fallback { max-width: 20px; padding: 0; overflow: hidden; font-size: 7px; letter-spacing: -.08em; white-space: nowrap; }
.post-list { width: 100%; height: 100%; min-height: 0; margin: 0; padding: 0 8px 0 0; overflow-y: auto; overscroll-behavior: contain; list-style: none; }
.post-item { min-width: 0; min-height: 38px; display: grid; grid-template-columns: max-content minmax(0, 1fr) auto; align-items: center; column-gap: 7px; padding: 0; border-bottom: 1px solid #e0e5e1; }
.post-source-group { grid-column: 1; min-width: 0; display: inline-flex; align-items: center; justify-content: flex-start; gap: 3px; }
.post-source { color: #48675a; font-weight: 700; }
.post-source-arca { display: inline-grid; place-items: center; width: 22px; font-size: 9px; line-height: 1; letter-spacing: -.08em; white-space: nowrap; }
.post-source-qualifier { color: #52625a; font-size: 9px; font-weight: 650; white-space: nowrap; }
.post-time { grid-column: 3; color: var(--muted); font-size: 11px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.post-title { grid-column: 2; justify-self: start; align-self: center; width: fit-content; max-width: 100%; min-width: 0; display: inline-flex; align-items: center; gap: 5px; overflow: hidden; white-space: nowrap; font-size: 12px; line-height: 1.4; text-decoration: none; }
.post-title-text { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.new-post-badge { flex: 0 0 auto; padding: 1px 4px; border-radius: 4px; background: #d8eadf; color: #226347; font-size: 8px; font-weight: 750; letter-spacing: .04em; line-height: 1.35; }
.post-title:hover { color: var(--green); text-decoration: underline; text-underline-offset: 2px; }
.inline-error { margin: 9px 0; color: var(--red); font-size: 12px; line-height: 1.5; }.inline-error[hidden] { display: none; }
.inline-note { margin: 9px 0; color: var(--muted); font-size: 12px; line-height: 1.5; }.inline-note[hidden] { display: none; }
.service-status-bar { flex: 0 0 auto; min-height: calc(28px + env(safe-area-inset-bottom, 0px)); display: grid; grid-template-columns: minmax(0, 1fr) max-content; align-items: center; gap: 8px; padding: 4px max(16px, calc((100vw - min(1200px, 100vw)) / 2 + clamp(16px, 4vw, 54px))) calc(4px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid #e1e5e1; background: #f0f2ee; color: #5d6862; font-size: 11px; line-height: 1.3; overflow-wrap: anywhere; }
.service-status-bar[data-kind="warn"] { color: #725b2b; }
.service-status-bar[data-kind="error"] { color: #8d403a; }
.service-status-bar[data-kind="good"] { color: #315f4d; }
#service-status-text { min-width: 0; overflow-wrap: anywhere; }
.status-action-link { margin-left: 8px; color: #176446; text-underline-offset: 2px; white-space: nowrap; }
.takedown-contact { justify-self: end; color: #52625a; text-underline-offset: 2px; white-space: nowrap; }

@media (max-width: 900px) {
  .page-shell { padding-top: 14px; }
  .content-layout { grid-template-columns: minmax(0, 1.55fr) minmax(265px, 1fr); gap: 18px; }
  .site-header-inner { gap: 10px; }
  .brand-topic-group { gap: 10px; }
  .index-group { gap: 10px; }
}
@media (max-width: 680px) {
  .site-header, .site-header-inner { display: contents; }
  .brand-topic-group, .window-actions { display: none; }
  .index-strip { min-height: 35px; justify-content: flex-start; padding: 5px 16px 7px; touch-action: pan-x; scroll-behavior: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 16px; background: var(--paper); border-bottom: 1px solid var(--line); }
  .index-track { width: max-content; min-width: max-content; justify-content: flex-start; }
  .index-group { justify-content: flex-start; gap: 15px; padding-right: 24px; }
  .index-group-copy { display: flex; }
  #index-strip.ticker-animated .index-track { animation: index-ticker-travel 24s linear infinite; }
  #index-strip.ticker-animated.ticker-paused .index-track { animation-play-state: paused; }
  .index-quote { scroll-snap-align: center; }
  .index-strip a { font-size: 11px; }.index-strip span { font-size: 11px; }
  .page-shell { padding: 8px 16px 12px; }
  .mobile-top-tabs { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-width: 0; margin-bottom: 5px; }
  .page-shell .mobile-top-tabs .topic-tabs { display: flex; flex: 0 0 auto; gap: 4px; min-width: 0; margin: 0; }
  .mobile-top-tabs .topic-tabs button { white-space: nowrap; }
  .mobile-top-tabs .mobile-tabs { width: 160px; flex: 0 0 160px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; margin: 0; padding: 0; border-radius: 11px; background: #e7ebe6; }
  .mobile-tabs button { width: 100%; min-width: 0; min-height: 36px; padding: 3px 7px; border: 0; border-radius: 7px; background: transparent; color: var(--muted); font-size: 11px; font-weight: 650; white-space: nowrap; cursor: pointer; }
  .mobile-tabs button[aria-selected="true"] { background: var(--paper); color: var(--ink); box-shadow: 0 1px 3px #253a3017; }
  .content-layout { position: relative; display: block; padding-top: 0; }
  .main-panel, .posts-panel { position: absolute; inset: 0; display: none; padding-top: 13px; }
  .content-layout[data-active="summary"] .main-panel, .content-layout[data-active="posts"] .posts-panel { display: flex; }
  .panel-heading { gap: 8px; padding-bottom: 9px; }.panel-heading h2 { font-size: 16px; }.panel-heading p { font-size: 11px; }
  .summary-panel-heading { gap: 7px; }
  .summary-panel-title, .posts-panel-title { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
  .summary-heading-main { min-width: 0; gap: 8px; flex: 1 1 auto; }
  .history-control { min-width: 0; flex: 1 1 auto; }
  .history-control select { width: 100%; max-width: none; min-height: 34px; padding: 5px 22px 5px 7px; font-size: 11px; }
  .summary-refresh-button { flex-basis: 34px; width: 34px; height: 34px; padding: 0; }
  .briefing { padding: 13px 0 15px; }.briefing-body { font-size: 12px; line-height: 1.75; }
  .posts-controls { display: grid; grid-template-columns: minmax(0, 1fr) 34px; grid-template-areas: "filters reload"; column-gap: 8px; align-items: start; padding-bottom: 9px; border-bottom: 1px solid var(--line); }
  .posts-heading { display: contents; margin: 0; padding: 0; border: 0; }
  .posts-heading #reload-button { grid-area: reload; grid-row: 1; justify-self: end; }
  .post-filters { grid-area: filters; min-width: 0; align-content: flex-start; padding: 0; }
  .post-item { min-height: 44px; column-gap: 6px; }
  .post-time { font-size: 10px; }
  .service-status-bar { grid-template-columns: minmax(0, 1fr) max-content; gap: 3px 8px; padding-left: 16px; padding-right: 16px; }
}
@media (max-width: 360px) {
  .index-strip { padding-right: 12px; padding-left: 12px; }
  .page-shell { padding-right: 12px; padding-left: 12px; }
  .mobile-top-tabs { gap: 5px; }
  .page-shell .mobile-top-tabs .topic-tabs { gap: 3px; }
  .mobile-top-tabs .topic-tabs button { min-height: 32px; padding: 4px 9px; font-size: 11px; }
  .mobile-top-tabs .mobile-tabs { width: 160px; flex-basis: 160px; }
  .mobile-tabs button { min-height: 32px; padding: 2px 4px; font-size: 10px; }
  .service-status-bar { padding-left: 12px; padding-right: 12px; }
  .summary-panel-heading { gap: 5px; }
  .summary-heading-main { gap: 5px; }
  .panel-heading h2 { font-size: 15px; }
  .summary-refresh-button { flex-basis: 34px; width: 34px; height: 34px; padding: 0; }
  .history-control select { padding-right: 20px; padding-left: 6px; font-size: 11px; }
}

/* Installed apps and explicit popup URLs use the existing mobile tab-and-panel interaction. */
.compact-app-view .site-header, .compact-app-view .site-header-inner { display: contents; }
.compact-app-view { min-width: 0; }
.compact-app-view .brand-topic-group, .compact-app-view .window-actions { display: none; }
.compact-app-view .topic-tabs-header { display: none; }
.compact-app-view .mobile-top-tabs { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-width: 0; margin-bottom: 3px; }
.compact-app-view .mobile-top-tabs .topic-tabs { display: flex; flex: 0 0 auto; gap: 4px; min-width: 0; margin: 0; }
.compact-app-view .mobile-top-tabs .topic-tabs button { white-space: nowrap; }
.compact-app-view .index-strip { min-height: 35px; justify-content: flex-start; padding: 5px 14px 7px; gap: 0; overflow-x: auto; overscroll-behavior-x: contain; touch-action: pan-x; scroll-behavior: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 20px; background: var(--paper); border-bottom: 1px solid var(--line); }
.compact-app-view .index-track { width: max-content; min-width: max-content; justify-content: flex-start; }
.compact-app-view .index-group { justify-content: flex-start; gap: 15px; padding-right: 24px; }
.compact-app-view .index-group-copy { display: flex; }
.compact-app-view .index-quote { scroll-snap-align: center; }
#index-strip.ticker-animated .index-track { animation: index-ticker-travel 24s linear infinite; }
#index-strip.ticker-animated.ticker-paused .index-track { animation-play-state: paused; }
.compact-app-view .page-shell { width: 100%; padding: 8px 14px 12px; }
.compact-app-view .service-status-bar { padding-left: 14px; padding-right: 14px; }
.compact-app-view .mobile-top-tabs .mobile-tabs { width: 160px; flex: 0 0 160px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; margin: 0; padding: 0; border-radius: 9px; background: #e7ebe6; }
.compact-app-view .mobile-tabs button { width: 100%; min-width: 0; min-height: 32px; padding: 2px 6px; border: 0; border-radius: 7px; background: transparent; color: var(--muted); font-size: 11px; font-weight: 650; white-space: nowrap; cursor: pointer; }
.compact-app-view .mobile-tabs button[aria-selected="true"] { background: var(--paper); color: var(--ink); box-shadow: 0 1px 3px #253a3017; }
.compact-app-view .content-layout { position: relative; display: block; padding-top: 0; }
.compact-app-view .main-panel, .compact-app-view .posts-panel { position: absolute; inset: 0; display: none; padding-top: 13px; }
.compact-app-view .content-layout[data-active="summary"] .main-panel, .compact-app-view .content-layout[data-active="posts"] .posts-panel { display: flex; }
.compact-app-view .panel-heading { gap: 8px; padding-bottom: 9px; }
.compact-app-view .panel-heading h2 { font-size: 16px; }
.compact-app-view .summary-panel-heading { gap: 7px; }
.compact-app-view .summary-panel-title, .compact-app-view .posts-panel-title { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.compact-app-view .summary-heading-main { min-width: 0; gap: 8px; flex: 1 1 auto; }
.compact-app-view .history-control { min-width: 0; flex: 1 1 auto; }
.compact-app-view .history-control select { width: 100%; max-width: none; min-height: 34px; padding: 5px 22px 5px 7px; font-size: 11px; }
.compact-app-view .summary-refresh-button { flex-basis: 34px; width: 34px; height: 34px; padding: 0; }
.compact-app-view .briefing { padding: 13px 0 15px; }
.compact-app-view .briefing-body { font-size: 12px; line-height: 1.75; }
.compact-app-view .posts-controls { display: grid; grid-template-columns: minmax(0, 1fr) 34px; grid-template-areas: "filters reload"; column-gap: 8px; align-items: start; padding-bottom: 9px; border-bottom: 1px solid var(--line); }
.compact-app-view .posts-heading { display: contents; margin: 0; padding: 0; border: 0; }
.compact-app-view .posts-heading #reload-button { grid-area: reload; grid-row: 1; justify-self: end; }
.compact-app-view .post-filters { grid-area: filters; min-width: 0; align-content: flex-start; padding: 0; }
.compact-app-view .post-item { min-height: 44px; column-gap: 6px; }
.compact-app-view .post-time { font-size: 10px; }
@media (max-width: 360px) {
  .compact-app-view .index-strip { padding-right: 12px; padding-left: 12px; }
  .compact-app-view .page-shell { padding-right: 12px; padding-left: 12px; }
  .compact-app-view .mobile-top-tabs { gap: 5px; }
  .compact-app-view .mobile-top-tabs .topic-tabs { gap: 3px; }
  .compact-app-view .mobile-top-tabs .topic-tabs button { min-height: 32px; padding: 4px 9px; font-size: 11px; }
  .compact-app-view .mobile-top-tabs .mobile-tabs { width: 160px; flex-basis: 160px; }
  .compact-app-view .mobile-tabs button { padding: 2px 4px; font-size: 10px; }
  .compact-app-view .service-status-bar { padding-left: 12px; padding-right: 12px; }
  .compact-app-view .summary-panel-heading { gap: 5px; }
  .compact-app-view .summary-heading-main { gap: 5px; }
  .compact-app-view .panel-heading h2 { font-size: 15px; }
  .compact-app-view .summary-refresh-button { flex-basis: 34px; width: 34px; height: 34px; padding: 0; }
  .compact-app-view .history-control select { padding-right: 20px; padding-left: 6px; font-size: 11px; }
}
@media (max-height: 600px) {
  .page-shell { padding-top: 6px; padding-bottom: 6px; }
  .content-layout { padding-top: 8px; }
  .mobile-top-tabs .mobile-tabs { margin-top: 0; }
  .site-header { min-height: 0; }
  .site-header-inner { min-height: inherit; }
  .index-strip .index-group { gap: 10px; }
  .panel-heading { padding-bottom: 7px; }
  .post-filters { padding-top: 4px; padding-bottom: 4px; }
}
@media (prefers-reduced-motion: no-preference) { .icon-button svg { transition: transform .25s ease; }.icon-button:hover svg { transform: rotate(35deg); } }
@keyframes index-ticker-travel { to { transform: translate3d(-50%, 0, 0); } }
@media (prefers-reduced-motion: reduce) {
  #index-strip.ticker-animated .index-track { animation: none; transform: none; }
  #index-strip.ticker-animated { scroll-snap-type: x mandatory; }
}
