/* 공지 배너(spec_backoffice R14) — 허브 콘텐츠 최상단 인라인 스트립. 뜨는 위치는 announcementBanner.js 가
 * .shell-main 의 첫 자식으로 심는다 — 홈·피드·프로젝트 개요 등 모든 허브 화면 위에 자연스럽게 얹힌다.
 * "떠 있는 전역 UI 금지" 규칙(작업 화면)은 아래 세 선택자가 지운다 — 지식 관리(#knowledgeView)·
 * Finder(#plansView)·프로젝트 셸(body.pshell-open) 안에서는 항상 숨긴다. 결제 배너(.billing-blocked-banner,
 * admin-billing.css)와 달리 이건 콘텐츠 흐름 안(position:fixed 아님)이라 리퀴드 글라스 오버레이 토큰을 쓰지 않는다.
 */
body.shell-v2 .announce-strip {
  max-width: 1200px;
  margin: 0 auto;
  padding: var(--sp-md) var(--page-gutter, var(--sp-lg)) 0;
  display: flex;
  flex-direction: column;
  gap: var(--sp-xs);
}
body.shell-v2 .announce-strip[hidden] { display: none; }

body.shell-v2 .announce-row {
  display: flex;
  align-items: flex-start;
  gap: var(--sp-sm);
  padding: var(--sp-sm) var(--sp-md);
  border-radius: var(--r-lg);
  border: 1px solid var(--hairline);
  background: var(--surface-1);
}
body.shell-v2 .announce-row--info { border-color: var(--accent); }
body.shell-v2 .announce-row--info .announce-icon { color: var(--accent); }
body.shell-v2 .announce-row--warning { border-color: var(--ann-warning); }
body.shell-v2 .announce-row--warning .announce-icon { color: var(--ann-warning); }
body.shell-v2 .announce-row--maintenance { border-color: var(--divider-soft); }
body.shell-v2 .announce-row--maintenance .announce-icon { color: var(--ink-48); }

body.shell-v2 .announce-icon { flex: none; margin-top: 2px; }
body.shell-v2 .announce-text { display: flex; flex-direction: column; gap: 2px; flex: 1 1 auto; min-width: 0; }
body.shell-v2 .announce-title { font-size: var(--fs-caption); font-weight: 600; color: var(--ink); }
body.shell-v2 .announce-body { font-size: var(--fs-fine); color: var(--ink-80); line-height: var(--lh-body); }
body.shell-v2 .announce-close { flex: none; margin-left: auto; }

body.shell-v2 { --ann-warning: #e0a530; } /* 제품 토큰에 경고색이 없어 이 파일 안에서만 정의(tokens.css 비수정) */

body.shell-v2:has(#knowledgeView:not([hidden])) .announce-strip,
body.shell-v2:has(#plansView:not([hidden])) .announce-strip,
body.shell-v2.pshell-open .announce-strip {
  display: none;
}

@media (max-width: 810px) {
  body.shell-v2 .announce-strip { padding: var(--sp-sm) var(--sp-md) 0; }
  body.shell-v2 .announce-close { min-width: 44px; min-height: 44px; }
}
