/* Bviser components. Uses logical properties throughout so dir="rtl" mirrors the layout. */
.bv-app, .bv-app * { box-sizing: border-box; }
.bv-app { font-family: var(--font-sans); color: var(--ink); background: var(--chrome-800); -webkit-font-smoothing: antialiased; }
.bv-app[lang="ar"] { font-family: var(--font-arabic); }
.bv-app button { font: inherit; }
.bv-icon { flex: none; display: block; }

/* ---------- Top bar ---------- */
.bv-topbar { height: var(--topbar-height); background: var(--chrome-800); border-block-end: 1px solid var(--chrome-600); display: flex; align-items: center; gap: var(--space-4); padding-inline: var(--space-6); color: var(--chrome-ink); }
.bv-topbar__end { margin-inline-start: auto; display: flex; align-items: center; gap: var(--space-4); }
.bv-logo { display: block; height: 32px; width: auto; }
.bv-iconbtn { background: none; border: 0; color: var(--chrome-ink); padding: 6px; border-radius: var(--radius-md); cursor: pointer; display: grid; place-items: center; }
.bv-iconbtn:hover { background: var(--chrome-700); }
.bv-iconbtn:focus-visible, .bv-nav-item:focus-visible, .bv-create:focus-visible { outline: 2px solid var(--blue-200); outline-offset: 2px; }

/* ---------- Side navigation (collapsed rail by default; .is-expanded on .bv-app shows labels) ---------- */
.bv-sidebar { background: var(--chrome-800); color: var(--chrome-ink); inline-size: var(--rail-width); padding-block: var(--space-6); display: flex; flex-direction: column; align-items: center; transition: inline-size .18s ease; position: relative; z-index: 15; }
.bv-label { white-space: nowrap; }
.bv-sidebar .bv-label { display: none; }
.bv-create { inline-size: 40px; block-size: 40px; border-radius: var(--radius-pill); border: 0; background: none; padding: 0; display: flex; align-items: center; justify-content: center; gap: var(--space-2); color: var(--chrome-ink); cursor: pointer; }
.bv-create__disc { inline-size: 32px; block-size: 32px; border-radius: var(--radius-pill); background: var(--blue-500); color: #fff; display: grid; place-items: center; flex: none; }
.bv-nav-group { inline-size: 100%; display: flex; flex-direction: column; align-items: center; gap: var(--space-1); padding-block: var(--space-3); }
.bv-nav-group--divided { border-block-start: 1px solid var(--chrome-600); }
.bv-nav-item { inline-size: 48px; block-size: 40px; display: flex; align-items: center; justify-content: center; gap: var(--space-3); border-radius: var(--radius-md); color: var(--chrome-ink); text-decoration: none; font-size: 15px; line-height: 22px; font-weight: 500; }
.bv-nav-item:hover { background: var(--chrome-700); }
.bv-nav-item.is-active { background: var(--chrome-700); box-shadow: inset 0 0 0 1px var(--chrome-600); }
.bv-nav-group__label { font-size: 13px; line-height: 18px; color: var(--chrome-ink-muted); padding-inline: var(--space-4); padding-block: var(--space-1) var(--space-2); align-self: stretch; }

.is-expanded .bv-sidebar { inline-size: var(--sidebar-width); align-items: stretch; padding-inline: var(--space-4); }
.is-expanded .bv-sidebar .bv-label { display: inline; }
.is-expanded .bv-nav-group__label { display: block; padding-inline: var(--space-3); }
.is-expanded .bv-create { inline-size: auto; block-size: 44px; padding-inline: 6px var(--space-6); background: var(--chrome-700); border: 1px solid var(--chrome-ink-muted); justify-content: flex-start; gap: var(--space-3); font-size: 15px; }
.is-expanded .bv-nav-group { align-items: stretch; inline-size: auto; }
.is-expanded .bv-nav-group--divided { margin-inline: calc(var(--space-4) * -1); padding-inline: var(--space-4); }
.is-expanded .bv-nav-item { inline-size: auto; justify-content: flex-start; padding-inline: var(--space-3); }

/* ---------- Layout ---------- */
.bv-body { display: flex; align-items: stretch; }
.bv-main { flex: 1; min-inline-size: 0; background: var(--surface); padding: var(--space-8); display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: var(--space-6); align-items: start; }
.bv-main > aside { align-self: stretch; }
.bv-col { display: flex; flex-direction: column; gap: var(--space-6); min-inline-size: 0; }

/* ---------- Text ---------- */
.bv-page-title { margin: 0; font-size: 28px; line-height: 36px; font-weight: 500; color: var(--ink); }
.bv-subtitle { margin: var(--space-1) 0 0; font-size: 16px; line-height: 22px; color: var(--ink-muted); }
.bv-card-title { margin: 0; font-size: 20px; line-height: 28px; font-weight: 400; color: var(--ink); }
.bv-link { font-size: 15px; color: var(--ink-muted); text-decoration: none; white-space: nowrap; }
.bv-link:hover { color: var(--blue-500); text-decoration: underline; }
.bv-meta { white-space: nowrap; font-size: 14px; line-height: 20px; color: var(--ink-muted); display: flex; align-items: center; gap: var(--space-2); }
.bv-meta .bv-icon { color: var(--blue-500); }

/* ---------- Card ---------- */
.bv-card { background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-sm); }
.bv-card__head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-4); padding: var(--space-6) var(--space-6) var(--space-3); }
.bv-rows > * + * { border-block-start: 1px solid var(--line); }
.bv-row { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-4) var(--space-6); }
.bv-row__title { font-size: 15px; line-height: 22px; color: var(--ink); margin: 0 0 6px; }

/* ---------- Stat card ---------- */
.bv-stat { display: flex; align-items: flex-start; gap: var(--space-4); padding: var(--space-6); }
.bv-stat__icon { inline-size: 44px; block-size: 44px; border-radius: var(--radius-pill); background: var(--blue-50); color: var(--navy-900); display: grid; place-items: center; flex: none; }
.bv-stat__label { font-size: 20px; line-height: 28px; color: var(--ink); }
.bv-stat__num { font-size: 32px; line-height: 38px; font-weight: 700; color: var(--navy-900); font-variant-numeric: tabular-nums; }

/* ---------- Badge ---------- */
.bv-badge { display: inline-flex; align-items: center; gap: var(--space-1); font-size: 13px; line-height: 18px; font-weight: 500; padding: 1px 9px; border-radius: var(--radius-pill); border: 1px solid; white-space: nowrap; }
.bv-badge--danger { color: var(--danger-ink); background: var(--danger-bg); border-color: var(--danger-line); }
.bv-badge--success { color: var(--success-ink); background: var(--success-bg); border-color: var(--success-line); }
.bv-badge--warning { color: var(--warning-ink); background: var(--warning-bg); border-color: var(--warning-line); }
.bv-badge--info { color: var(--navy-900); background: var(--blue-50); border-color: var(--blue-200); }

/* ---------- Controls ---------- */
.bv-chip { font-size: 14px; line-height: 20px; color: var(--ink); border: 1px solid var(--line); border-radius: var(--radius-sm); padding: 5px 16px; background: var(--surface); white-space: nowrap; font-variant-numeric: tabular-nums; }
.bv-select { display: inline-flex; align-items: center; gap: var(--space-8); font-size: 15px; color: var(--ink); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-sm); padding: 7px var(--space-3); cursor: pointer; }
.bv-btn-outline { font-size: 15px; font-weight: 500; color: var(--navy-900); background: var(--surface); border: 1px solid var(--navy-900); border-radius: var(--radius-sm); padding: 6px var(--space-6); min-inline-size: 120px; cursor: pointer; }
.bv-btn-outline:hover { background: var(--blue-50); }

/* ---------- Avatars ---------- */
.bv-avatar { --av: #5b6170; inline-size: 32px; block-size: 32px; border-radius: var(--radius-pill); background: var(--av); color: #fff; font-size: 10px; font-weight: 500; letter-spacing: .02em; display: inline-grid; place-items: center; border: 2px solid var(--surface-raised); flex: none; }
.bv-avatar--lg { inline-size: 40px; block-size: 40px; font-size: 14px; border-color: var(--chrome-800); }
.bv-avatar--more { background: var(--surface); color: var(--ink); border: 1px solid var(--line); }
.bv-avatars { display: flex; }
.bv-avatars > * + * { margin-inline-start: -7px; }

/* ---------- Donut ---------- */
.bv-donut-card { padding: var(--space-6); }
.bv-donut-wrap { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); margin-block-start: var(--space-4); }
.bv-legend { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; font-size: 15px; }
.bv-legend li { white-space: nowrap; display: flex; align-items: center; gap: var(--space-2); }
.bv-dot { inline-size: 10px; block-size: 10px; border-radius: var(--radius-pill); background: var(--c); }
.bv-donut { position: relative; inline-size: 176px; block-size: 176px; flex: none; }
.bv-donut svg { transform: rotate(-90deg); }
.bv-donut__center { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; }
.bv-donut__value { font-size: 24px; line-height: 28px; font-weight: 500; color: var(--ink); }
.bv-donut__caption { font-size: 12px; color: var(--ink-muted); }

/* ---------- Calendar ---------- */
.bv-cal { padding: var(--space-6); }
.bv-cal__month { display: flex; align-items: center; gap: var(--space-2); font-size: 17px; font-weight: 500; color: var(--ink); margin: var(--space-6) 0 var(--space-4); }
.bv-cal__month button { background: none; border: 0; color: var(--ink-muted); padding: 2px; cursor: pointer; }
.bv-cal__grid { display: grid; grid-template-columns: repeat(7, 1fr); row-gap: var(--space-3); text-align: center; }
.bv-cal__wd { font-size: 13px; color: var(--ink-muted); padding-block-end: var(--space-2); }
.bv-cal__day { position: relative; justify-self: center; inline-size: 32px; block-size: 32px; display: grid; place-items: center; font-size: 16px; color: var(--ink); border-radius: var(--radius-pill); font-variant-numeric: tabular-nums; }
.bv-cal__day.is-out { color: var(--ink-faint); }
.bv-cal__day.is-today { background: var(--blue-500); color: #fff; }
.bv-cal__day.has-event::after { content: ""; position: absolute; inset-block-end: -6px; inset-inline-start: 50%; translate: -50% 0; inline-size: 6px; block-size: 6px; border-radius: var(--radius-pill); background: var(--blue-500); }
[dir="rtl"] .bv-cal__day.has-event::after { translate: 50% 0; }

/* ---------- Upcoming meetings ---------- */
.bv-meeting { padding: var(--space-4) var(--space-6); display: grid; grid-template-columns: 1fr auto; gap: 6px var(--space-4); align-items: center; }
.bv-meeting__title { font-size: 15px; font-weight: 500; color: var(--ink); grid-column: 1 / -1; }

/* ---------- Resolution card ---------- */
.bv-res { padding: var(--space-6); display: flex; flex-direction: column; gap: var(--space-3); }
.bv-res__title { margin: 0; font-size: 18px; line-height: 24px; font-weight: 500; color: var(--navy-900); }
.bv-res__meta { flex-wrap: wrap; display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); }
.bv-res__foot { gap: var(--space-4); display: flex; justify-content: space-between; align-items: center; margin-block-start: var(--space-2); }
.bv-res__pct { font-size: 20px; font-weight: 500; color: var(--ink); }
.bv-res__pct span { font-size: 15px; font-weight: 400; color: var(--ink-muted); margin-inline-start: 6px; }

/* ---------- Committee filter (top bar, beside the logo) ---------- */
.bv-cfilter { position: relative; margin-inline-start: var(--space-4); }
.bv-cfilter__btn { display: inline-flex; align-items: center; gap: var(--space-3); block-size: 40px; max-inline-size: 420px; padding-inline: var(--space-4) var(--space-3); border-radius: var(--radius-pill); background: transparent; border: 1.5px solid var(--chrome-ink); color: var(--chrome-ink); font-size: 15px; line-height: 20px; font-weight: 400; cursor: pointer; white-space: nowrap; }
.bv-cfilter__btn:hover { background: var(--chrome-700); }
.bv-cfilter__btn:focus-visible { outline: 2px solid var(--blue-200); outline-offset: 2px; }
.bv-cfilter__label { display: inline-flex; align-items: center; gap: 6px; min-inline-size: 0; }
.bv-cfilter__names { font-weight: 500; color: var(--chrome-ink); overflow: hidden; text-overflow: ellipsis; min-inline-size: 0; }
.bv-cfilter__btn .bv-icon { color: var(--chrome-ink); transition: rotate .15s ease; }
.bv-cfilter.is-open .bv-cfilter__btn { background: var(--chrome-700); }
.bv-cfilter.is-open .bv-cfilter__btn .bv-icon { rotate: 180deg; }

.bv-cmenu { display: none; position: absolute; inset-block-start: calc(100% + var(--space-2)); inset-inline-start: 0; z-index: 20; inline-size: 340px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-pop); color: var(--ink); overflow: hidden; }
.bv-cfilter.is-open .bv-cmenu { display: block; }
.bv-cmenu__search { display: flex; align-items: center; gap: var(--space-2); margin: var(--space-3); padding: 0 var(--space-3); block-size: 38px; border: 1px solid var(--line); border-radius: var(--radius-sm); color: var(--ink-muted); }
.bv-cmenu__search:focus-within { border-color: var(--blue-500); box-shadow: 0 0 0 3px var(--blue-50); }
.bv-cmenu__search input { flex: 1; min-inline-size: 0; border: 0; outline: 0; background: none; font: inherit; font-size: 14px; color: var(--ink); }
.bv-cmenu__search input::placeholder { color: var(--ink-muted); }
.bv-cmenu__list { list-style: none; margin: 0; padding: 0 0 var(--space-2); max-block-size: 320px; overflow-y: auto; }
.bv-cmenu__opt { display: flex; align-items: center; gap: var(--space-3); padding: 10px var(--space-4); font-size: 15px; line-height: 22px; cursor: pointer; }
.bv-cmenu__opt:hover { background: var(--blue-50); }
.bv-cmenu__opt--all { border-block-end: 1px solid var(--line-soft); margin-block-end: var(--space-1); font-weight: 500; }
.bv-cmenu__opt[aria-selected="true"] .bv-cmenu__name { color: var(--navy-900); font-weight: 500; }
.bv-cmenu__name { flex: 1; min-inline-size: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bv-cmenu__meta { font-size: 13px; color: var(--ink-muted); white-space: nowrap; }
.bv-cmenu__empty { padding: var(--space-4); font-size: 14px; color: var(--ink-muted); }
.bv-check { inline-size: 18px; block-size: 18px; flex: none; border-radius: var(--radius-sm); border: 1.5px solid var(--line); background: var(--surface); color: transparent; display: grid; place-items: center; }
.bv-check .bv-icon { stroke-width: 3; }
[aria-selected="true"] > .bv-check { background: var(--blue-500); border-color: var(--blue-500); color: #fff; }
.bv-cmenu__foot { display: flex; align-items: center; justify-content: space-between; padding: 10px var(--space-4); border-block-start: 1px solid var(--line-soft); background: var(--surface-raised); font-size: 13px; color: var(--ink-muted); }
.bv-cmenu__clear { background: none; border: 0; padding: 0; font-size: 14px; font-weight: 500; color: var(--blue-500); cursor: pointer; }
.bv-cmenu__clear:disabled { color: var(--ink-faint); cursor: default; }

/* ======================================================================
   Communications screen
   ====================================================================== */
.bv-main--page { display: block; padding: var(--space-8); }
.bv-ink-attention { color: var(--attention-ink); }
.bv-ink-success { color: var(--success-ink); }

/* Page head + tabs */
.cm-head { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-6); }
.cm-title { margin: 0; font-size: 30px; line-height: 38px; font-weight: 700; color: var(--navy-900); }
.cm-sub { margin: 2px 0 0; font-size: 16px; color: var(--ink-muted); }
.cm-actions { display: flex; align-items: center; gap: var(--space-3); }
.cm-search { display: flex; align-items: center; gap: var(--space-2); inline-size: 320px; block-size: 44px; padding-inline: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); color: var(--ink-muted); }
.cm-search input { flex: 1; min-inline-size: 0; border: 0; outline: 0; background: none; font: inherit; font-size: 15px; color: var(--ink); }
.cm-search:focus-within { border-color: var(--blue-500); box-shadow: 0 0 0 3px var(--blue-50); }
.bv-btn-primary { display: inline-flex; align-items: center; gap: var(--space-2); block-size: 44px; padding-inline: var(--space-6); border: 0; border-radius: var(--radius-md); background: var(--blue-500); color: #fff; font-size: 16px; font-weight: 500; cursor: pointer; white-space: nowrap; }
.bv-btn-primary:hover { background: var(--navy-700); }
.bv-btn-secondary { display: inline-flex; align-items: center; gap: var(--space-2); block-size: 40px; padding-inline: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); color: var(--ink); font-size: 15px; font-weight: 500; cursor: pointer; white-space: nowrap; }
.bv-btn-secondary:hover { border-color: var(--ink-muted); }
.bv-btn-ai { display: inline-flex; align-items: center; gap: var(--space-2); block-size: 40px; padding-inline: var(--space-4); border: 1px solid var(--violet-line); border-radius: var(--radius-md); background: var(--violet-bg); color: var(--violet-ink); font-size: 15px; font-weight: 500; cursor: pointer; white-space: nowrap; }
.bv-linkbtn { background: none; border: 0; padding: 0; color: var(--blue-500); font-size: 15px; font-weight: 500; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.bv-linkbtn--ai { color: var(--violet-ink); }
.bv-ghost-icon { background: none; border: 0; padding: 8px; border-radius: var(--radius-md); color: var(--ink); cursor: pointer; display: grid; place-items: center; }
.bv-ghost-icon:hover { background: var(--neutral-bg); }

.cm-tabbar { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--space-4); border-block-end: 1px solid var(--line); margin-block: var(--space-6) var(--space-6); }
.cm-tabs { display: flex; gap: var(--space-8); }
.cm-tab { display: inline-flex; align-items: center; gap: var(--space-2); padding: var(--space-3) 0; border: 0; border-block-end: 3px solid transparent; background: none; color: var(--ink-muted); font-size: 18px; font-weight: 500; cursor: pointer; margin-block-end: -1px; }
.cm-tab.is-active { color: var(--navy-900); border-block-end-color: var(--blue-500); }
.cm-count { min-inline-size: 26px; block-size: 24px; padding-inline: 7px; border-radius: var(--radius-pill); background: var(--neutral-bg); color: var(--ink); font-size: 13px; font-weight: 500; display: inline-grid; place-items: center; font-variant-numeric: tabular-nums; }
.cm-tab.is-active .cm-count, .cm-seg__btn.is-active .cm-count { background: var(--blue-50); color: var(--blue-500); }
.cm-count--danger { background: var(--danger-bg); color: var(--danger-ink); }
.cm-filters { display: flex; align-items: center; gap: var(--space-3); padding-block-end: var(--space-3); }
.cm-seg { display: flex; gap: 2px; padding: 4px; border-radius: var(--radius-md); background: var(--neutral-bg); }
.cm-seg__btn { display: inline-flex; align-items: center; gap: var(--space-2); block-size: 36px; padding-inline: var(--space-4); border: 0; border-radius: 6px; background: none; color: var(--ink); font-size: 15px; cursor: pointer; }
.cm-seg__btn.is-active { background: var(--surface); box-shadow: 0 1px 2px rgba(3, 17, 98, .08); font-weight: 500; }

/* Notices: list + reader */
.cm-notices { display: grid; grid-template-columns: 440px minmax(0, 1fr); gap: var(--space-6); align-items: start; }
.cm-panel { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden; }
.cm-list__head { display: flex; justify-content: space-between; align-items: center; padding: var(--space-4) var(--space-6); border-block-end: 1px solid var(--line); background: var(--surface-raised); }
.cm-eyebrow { font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-muted); }
.cm-item { display: block; inline-size: 100%; text-align: start; padding: var(--space-4) var(--space-6); border: 0; border-block-end: 1px solid var(--line); border-inline-start: 3px solid transparent; background: var(--surface); font: inherit; color: inherit; cursor: pointer; }
.cm-item:hover { background: var(--surface-raised); }
.cm-item.is-active { background: var(--blue-50); border-inline-start-color: var(--blue-500); }
.cm-item__top, .cm-item__foot { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); }
.cm-item__top > span:first-child { display: inline-flex; align-items: center; gap: var(--space-2); }
.cm-item__time { font-size: 14px; color: var(--ink-muted); white-space: nowrap; }
.cm-item__title { margin: var(--space-2) 0 6px; font-size: 16px; line-height: 23px; color: var(--ink); }
.cm-item.is-unread .cm-item__title { font-weight: 700; color: var(--navy-900); }
.cm-item__foot { font-size: 14px; color: var(--ink-muted); }
.cm-item__state { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; font-weight: 500; }
.cm-unread-dot { inline-size: 8px; block-size: 8px; border-radius: var(--radius-pill); background: var(--blue-500); }
.cm-list__foot { display: flex; justify-content: space-between; align-items: center; padding: var(--space-4) var(--space-6); font-size: 14px; color: var(--ink-muted); }

.bv-tag { display: inline-flex; align-items: center; gap: 6px; padding: 2px 10px; border-radius: 6px; font-size: 13px; line-height: 20px; font-weight: 500; white-space: nowrap; }
.bv-tag--policy { background: var(--violet-bg); color: var(--violet-ink); }
.bv-tag--urgent { background: var(--danger-bg); color: var(--danger-ink); }
.bv-tag--announcement { background: var(--blue-50); color: var(--navy-700); }
.bv-tag--fyi { background: var(--neutral-bg); color: var(--ink); }
.bv-tag__dot { inline-size: 6px; block-size: 6px; border-radius: var(--radius-pill); background: currentColor; }

.cm-reader__bar { display: flex; align-items: center; gap: var(--space-4); padding: var(--space-4) var(--space-6); border-block-end: 1px solid var(--line); }
.cm-reader__to { font-size: 15px; color: var(--ink-muted); flex: 1; min-inline-size: 0; }
.cm-reader__body { padding: var(--space-6); }
.cm-reader__title { margin: 0 0 var(--space-3); font-size: 26px; line-height: 34px; font-weight: 700; color: var(--navy-900); }
.cm-byline { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-2) var(--space-3); font-size: 15px; color: var(--ink-muted); }
.cm-byline .sep { color: var(--ink-faint); }
.cm-prose { font-size: 16px; line-height: 26px; color: var(--ink); margin-block: var(--space-6) var(--space-4); }
.cm-prose p { margin: 0 0 var(--space-4); }
.cm-prose ul { margin: 0; padding-inline-start: 22px; display: grid; gap: 6px; }
.cm-file { display: flex; gap: var(--space-6); padding: var(--space-4); margin-block-start: var(--space-6); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface-raised); }
.cm-thumb { inline-size: 150px; block-size: 200px; flex: none; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); padding: 14px; display: flex; flex-direction: column; gap: 7px; position: relative; box-shadow: 0 1px 2px rgba(3, 17, 98, .06); }
.cm-thumb i { display: block; block-size: 4px; border-radius: 2px; background: var(--line); }
.cm-thumb i.h { background: var(--navy-900); inline-size: 70%; block-size: 6px; margin-block: 14px 4px; }
.cm-thumb b { inline-size: 18px; block-size: 18px; border-radius: 3px; background: var(--blue-50); }
.cm-thumb small { position: absolute; inset-block-end: 8px; inset-inline-end: 10px; font-size: 10px; color: var(--ink-muted); }
.cm-file__info { display: flex; flex-direction: column; gap: var(--space-2); min-inline-size: 0; }
.cm-file__name { display: flex; align-items: center; gap: var(--space-3); font-size: 18px; font-weight: 500; color: var(--navy-900); }
.cm-ftype { inline-size: 34px; block-size: 34px; border-radius: 6px; display: grid; place-items: center; font-size: 10px; font-weight: 700; color: #fff; flex: none; }
.cm-ftype--pdf { background: #c0362c; } .cm-ftype--xls { background: #217346; } .cm-ftype--doc { background: #2b5cd6; }
.cm-file__meta { font-size: 15px; color: var(--ink-muted); display: flex; align-items: center; gap: var(--space-2); }
.cm-file__actions { display: flex; align-items: center; gap: var(--space-6); margin-block-start: auto; }
.cm-track { display: flex; align-items: center; gap: var(--space-4); padding: var(--space-4) var(--space-6); border-block: 1px solid var(--line); background: var(--surface-raised); font-size: 15px; color: var(--ink-muted); }
.cm-progress { inline-size: 200px; block-size: 8px; border-radius: var(--radius-pill); background: var(--line-soft); overflow: hidden; }
.cm-progress > span { display: block; block-size: 100%; background: var(--success-500); border-radius: inherit; }
.cm-track strong { color: var(--navy-900); }
.cm-track__end { margin-inline-start: auto; display: flex; align-items: center; gap: var(--space-4); }
.cm-ack { display: flex; align-items: center; gap: var(--space-6); padding: var(--space-4) var(--space-6); }
.cm-ack .bv-btn-primary.is-done { background: var(--success-bg); color: var(--success-ink); box-shadow: inset 0 0 0 1px var(--success-line); cursor: default; }
.cm-due { display: inline-flex; align-items: center; gap: 6px; font-size: 16px; color: var(--attention-ink); }
.cm-ack .bv-linkbtn { margin-inline-start: auto; color: var(--ink); }

/* Communities: three columns */
.cm-comm { display: grid; grid-template-columns: 340px minmax(0, 1fr) 360px; block-size: 880px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden; }
.cm-comm.no-info { grid-template-columns: 340px minmax(0, 1fr); }
.cm-comm.no-info .cm-info { display: none; }
.cm-col { display: flex; flex-direction: column; min-block-size: 0; min-inline-size: 0; }
.cm-col + .cm-col { border-inline-start: 1px solid var(--line); }
.cm-scroll { flex: 1; overflow-y: auto; min-block-size: 0; }
.cm-col__search { padding: var(--space-4); border-block-end: 1px solid var(--line); }
.cm-col__search .cm-search { inline-size: 100%; block-size: 42px; }
.cm-group { border-block-end: 1px solid var(--line); }
.cm-group__head { display: flex; align-items: center; gap: var(--space-3); inline-size: 100%; padding: var(--space-4); border: 0; background: none; font: inherit; color: var(--navy-900); cursor: pointer; text-align: start; }
.cm-group__name { flex: 1; font-size: 16px; font-weight: 700; }
.cm-group__sub { display: block; font-size: 14px; font-weight: 400; color: var(--ink-muted); }
.cm-group__head > .bv-icon:last-child { color: var(--ink-muted); transition: rotate .15s; }
.cm-group.is-open .cm-group__head > .bv-icon:last-child { rotate: 180deg; }
.cm-group__body { display: none; padding-block-end: var(--space-2); }
.cm-group.is-open .cm-group__body { display: block; }
.cm-mono { inline-size: 36px; block-size: 36px; border-radius: var(--radius-md); background: var(--av); color: #fff; font-size: 13px; font-weight: 700; display: grid; place-items: center; flex: none; }
.cm-conv { display: flex; align-items: flex-start; gap: var(--space-3); inline-size: 100%; padding: 10px var(--space-4) 10px var(--space-8); border: 0; border-inline-start: 3px solid transparent; background: none; font: inherit; color: inherit; text-align: start; cursor: pointer; }
.cm-conv:hover { background: var(--surface-raised); }
.cm-conv.is-active { background: var(--blue-50); border-inline-start-color: var(--blue-500); }
.cm-conv__icon { inline-size: 36px; block-size: 36px; border-radius: var(--radius-md); background: var(--neutral-bg); color: var(--ink); display: grid; place-items: center; flex: none; }
.cm-conv.is-active .cm-conv__icon { background: var(--surface); color: var(--blue-500); }
.cm-conv__main { flex: 1; min-inline-size: 0; }
.cm-conv__row { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); }
.cm-conv__name { font-size: 15px; font-weight: 700; color: var(--navy-900); display: inline-flex; align-items: center; gap: 6px; }
.cm-conv__name .bv-icon { color: var(--ink-muted); }
.cm-conv__time { font-size: 13px; color: var(--ink-muted); }
.cm-conv__time.is-new { color: var(--blue-500); font-weight: 500; }
.cm-conv__prev { font-size: 14px; color: var(--ink-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 1; min-inline-size: 0; }
.cm-unread { min-inline-size: 22px; block-size: 22px; padding-inline: 6px; border-radius: var(--radius-pill); background: var(--blue-500); color: #fff; font-size: 12px; font-weight: 700; display: inline-grid; place-items: center; }
.cm-dm { padding-inline-start: var(--space-4); }
.cm-dm .bv-avatar { inline-size: 40px; block-size: 40px; font-size: 13px; border: 0; }
.cm-col__foot { display: flex; align-items: center; gap: var(--space-2); padding: var(--space-3) var(--space-4); border-block-start: 1px solid var(--line); font-size: 14px; color: var(--ink-muted); }
.cm-col__foot .bv-icon { color: var(--success-ink); }

.cm-chat__head { display: flex; align-items: center; gap: var(--space-4); padding: var(--space-4) var(--space-6); border-block-end: 1px solid var(--line); }
.cm-chat__title { font-size: 18px; font-weight: 700; color: var(--navy-900); }
.cm-chat__title span { color: var(--ink-faint); font-weight: 400; margin-inline: 6px; }
.cm-chat__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 6px var(--space-2); font-size: 14px; color: var(--ink-muted); margin-block-start: 2px; }
.cm-chat__meta .bv-icon { color: var(--ink-muted); }
.cm-chat__tools { margin-inline-start: auto; display: flex; align-items: center; gap: var(--space-2); }
.cm-chat__tools .bv-avatar { border-color: var(--surface); }
.cm-ghost-icon.is-on { background: var(--neutral-bg); }
.cm-pinned { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-6); border-block-end: 1px solid var(--line); background: var(--surface-raised); font-size: 15px; color: var(--ink); }
.cm-pinned .bv-icon:first-child { color: var(--blue-500); }
.cm-pinned strong { color: var(--navy-900); }
.cm-pinned > .bv-icon:last-child { margin-inline-start: auto; color: var(--ink-muted); }
.cm-msgs { flex: 1; overflow-y: auto; padding: var(--space-6); display: flex; flex-direction: column; gap: var(--space-4); background: var(--surface); }
.cm-day { display: flex; align-items: center; gap: var(--space-4); font-size: 14px; font-weight: 500; color: var(--ink-muted); margin-block: var(--space-4) var(--space-2); }
.cm-day::before, .cm-day::after { content: ""; flex: 1; block-size: 1px; background: var(--line); }
.cm-msg { display: flex; align-items: flex-end; gap: var(--space-3); max-inline-size: 76%; }
.cm-msg .bv-avatar { inline-size: 36px; block-size: 36px; border: 0; font-size: 12px; }
.cm-bubble { padding: var(--space-3) var(--space-4); border: 1px solid var(--line); border-radius: 14px; border-end-start-radius: 4px; background: var(--surface); font-size: 16px; line-height: 24px; color: var(--ink); box-shadow: 0 1px 2px rgba(3, 17, 98, .05); }
.cm-bubble__who { font-size: 15px; font-weight: 700; margin-block-end: 2px; }
.cm-bubble__time { font-size: 13px; color: var(--ink-muted); text-align: end; margin-block-start: 4px; display: flex; justify-content: flex-end; align-items: center; gap: 6px; }
.cm-msg--me { align-self: flex-end; max-inline-size: 70%; }
.cm-msg--me .cm-bubble { background: var(--blue-50); border-color: var(--blue-200); border-radius: 14px; border-end-end-radius: 4px; }
.cm-msg--me .cm-bubble__time .bv-icon { color: var(--blue-500); }
.cm-quote { padding: var(--space-2) var(--space-3); margin-block-end: var(--space-2); border-radius: 6px; background: var(--surface); box-shadow: inset 3px 0 0 var(--blue-500); font-size: 14px; color: var(--ink-muted); }
[dir="rtl"] .cm-quote { box-shadow: inset -3px 0 0 var(--blue-500); }
.cm-quote b { display: block; color: var(--blue-500); font-weight: 500; }
.cm-shared { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 500; color: var(--blue-500); }
.cm-attach { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3); margin-block: var(--space-2) 0; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface-raised); }
.cm-attach__name { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.cm-attach__meta { font-size: 13px; color: var(--ink-muted); }
.cm-attach > .bv-icon { margin-inline-start: auto; color: var(--ink-muted); }
.cm-composer { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-4) var(--space-6); border-block-start: 1px solid var(--line); }
.cm-composer input { flex: 1; min-inline-size: 0; block-size: 48px; padding-inline: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); font: inherit; font-size: 16px; color: var(--ink); outline: 0; }
.cm-composer input:focus { border-color: var(--blue-500); box-shadow: 0 0 0 3px var(--blue-50); }
.cm-send { inline-size: 48px; block-size: 48px; border: 0; border-radius: var(--radius-md); background: var(--blue-500); color: #fff; display: grid; place-items: center; cursor: pointer; }
.cm-readonly { padding: var(--space-4) var(--space-6); border-block-start: 1px solid var(--line); font-size: 14px; color: var(--ink-muted); display: flex; align-items: center; gap: var(--space-2); background: var(--surface-raised); }

.cm-info__head { display: flex; align-items: center; justify-content: space-between; padding: var(--space-4) var(--space-6); }
.cm-info__head h3 { margin: 0; font-size: 18px; font-weight: 700; color: var(--navy-900); }
.cm-info__sec { padding: var(--space-4) var(--space-6); border-block-start: 1px solid var(--line); }
.cm-info__sec--intro { border: 0; padding-block-start: 0; font-size: 15px; line-height: 23px; color: var(--ink-muted); }
.cm-info__row { display: flex; align-items: center; justify-content: space-between; margin-block-end: var(--space-3); }
.cm-person { display: flex; align-items: center; gap: var(--space-3); padding-block: 6px; font-size: 16px; color: var(--navy-900); }
.cm-person .bv-avatar { inline-size: 34px; block-size: 34px; border: 0; font-size: 11px; }
.cm-person > span:not(.bv-avatar) { white-space: nowrap; }
.cm-person small { margin-inline-start: auto; font-size: 13px; color: var(--ink-muted); text-align: end; }
.cm-sfile { display: flex; align-items: center; gap: var(--space-3); padding-block: 6px; }
.cm-sfile b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.cm-sfile div > span { font-size: 13px; color: var(--ink-muted); }
.cm-setting { display: flex; align-items: center; gap: var(--space-3); padding-block: var(--space-2); font-size: 15px; color: var(--navy-900); }
.cm-setting > .bv-icon { color: var(--ink-muted); }
.cm-setting small { display: block; font-size: 13px; color: var(--ink-muted); }
.cm-setting > button:last-child, .cm-setting > .cm-locked { margin-inline-start: auto; }
.bv-switch { inline-size: 44px; block-size: 24px; border-radius: var(--radius-pill); border: 0; padding: 3px; background: var(--line); cursor: pointer; display: flex; }
.bv-switch::after { content: ""; inline-size: 18px; block-size: 18px; border-radius: var(--radius-pill); background: #fff; box-shadow: 0 1px 2px rgba(0,0,0,.2); transition: margin .15s; }
.bv-switch[aria-checked="true"] { background: var(--blue-500); }
.bv-switch[aria-checked="true"]::after { margin-inline-start: 20px; }
.cm-locked { display: inline-flex; align-items: center; gap: 4px; font-size: 14px; color: var(--ink-muted); }
.cm-info__foot { margin-block-start: auto; display: flex; align-items: center; justify-content: space-between; padding: var(--space-4) var(--space-6); border-block-start: 1px solid var(--line); font-size: 14px; color: var(--ink-muted); }
.cm-info__foot span { display: inline-flex; align-items: center; gap: 6px; }

/* ---------- New communication drawer ---------- */
.bv-app { position: relative; }
.nc-scrim { position: absolute; inset: 0; z-index: 40; background: rgba(33, 35, 41, .55); }
.nc-drawer { position: absolute; inset-block: 0; inset-inline-end: 0; z-index: 41; inline-size: 600px; max-inline-size: 100%; background: var(--surface); display: flex; flex-direction: column; box-shadow: var(--shadow-pop); color: var(--ink); }
.nc-head { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-4) var(--space-6); border-block-end: 1px solid var(--line); }
.nc-head h2 { margin: 0; font-size: 20px; font-weight: 700; color: var(--navy-900); }
.nc-draft { display: inline-flex; align-items: center; gap: 6px; padding: 2px 10px; border-radius: var(--radius-pill); background: var(--neutral-bg); font-size: 13px; color: var(--ink-muted); }
.nc-head .bv-ghost-icon { margin-inline-start: auto; }
.nc-body { flex: 1; overflow-y: auto; padding: var(--space-6); display: flex; flex-direction: column; gap: var(--space-6); }
.nc-field { position: relative; }
.nc-label { display: block; font-size: 14px; font-weight: 500; color: var(--navy-900); margin-block-end: var(--space-2); }
.nc-label b { color: var(--danger-ink); }
.nc-label i { font-style: normal; font-weight: 400; color: var(--ink-muted); }
.nc-label--row { display: flex; align-items: center; justify-content: space-between; }
.nc-label--row .bv-linkbtn { font-size: 14px; }
.nc-help { margin: 6px 0 0; font-size: 13px; color: var(--ink-muted); }
.nc-err { margin: 6px 0 0; font-size: 13px; color: var(--danger-ink); }
.nc-types { display: grid; grid-template-columns: repeat(4, 1fr); }
.nc-types .cm-seg__btn { justify-content: center; padding-inline: var(--space-2); font-size: 14px; }
.nc-aud { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-block-size: 46px; padding: 6px var(--space-2); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); }
.nc-aud:focus-within { border-color: var(--blue-500); box-shadow: 0 0 0 3px var(--blue-50); }
.nc-aud input { flex: 1; min-inline-size: 140px; border: 0; outline: 0; font: inherit; font-size: 15px; color: var(--ink); padding: 6px; background: none; }
.nc-chip { display: inline-flex; align-items: center; gap: 4px; padding: 4px 4px 4px 10px; border-radius: 6px; background: var(--blue-50); color: var(--navy-700); font-size: 14px; font-weight: 500; }
[dir="rtl"] .nc-chip { padding: 4px 10px 4px 4px; }
.nc-chip button { border: 0; background: none; padding: 2px; border-radius: 4px; color: var(--navy-700); cursor: pointer; display: grid; }
.nc-chip button:hover { background: var(--blue-200); }
.nc-audwrap { position: relative; }
.nc-sugg { position: absolute; inset-inline: 0; inset-block-start: calc(100% + 4px); z-index: 5; max-block-size: 300px; overflow-y: auto; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-pop); padding-block: 6px; }
.nc-sugg__h { padding: 8px 14px 4px; font-size: 12px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-muted); }
.nc-sugg__o { display: flex; align-items: center; gap: var(--space-3); inline-size: 100%; padding: 8px 14px; border: 0; background: none; font: inherit; font-size: 15px; color: var(--ink); text-align: start; cursor: pointer; }
.nc-sugg__o:hover { background: var(--blue-50); }
.nc-sugg__o small { margin-inline-start: auto; font-size: 13px; color: var(--ink-muted); }
.nc-sugg__o .bv-avatar { inline-size: 28px; block-size: 28px; border: 0; font-size: 10px; }
.nc-mono { --av: var(--navy-900); inline-size: 28px; block-size: 28px; font-size: 11px; border-radius: 6px; }
.nc-input { inline-size: 100%; block-size: 44px; padding-inline: var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); font: inherit; font-size: 15px; color: var(--ink); outline: 0; background: var(--surface); }
.nc-input:focus { border-color: var(--blue-500); box-shadow: 0 0 0 3px var(--blue-50); }
.nc-input.is-error, .nc-aud.is-error, .nc-editor.is-error { border-color: var(--danger-ink); }
.nc-editor { border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden; }
.nc-editor:focus-within { border-color: var(--blue-500); box-shadow: 0 0 0 3px var(--blue-50); }
.nc-tools { display: flex; align-items: center; gap: 2px; padding: 6px 8px; border-block-end: 1px solid var(--line-soft); background: var(--surface-raised); }
.nc-tool { inline-size: 30px; block-size: 30px; border: 0; border-radius: 6px; background: none; color: var(--ink); font: inherit; font-size: 15px; cursor: pointer; display: grid; place-items: center; }
.nc-tool:hover { background: var(--neutral-bg); }
.nc-tool--bold { font-weight: 700; } .nc-tool--italic { font-style: italic; font-family: Georgia, serif; } .nc-tool--underline { text-decoration: underline; }
.nc-dir { margin-inline-start: auto; font-size: 13px; color: var(--ink-muted); }
.nc-rte { min-block-size: 120px; padding: var(--space-3); font-size: 15px; line-height: 23px; color: var(--ink); outline: 0; }
.nc-rte ul, .nc-rte ol { margin: 4px 0; padding-inline-start: 22px; }
.nc-rte a { color: var(--blue-500); }
.nc-files { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.nc-file { flex: 1; min-inline-size: 260px; display: flex; align-items: center; gap: var(--space-3); padding: 6px 6px 6px var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); }
.nc-file .cm-ftype { inline-size: 28px; block-size: 28px; font-size: 9px; }
.nc-file__name { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.nc-file small { font-size: 13px; color: var(--ink-muted); }
.nc-file .bv-ghost-icon { margin-inline-start: auto; color: var(--ink-muted); }
.nc-add { display: inline-flex; align-items: center; gap: 6px; padding: 10px var(--space-4); border: 1px dashed var(--line); border-radius: var(--radius-md); background: none; font: inherit; font-size: 14px; color: var(--ink-muted); cursor: pointer; }
.nc-add:hover { border-color: var(--blue-500); color: var(--blue-500); }
.nc-select { display: flex; align-items: center; gap: var(--space-2); block-size: 44px; padding-inline: var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); color: var(--ink-muted); position: relative; }
.nc-select select { flex: 1; appearance: none; border: 0; outline: 0; background: none; font: inherit; font-size: 15px; color: var(--ink); cursor: pointer; }
.nc-select:focus-within { border-color: var(--blue-500); box-shadow: 0 0 0 3px var(--blue-50); }
.nc-opts { border: 1px solid var(--line); border-radius: var(--radius-md); }
.nc-opt { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-4); }
.nc-opt + .nc-opt { border-block-start: 1px solid var(--line-soft); }
.nc-opt > div { flex: 1; }
.nc-opt b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.nc-opt small { font-size: 13px; color: var(--ink-muted); }
.nc-due { display: inline-flex; align-items: center; gap: 6px; padding: 4px 8px; border: 1px solid var(--line); border-radius: var(--radius-sm); font-size: 13px; color: var(--ink-muted); }
.nc-due input { border: 0; outline: 0; font: inherit; font-size: 13px; color: var(--ink); background: none; }
.nc-sched { display: flex; align-items: center; justify-content: flex-end; gap: var(--space-3); padding: var(--space-3) var(--space-6); border-block-start: 1px solid var(--line); background: var(--surface-raised); font-size: 14px; color: var(--ink-muted); }
.nc-sched label { display: inline-flex; align-items: center; gap: var(--space-2); }
.nc-sched input { block-size: 40px; padding-inline: var(--space-2); border: 1px solid var(--line); border-radius: var(--radius-sm); font: inherit; font-size: 14px; color: var(--ink); }
.nc-foot { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-4) var(--space-6); border-block-start: 1px solid var(--line); }
.nc-saved { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--ink-muted); margin-inline-end: auto; }
.nc-saved .bv-icon { color: var(--success-ink); }
.nc-cancel { color: var(--ink); padding-inline: var(--space-3); }
.bv-btn-secondary.is-on { border-color: var(--blue-500); color: var(--blue-500); }
.bv-toast { position: fixed; inset-block-end: 28px; inset-inline-start: 50%; translate: -50% 0; z-index: 60; display: inline-flex; align-items: center; gap: var(--space-2); padding: 12px 18px; border-radius: var(--radius-md); background: var(--navy-900); color: #fff; font-size: 15px; box-shadow: var(--shadow-pop); }
[dir="rtl"] .bv-toast { translate: 50% 0; }
.bv-toast .bv-icon { color: var(--blue-200); }

/* ---------- Account menu (avatar, top bar) ---------- */
.bv-acct { position: relative; }
.bv-acct__btn { padding: 0; border: 0; background: none; border-radius: var(--radius-pill); cursor: pointer; display: grid; }
.bv-acct__btn:focus-visible { outline: 2px solid var(--blue-200); outline-offset: 2px; }
.bv-acct.is-open .bv-acct__btn .bv-avatar { box-shadow: 0 0 0 2px var(--chrome-ink); }
.bv-acct__menu { display: none; position: absolute; inset-block-start: calc(100% + 12px); inset-inline-end: 0; z-index: 30; inline-size: 340px; background: var(--surface); border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow-pop); color: var(--ink); overflow: hidden; }
.bv-acct.is-open .bv-acct__menu { display: block; }
.bv-acct__who { display: flex; gap: var(--space-4); padding: var(--space-6); border-block-end: 1px solid var(--line); }
.bv-acct__av { inline-size: 56px; block-size: 56px; font-size: 18px; border: 0; }
.bv-acct__name { font-size: 18px; font-weight: 700; color: var(--navy-900); }
.bv-acct__mail { font-size: 15px; color: var(--ink-muted); margin-block-start: 2px; }
.bv-acct__org { display: flex; align-items: center; gap: var(--space-2); margin-block-start: var(--space-3); font-size: 15px; color: var(--ink); }
.bv-acct__org-tile { inline-size: 24px; block-size: 24px; border-radius: 6px; background: var(--av); color: #fff; font-size: 10px; font-weight: 700; display: grid; place-items: center; flex: none; }
.bv-acct__sec { padding-block: var(--space-2); }
.bv-acct__item { display: flex; align-items: center; gap: var(--space-3); inline-size: 100%; padding: 12px var(--space-6); border: 0; background: none; font: inherit; font-size: 16px; color: var(--ink); text-align: start; cursor: pointer; }
.bv-acct__item:hover, .bv-acct__item:focus-visible { background: var(--neutral-bg); outline: 0; }
.bv-acct__switch { color: var(--ink-muted); font-weight: 500; }
.bv-acct__switch > span { flex: 1; }
.bv-acct__switch[aria-expanded="true"] { border-block-end: 1px solid var(--line-soft); }
.bv-acct__orgs { padding-block: 4px; border-block-end: 1px solid var(--line-soft); background: var(--surface-raised); }
.bv-acct__orgitem { font-size: 15px; padding-block: 10px; }
.bv-acct__orgitem > span:not(.bv-acct__org-tile) { flex: 1; }
.bv-acct__orgitem small { font-size: 12px; color: var(--ink-muted); }
.bv-acct__orgitem .bv-icon { color: var(--blue-500); }
.bv-acct__orgitem.is-current { font-weight: 500; color: var(--navy-900); }
.bv-acct__item--add { color: var(--navy-700); font-size: 15px; font-weight: 500; }
.bv-acct__item--add:hover { background: var(--blue-50); }
.bv-acct__item--profile { color: var(--blue-500); }
.bv-acct__item--out { color: var(--danger-ink); }
.bv-acct__item--out:hover { background: var(--danger-bg); }

/* ---------- Create menu (side navigation) ---------- */
.bv-createwrap { position: relative; margin-block-end: var(--space-6); }
.is-expanded .bv-createwrap { align-self: flex-start; }
.bv-create:hover .bv-create__disc { background: var(--navy-700); }
.bv-createwrap.is-open .bv-create__disc { box-shadow: 0 0 0 3px var(--chrome-600); }
.is-expanded .bv-createwrap.is-open .bv-create { border-color: var(--chrome-ink); }
.bv-createmenu { display: none; position: absolute; inset-block-start: calc(100% + var(--space-2)); inset-inline-start: 0; z-index: 25; min-inline-size: 220px; padding: var(--space-2); background: var(--surface); border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow-pop); }
.bv-createwrap.is-open .bv-createmenu { display: block; }
.is-expanded .bv-createmenu { inline-size: 100%; min-inline-size: 216px; }
.bv-createmenu__item { display: flex; align-items: center; gap: var(--space-4); inline-size: 100%; padding: 12px var(--space-4); border: 0; border-radius: var(--radius-md); background: none; font: inherit; font-size: 16px; color: var(--ink); text-align: start; cursor: pointer; white-space: nowrap; }
.bv-createmenu__item .bv-icon { color: var(--ink-muted); }
.bv-createmenu__item:hover, .bv-createmenu__item:focus-visible { background: var(--neutral-bg); outline: 0; }
.bv-createmenu__item:hover .bv-icon { color: var(--navy-900); }

/* ======================================================================
   Approvals
   ====================================================================== */
[dir="rtl"] .ap-main [aria-label="Back"] .bv-icon, [dir="rtl"] .ap-bottom .bv-btn-secondary:first-child .bv-icon { transform: scaleX(-1); }
.ap-muted { color: var(--ink-muted); font-size: 14px; }
.ap-pill { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border-radius: 6px; font-size: 13px; font-weight: 500; white-space: nowrap; }
.ap-pill i { inline-size: 6px; block-size: 6px; border-radius: var(--radius-pill); background: currentColor; }
.ap-pill--info { background: var(--blue-50); color: var(--navy-700); }
.ap-pill--warn { background: var(--warning-bg); color: var(--attention-ink); }
.ap-pill--ok { background: var(--success-bg); color: var(--success-ink); }
.ap-pill--danger { background: var(--danger-bg); color: var(--danger-ink); }
.ap-pill--muted { background: var(--neutral-bg); color: var(--ink-muted); }

/* inbox */
.ap-tools { display: flex; align-items: center; gap: var(--space-3); margin-block-end: var(--space-4); }
.ap-tools .cm-search { inline-size: 340px; }
.ap-sort { margin-inline-start: auto; color: var(--ink-muted); font-weight: 400; }
.ap-table { overflow: visible; }
.ap-row { display: grid; grid-template-columns: minmax(0, 2.4fr) 1.15fr 1fr 0.9fr 190px; gap: var(--space-4); align-items: center; padding: var(--space-4) var(--space-6); border-block-start: 1px solid var(--line); }
.ap-row--head { border: 0; padding-block: var(--space-3); background: var(--surface-raised); font-size: 14px; font-weight: 500; color: var(--ink-muted); border-start-start-radius: var(--radius-md); border-start-end-radius: var(--radius-md); }
.ap-row--head > :last-child, .ap-act { justify-self: end; }
.ap-row:hover:not(.ap-row--head) { background: var(--surface-raised); }
.ap-doc { display: flex; align-items: center; gap: var(--space-3); min-inline-size: 0; }
.ap-doc > div { min-inline-size: 0; }
.ap-doc__t { display: block; padding: 0; border: 0; background: none; font: inherit; font-size: 16px; font-weight: 500; color: var(--navy-900); text-align: start; cursor: pointer; }
.ap-doc__t:hover { color: var(--blue-500); text-decoration: underline; }
.ap-doc__m { font-size: 14px; color: var(--ink-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-block-start: 2px; }
.ap-prog { display: grid; gap: 2px; font-size: 14px; }
.ap-prog b { font-weight: 500; color: var(--ink); }
.ap-prog > span:not(.ap-bar) { color: var(--ink-muted); font-size: 13px; }
.ap-bar { display: block; inline-size: 130px; block-size: 4px; border-radius: var(--radius-pill); background: var(--line-soft); margin-block-start: 6px; overflow: hidden; }
.ap-bar > span { display: block; block-size: 100%; background: var(--blue-500); border-radius: inherit; }
.ap-bar.is-done > span { background: var(--success-500); }
.ap-sent { display: grid; gap: 2px; font-size: 14px; }
.ap-sent b { font-weight: 400; color: var(--ink); }
.ap-sent span { font-size: 13px; color: var(--ink-muted); }
.ap-sent span.bv-ink-attention { color: var(--attention-ink); font-weight: 500; }
.ap-act { display: flex; align-items: center; gap: var(--space-2); }
.ap-btn-soft { display: inline-flex; align-items: center; gap: 6px; block-size: 36px; padding-inline: var(--space-4); border: 0; border-radius: var(--radius-md); background: var(--blue-50); color: var(--blue-500); font: inherit; font-size: 15px; font-weight: 500; cursor: pointer; }
.ap-btn-soft:hover { background: var(--blue-200); color: var(--navy-900); }
.ap-sm { block-size: 36px; font-size: 14px; }
.ap-dl { color: var(--ink); }
.ap-more { position: relative; }
.ap-menu { position: absolute; inset-block-start: calc(100% + 4px); inset-inline-end: 0; z-index: 20; min-inline-size: 230px; padding: 6px; background: var(--surface); border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow-pop); }
.ap-menu__i { display: flex; align-items: center; gap: var(--space-3); inline-size: 100%; padding: 10px 12px; border: 0; border-radius: var(--radius-md); background: none; font: inherit; font-size: 15px; color: var(--ink); text-align: start; cursor: pointer; white-space: nowrap; }
.ap-menu__i .bv-icon { color: var(--ink-muted); }
.ap-menu__i:hover { background: var(--neutral-bg); }
.ap-menu__i.is-danger, .ap-menu__i.is-danger .bv-icon { color: var(--danger-ink); }
.ap-menu__i.is-danger:hover { background: var(--danger-bg); }
.ap-group { padding: var(--space-3) var(--space-6); border-block-start: 1px solid var(--line); background: var(--surface-raised); font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-muted); }
.ap-empty { display: flex; align-items: center; justify-content: center; gap: var(--space-2); padding: 48px; border-block-start: 1px solid var(--line); color: var(--ink-muted); }
.ap-foot { display: flex; justify-content: space-between; align-items: center; margin-block-start: var(--space-4); font-size: 14px; color: var(--ink-muted); }

/* details */
.ap-crumb { display: flex; align-items: center; gap: var(--space-2); margin-block-end: var(--space-3); font-size: 15px; color: var(--ink-muted); }
.ap-crumb .bv-linkbtn { color: var(--ink-muted); font-weight: 400; }
.ap-detail { display: grid; grid-template-columns: minmax(0, 1fr) 420px; gap: var(--space-6); align-items: start; margin-block-start: var(--space-6); }
.ap-col { display: grid; gap: var(--space-6); }
.ap-card { padding: var(--space-6); overflow: visible; }
.ap-card--flush { padding: 0; }
.ap-card--flush .ap-h2 { padding: var(--space-6) var(--space-6) var(--space-3); }
.ap-h2 { margin: 0 0 var(--space-4); font-size: 18px; font-weight: 700; color: var(--navy-900); display: flex; align-items: baseline; gap: var(--space-3); }
.ap-h2 small { font-size: 13px; font-weight: 400; color: var(--ink-muted); }
.ap-dl-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-6) var(--space-4); margin: 0; }
.ap-dl-grid dt { font-size: 13px; color: var(--ink-muted); margin-block-end: 6px; }
.ap-dl-grid dd { margin: 0; font-size: 15px; color: var(--ink); }
.ap-who { display: inline-flex; align-items: center; gap: var(--space-3); }
.ap-who .bv-avatar { border: 0; inline-size: 34px; block-size: 34px; font-size: 11px; }
.ap-who b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.ap-who small { display: block; font-size: 13px; color: var(--ink-muted); }
.ap-srow { display: grid; grid-template-columns: 40px minmax(0, 1.6fr) 110px 150px minmax(0, 1fr); gap: var(--space-4); align-items: center; padding: var(--space-3) var(--space-6); border-block-start: 1px solid var(--line); font-size: 14px; color: var(--ink); }
.ap-srow--head { background: var(--surface-raised); font-weight: 500; color: var(--ink-muted); font-size: 13px; }
.ap-num { font-variant-numeric: tabular-nums; color: var(--ink-muted); }
.ap-file { display: flex; align-items: center; gap: var(--space-3); }
.ap-file b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.ap-file small { font-size: 13px; color: var(--ink-muted); }
.ap-file .bv-ghost-icon { margin-inline-start: auto; }
.ap-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
.ap-step { position: relative; display: flex; align-items: center; gap: var(--space-3); padding-block: var(--space-3); }
.ap-step:not(:last-child)::after { content: ""; position: absolute; inset-inline-start: 13px; inset-block-start: 42px; block-size: calc(100% - 30px); inline-size: 2px; background: var(--line); }
.ap-step.is-done:not(:last-child)::after { background: var(--success-500); }
.ap-step__dot { inline-size: 28px; block-size: 28px; border-radius: var(--radius-pill); border: 2px solid var(--line); background: var(--surface); display: grid; place-items: center; font-size: 13px; font-weight: 700; color: var(--ink-muted); flex: none; }
.ap-step.is-done .ap-step__dot { background: var(--success-500); border-color: var(--success-500); color: #fff; }
.ap-step.is-now .ap-step__dot { border-color: var(--blue-500); color: var(--blue-500); box-shadow: 0 0 0 4px var(--blue-50); }
.ap-step .bv-avatar { border: 0; inline-size: 32px; block-size: 32px; font-size: 11px; }
.ap-step b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.ap-step small { font-size: 13px; color: var(--ink-muted); }
.ap-step.is-now small { color: var(--blue-500); font-weight: 500; }

/* shared: document page mock */
.ap-page { position: relative; inline-size: 520px; min-block-size: 660px; padding: 40px 44px 56px; background: var(--surface); border: 1px solid var(--line); box-shadow: 0 2px 8px rgba(3, 17, 98, .08); color: var(--ink); }
.ap-page__txt h4 { margin: 0 0 8px; font-size: 14px; font-weight: 700; color: var(--navy-900); }
.ap-page__txt h5 { margin: 0 0 14px; font-size: 11px; font-weight: 700; letter-spacing: .08em; color: var(--ink-muted); }
.ap-page__txt p { margin: 0 0 12px; font-size: 13px; line-height: 20px; }
.ap-page__txt i { display: block; block-size: 6px; border-radius: 3px; background: var(--line-soft); margin-block: 10px; }
.ap-page__txt i.s { inline-size: 60%; margin-block-end: 24px; }
.ap-page__lbl { margin-block: 24px 14px; font-size: 13px; font-weight: 700; color: var(--navy-900); }
.ap-page__no { position: absolute; inset-block-end: 18px; inset-inline-end: 24px; font-size: 11px; color: var(--ink-muted); }
.ap-page__id { position: absolute; inset-block-end: 18px; inset-inline-start: 44px; font-size: 11px; color: var(--ink-faint); }
.ap-sig { display: block; fill: none; stroke: var(--navy-900); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ap-sig-img { display: block; max-inline-size: 140px; max-block-size: 48px; }
.ap-typed { font-family: "Dancing Script", "Brush Script MT", cursive; font-size: 30px; line-height: 40px; color: var(--navy-900); }

/* request signature */
.ap-req__head { display: flex; align-items: center; gap: var(--space-3); margin-block-end: var(--space-6); }
.ap-title-sm { font-size: 24px; line-height: 30px; }
.ap-stepper { margin: 0 0 0 auto; padding: 0; list-style: none; display: flex; align-items: center; gap: var(--space-3); font-size: 15px; color: var(--ink-muted); }
[dir="rtl"] .ap-stepper { margin: 0 auto 0 0; }
.ap-stepper li { display: inline-flex; align-items: center; gap: 6px; }
.ap-stepper .is-done .bv-icon { color: var(--success-ink); }
.ap-stepper .is-now { color: var(--navy-900); font-weight: 500; }
.ap-stepper .is-now span { inline-size: 24px; block-size: 24px; border-radius: var(--radius-pill); background: var(--blue-500); color: #fff; display: grid; place-items: center; font-size: 13px; }
.ap-stepper__line { inline-size: 64px; block-size: 2px; background: var(--blue-500); }
.ap-req { display: grid; grid-template-columns: 360px minmax(0, 1fr); gap: var(--space-6); align-items: start; }
.ap-req__side { padding: var(--space-6); display: grid; gap: var(--space-4); overflow: visible; }
.ap-note { display: flex; gap: var(--space-3); padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); background: var(--blue-50); color: var(--navy-700); font-size: 14px; line-height: 20px; }
.ap-signer { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); }
.ap-signer__bar { inline-size: 4px; align-self: stretch; border-radius: 2px; background: var(--sc); }
.ap-signer > span:nth-child(2) { flex: 1; }
.ap-signer b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.ap-signer small { font-size: 13px; color: var(--ink-muted); }
.ap-sum { border-block-start: 1px solid var(--line-soft); padding-block-start: var(--space-4); }
.ap-sum__h { display: flex; justify-content: space-between; margin-block-end: var(--space-3); }
.ap-sum dl { display: grid; grid-template-columns: 100px 1fr; gap: 8px var(--space-3); margin: 0; font-size: 14px; }
.ap-sum dt { color: var(--ink-muted); }
.ap-sum dd { margin: 0; color: var(--ink); }
.ap-check { display: flex; gap: var(--space-3); padding-block-start: var(--space-4); border-block-start: 1px solid var(--line-soft); cursor: pointer; }
.ap-check input { inline-size: 18px; block-size: 18px; accent-color: var(--blue-500); margin: 2px 0 0; }
.ap-check b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.ap-check small { font-size: 13px; color: var(--ink-muted); }
.ap-hint { display: flex; gap: var(--space-2); margin: 0; font-size: 13px; color: var(--ink-muted); }
.ap-viewer { background: var(--neutral-bg); border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden; }
.ap-viewer__bar { display: flex; align-items: center; gap: var(--space-3); padding: 10px var(--space-4); background: var(--surface); border-block-end: 1px solid var(--line); font-size: 14px; color: var(--ink); }
.ap-viewer__bar b { font-weight: 500; }
.ap-viewer__nav { margin-inline-start: auto; display: inline-flex; align-items: center; gap: 4px; color: var(--ink-muted); }
.ap-viewer__nav .bv-ghost-icon:first-child .bv-icon { transform: rotate(-90deg); } .ap-viewer__nav .bv-ghost-icon:last-child .bv-icon { transform: rotate(-90deg); }
.ap-viewer__zoom { display: inline-flex; align-items: center; gap: 6px; color: var(--ink-muted); }
.ap-viewer__body { display: flex; gap: var(--space-6); padding: var(--space-6); justify-content: center; }
.ap-thumbs { display: grid; gap: var(--space-3); align-content: start; }
.ap-thumbs span { position: relative; inline-size: 56px; block-size: 72px; border: 1px solid var(--line); border-radius: 4px; background: var(--surface); display: flex; align-items: flex-end; justify-content: center; gap: 4px; padding-block-end: 4px; font-size: 11px; color: var(--ink-muted); }
.ap-thumbs span.is-on { border: 2px solid var(--blue-500); }
.ap-thumbs span i { position: absolute; inset-block-start: 40px; inline-size: 14px; block-size: 6px; border-radius: 2px; }
.ap-thumbs span i:first-child { inset-inline-start: 10px; } .ap-thumbs span i:nth-child(2) { inset-inline-start: 28px; }
.ap-boxes { position: relative; block-size: 220px; }
.ap-box { position: absolute; inline-size: 42%; padding: 10px 12px; border: 2px solid var(--sc); border-radius: 6px; background: color-mix(in srgb, var(--sc) 8%, #fff); color: var(--sc); user-select: none; }
.ap-box b { display: block; font-size: 14px; }
.ap-box small { font-size: 11px; color: var(--ink-muted); }
.ap-box__tag { position: absolute; inset-block-end: 100%; inset-inline-start: -2px; display: inline-flex; align-items: center; gap: 4px; padding: 2px 8px; border-radius: 4px 4px 0 0; background: var(--sc); color: #fff; font-size: 11px; font-weight: 500; cursor: grab; white-space: nowrap; touch-action: none; }
.ap-box__tag:active { cursor: grabbing; }
.ap-box__x { position: absolute; inset-block-start: -10px; inset-inline-end: -10px; inline-size: 22px; block-size: 22px; border-radius: var(--radius-pill); border: 1px solid var(--line); background: var(--surface); color: var(--ink); display: grid; place-items: center; cursor: pointer; padding: 0; }
.ap-bottom { position: sticky; inset-block-end: 0; display: flex; align-items: center; gap: var(--space-4); margin: var(--space-6) calc(var(--space-8) * -1) calc(var(--space-8) * -1); padding: var(--space-4) var(--space-8); background: var(--surface); border-block-start: 1px solid var(--line); }
.ap-bottom .bv-btn-primary { margin-inline-start: auto; }
.bv-btn-primary:disabled { background: var(--blue-200); cursor: not-allowed; }

/* guided signing + signed document */
.ap-sg__head { display: flex; align-items: center; gap: var(--space-3); margin-block-end: var(--space-6); }
.ap-sg__head .cm-ftype { inline-size: 40px; block-size: 40px; font-size: 11px; }
.ap-sg__ttl { flex: 1; min-inline-size: 0; }
.ap-sg__ttl h1 { margin: 0; font-size: 22px; line-height: 30px; font-weight: 700; color: var(--navy-900); display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; }
.ap-sg__ttl p { margin: 2px 0 0; font-size: 14px; color: var(--ink-muted); }
.ap-more--box { border: 1px solid var(--line); }
.ap-sg__stage { position: relative; display: flex; flex-direction: column; align-items: center; gap: var(--space-4); padding: var(--space-6); background: var(--neutral-bg); border: 1px solid var(--line); border-radius: var(--radius-md); min-block-size: 760px; }
.ap-sg__hint { align-self: flex-end; display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: var(--radius-pill); background: var(--surface); border: 1px solid var(--line); font-size: 13px; color: var(--ink); }
.ap-sg__hint .bv-icon { color: var(--violet-ink); }
.ap-sboxes { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 52px var(--space-6); }
.ap-sbox { position: relative; display: flex; flex-direction: column; justify-content: flex-end; gap: 4px; min-block-size: 92px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); font: inherit; text-align: start; color: var(--ink); }
.ap-sbox small { font-size: 11px; color: var(--ink-muted); }
.ap-sbox__who { position: absolute; inset-block-start: calc(100% + 6px); inset-inline-start: 0; font-size: 11px; color: var(--ink-muted); line-height: 15px; }
.ap-sbox__who b { display: block; font-weight: 500; color: var(--ink); }
.ap-sbox.is-other { border-style: dashed; background: var(--surface-raised); justify-content: center; }
.ap-sbox.is-mine { align-items: center; justify-content: center; flex-direction: column; border: 2px solid var(--blue-500); background: var(--blue-50); color: var(--blue-500); cursor: pointer; box-shadow: 0 0 0 4px rgba(50, 77, 245, .18); animation: ap-pulse 1.6s ease-in-out infinite; }
.ap-sbox.is-mine b { font-size: 15px; }
.ap-sbox.is-mine .ap-sbox__who { text-align: start; }
@keyframes ap-pulse { 50% { box-shadow: 0 0 0 8px rgba(50, 77, 245, .08); } }
@media (prefers-reduced-motion: reduce) { .ap-sbox.is-mine { animation: none; } }
.ap-flag { position: absolute; inset-inline-end: calc(100% + 56px); inset-block-start: 30px; display: inline-flex; align-items: center; gap: 4px; padding: 6px 12px; border-radius: 4px; background: var(--blue-500); color: #fff; font-size: 13px; font-weight: 500; white-space: nowrap; }
.ap-flag::after { content: ""; position: absolute; inset-inline-start: 100%; inset-block-start: 50%; translate: 0 -50%; border: 8px solid transparent; border-inline-start-color: var(--blue-500); }
[dir="rtl"] .ap-flag .bv-icon { transform: scaleX(-1); }
.ap-pad { position: absolute; inset-inline-end: 24px; inset-block-start: 200px; inline-size: 360px; padding: var(--space-4); background: var(--surface); border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow-pop); display: grid; gap: var(--space-3); z-index: 5; }
.ap-pad__h { display: flex; justify-content: space-between; align-items: center; font-size: 16px; color: var(--navy-900); }
.ap-pad__sub { margin: 0; font-size: 13px; color: var(--ink-muted); }
.ap-pad__sig, .ap-pad__canvas, .ap-pad__up { display: grid; place-items: center; block-size: 110px; border: 1px dashed var(--line); border-radius: var(--radius-md); background: var(--surface-raised); }
.ap-pad__canvas { inline-size: 100%; cursor: crosshair; touch-action: none; }
.ap-pad__clear { justify-self: end; font-size: 13px; }
.ap-pad__typed { display: grid; place-items: center; block-size: 70px; font-family: "Dancing Script", "Brush Script MT", cursive; font-size: 34px; color: var(--navy-900); }
.ap-pad__up { cursor: pointer; gap: 6px; color: var(--ink-muted); font-size: 14px; padding: 8px; }
.ap-pad__up img { max-block-size: 90px; max-inline-size: 100%; }
.ap-pad__modes { display: flex; gap: var(--space-2); flex-wrap: wrap; }
.ap-pad__modes button { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border: 1px solid transparent; border-radius: var(--radius-md); background: none; font: inherit; font-size: 13px; color: var(--ink); cursor: pointer; }
.ap-pad__modes button:hover { background: var(--neutral-bg); }
.ap-pad__modes button.is-on { border-color: var(--blue-200); background: var(--blue-50); color: var(--navy-700); }
.ap-pad__apply { justify-content: center; }
.ap-pages { display: flex; gap: var(--space-6); justify-content: center; padding: var(--space-6); background: var(--neutral-bg); border: 1px solid var(--line); border-radius: var(--radius-md); }
.ap-pages figure { margin: 0; display: grid; gap: var(--space-3); justify-items: center; }
.ap-pages figcaption { font-size: 13px; color: var(--ink-muted); }
.ap-placedrow { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-6); margin-block-start: 30px; }
.ap-placed { display: grid; gap: 2px; font-size: 11px; color: var(--ink-muted); }
.ap-placed .ap-sig { border-block-end: 1px solid var(--line); padding-block-end: 6px; margin-block-end: 6px; inline-size: 100%; }
.ap-placed b { font-size: 12px; color: var(--navy-900); }
.ap-cert { font-size: 11px; }
.ap-cert__h { display: flex; align-items: center; gap: var(--space-3); padding-block-end: 12px; border-block-end: 2px solid var(--navy-900); margin-block-end: 14px; }
.ap-cert__shield { inline-size: 36px; block-size: 36px; border-radius: var(--radius-pill); background: var(--success-bg); color: var(--success-ink); display: grid; place-items: center; }
.ap-cert__h b { display: block; font-size: 16px; color: var(--navy-900); }
.ap-cert__h small { font-size: 11px; color: var(--ink-muted); }
.ap-cert__ar { margin-inline-start: auto; font-family: var(--font-arabic); font-size: 15px; font-weight: 700; color: var(--navy-900); }
.ap-cert__kv { display: grid; grid-template-columns: 96px 1fr; gap: 5px 10px; margin: 0 0 14px; }
.ap-cert__kv dt { color: var(--ink-muted); }
.ap-cert__kv dd { margin: 0; color: var(--ink); }
.ap-cert__row { display: grid; grid-template-columns: 1.2fr 1.1fr 1fr; gap: 10px; padding-block: 8px; border-block-start: 1px solid var(--line-soft); }
.ap-cert__row span { display: block; color: var(--ink-muted); line-height: 15px; }
.ap-cert__row b { display: block; color: var(--navy-900); font-weight: 500; }
.ap-cert__row .ap-sig { margin-block-start: 4px; stroke-width: 2.4; }
.ap-cert__row--head { background: var(--surface-raised); font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-muted); padding-inline: 6px; font-size: 10px; }
.ap-cert__int { margin-block-start: 14px; }
.ap-cert__int > b { display: block; margin-block-end: 6px; color: var(--navy-900); font-size: 12px; }
.ap-mono { font-family: ui-monospace, "SF Mono", Menlo, monospace; font-size: 10.5px; }
.ap-cert__foot { position: absolute; inset-inline: 44px; inset-block-end: 18px; display: flex; align-items: center; gap: 10px; color: var(--ink-muted); font-size: 10px; line-height: 14px; }
.ap-cert__foot small { margin-inline-start: auto; font-size: 11px; }
.ap-qr { display: grid; grid-template-columns: repeat(7, 4px); gap: 1px; flex: none; }
.ap-qr i { inline-size: 4px; block-size: 4px; background: var(--line-soft); }
.ap-qr i.on { background: var(--navy-900); }

/* ======================================================================
   Organisation
   ====================================================================== */
.og-main .cm-head { align-items: center; }
.og-range { display: inline-flex; align-items: center; gap: 6px; block-size: 40px; padding-inline: 12px; border: 1px solid var(--line); border-radius: var(--radius-sm); color: var(--ink-muted); font-size: 14px; }
.og-range input { border: 0; outline: 0; font: inherit; font-size: 14px; color: var(--ink); background: none; }
.og-pager { display: inline-flex; gap: var(--space-2); }
.og-pager button:first-child .bv-icon { transform: rotate(90deg); }
.og-pager button:last-child .bv-icon { transform: rotate(-90deg); }
[dir="rtl"] .og-pager button:first-child .bv-icon { transform: rotate(-90deg); }
[dir="rtl"] .og-pager button:last-child .bv-icon { transform: rotate(90deg); }
.og-danger { color: var(--danger-ink); }
.ap-menu hr { border: 0; border-block-start: 1px solid var(--line-soft); margin: 4px 0; }

/* information */
.og-info { display: grid; grid-template-columns: minmax(0, 1fr) 420px; gap: var(--space-6); align-items: start; }
.og-info__head { display: flex; align-items: center; gap: var(--space-4); margin-block-end: var(--space-6); }
.og-edit { margin-inline-start: auto; }
.og-logo { position: relative; inline-size: 96px; block-size: 96px; border-radius: var(--radius-pill); background: var(--chrome-800); display: grid; place-items: center; flex: none; }
.og-logo img { max-inline-size: 72px; max-block-size: 40px; }
.og-logo__cam { position: absolute; inset-block-end: 0; inset-inline-end: 0; inline-size: 32px; block-size: 32px; border-radius: var(--radius-pill); background: var(--surface); border: 1px solid var(--line); color: var(--ink); display: grid; place-items: center; cursor: pointer; }
.og-dl { grid-template-columns: repeat(2, 1fr); }
.og-form { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4) var(--space-6); }
.og-form__foot { grid-column: 1 / -1; display: flex; justify-content: flex-end; gap: var(--space-3); }
.og-glances { display: grid; gap: var(--space-2); }
.og-glance { display: flex; align-items: center; gap: var(--space-4); padding: var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); font: inherit; text-align: start; cursor: pointer; color: var(--ink-muted); font-size: 14px; }
.og-glance:hover { border-color: var(--blue-200); background: var(--blue-50); }
.og-glance > span:nth-child(2) { flex: 1; }
.og-glance b { display: block; font-size: 22px; line-height: 28px; color: var(--navy-900); }
[dir="rtl"] .og-glance > .bv-icon:last-child { transform: scaleX(-1); }

/* people & access */
.og-people { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: var(--space-6); align-items: start; container-type: inline-size; }
.og-rail { padding: var(--space-4); overflow: visible; display: flex; flex-direction: column; min-block-size: 560px; }
.og-rail__h { display: flex; justify-content: space-between; padding: 0 var(--space-3) var(--space-3); }
.og-rail__list { flex: 1; display: grid; align-content: start; gap: 2px; }
.og-hr { border: 0; border-block-start: 1px solid var(--line-soft); margin: 6px 0; }
.og-role { position: relative; display: flex; align-items: center; border-radius: var(--radius-md); }
.og-role:hover { background: var(--neutral-bg); }
.og-role.is-on { background: var(--blue-50); box-shadow: inset 3px 0 0 var(--blue-500); }
[dir="rtl"] .og-role.is-on { box-shadow: inset -3px 0 0 var(--blue-500); }
.og-role__b { flex: 1; display: flex; justify-content: space-between; align-items: center; gap: var(--space-2); padding: 10px var(--space-3); border: 0; background: none; font: inherit; font-size: 15px; color: var(--ink); text-align: start; cursor: pointer; }
.og-role.is-on .og-role__b { color: var(--navy-900); font-weight: 500; }
.og-role__b b { font-weight: 500; font-size: 14px; color: var(--ink-muted); font-variant-numeric: tabular-nums; }
.og-role.is-on .og-role__b b { color: var(--blue-500); }
.og-role__m { opacity: 0; padding: 6px; }
.og-role:hover .og-role__m, .og-role.is-on .og-role__m, .og-role__m:focus-visible, .og-role .ap-menu ~ .og-role__m { opacity: 1; }
.og-role .ap-more .ap-menu { inset-inline-end: auto; inset-inline-start: 0; }
.og-addrole { display: flex; align-items: center; justify-content: center; gap: 6px; margin-block-start: var(--space-4); block-size: 42px; border: 1px dashed var(--blue-200); border-radius: var(--radius-md); background: none; font: inherit; font-size: 15px; font-weight: 500; color: var(--blue-500); cursor: pointer; }
.og-addrole:hover { background: var(--blue-50); }
.og-empty { display: grid; justify-items: center; text-align: center; gap: var(--space-2); padding: 40px var(--space-3); }
.og-empty b { color: var(--navy-900); font-size: 16px; }
.og-empty p { margin: 0; font-size: 14px; color: var(--ink-muted); }
.og-rolesel { display: none; align-items: center; gap: 6px; block-size: 40px; padding-inline: 12px; border: 1px solid var(--line); border-radius: var(--radius-sm); color: var(--ink-muted); }
.og-rolesel select { border: 0; background: none; font: inherit; font-size: 15px; color: var(--navy-900); appearance: none; }
@container (max-width: 1000px) { .og-people { grid-template-columns: 1fr; } .og-rail { display: none; } .og-rolesel { display: inline-flex; } }
@media (max-width: 1024px) { .og-people { grid-template-columns: 1fr; } .og-rail { display: none; } .og-rolesel { display: inline-flex; } }
.og-main .ap-tools .cm-search { inline-size: 320px; }
.og-selbox { gap: 4px; color: var(--ink-muted); font-size: 14px; }
.og-selbox select { border: 0; background: none; font: inherit; font-weight: 500; color: var(--navy-900); cursor: pointer; }
.og-bulk { display: flex; align-items: center; gap: var(--space-4); padding: 10px var(--space-4); margin-block-end: var(--space-3); border-radius: var(--radius-md); background: var(--blue-50); color: var(--navy-900); font-size: 14px; }
.og-bulk .bv-ghost-icon { margin-inline-start: auto; }
.og-table { overflow: visible; }
.og-row { display: grid; grid-template-columns: 44px minmax(0, 1.6fr) 110px 120px minmax(0, 1.2fr) minmax(0, 1.2fr) 44px; gap: var(--space-3); align-items: center; padding: 10px var(--space-4); border-block-start: 1px solid var(--line); font-size: 15px; }
.og-row--head { border: 0; background: var(--surface-raised); font-size: 13px; font-weight: 500; color: var(--ink-muted); border-start-start-radius: var(--radius-md); border-start-end-radius: var(--radius-md); }
.og-row.is-sel { background: var(--blue-50); }
.og-row.is-del .ap-who, .og-row.is-del > span:nth-child(4), .og-row.is-del .og-chips { opacity: .55; }
.og-cb input { inline-size: 18px; block-size: 18px; accent-color: var(--blue-500); margin: 0; }
.og-chips { display: inline-flex; gap: 6px; align-items: center; min-inline-size: 0; }
.og-chip { padding: 2px 10px; border-radius: var(--radius-pill); background: var(--neutral-bg); font-size: 13px; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-inline-size: 200px; }
.og-chip--more { color: var(--ink-muted); background: none; border: 1px solid var(--line); padding-inline: 8px; }

/* committees + logs tables */
.og-crow { display: grid; grid-template-columns: 44px minmax(0, 2.4fr) 140px 100px 100px 100px 44px; gap: var(--space-3); align-items: center; padding: 10px var(--space-4); border-block-start: 1px solid var(--line); font-size: 15px; font-variant-numeric: tabular-nums; }
.og-crow .ap-who b { font-weight: 500; }
.og-crow .cm-mono { inline-size: 32px; block-size: 32px; font-size: 11px; }
.og-lrow { display: grid; grid-template-columns: 56px minmax(0, 1fr) 240px minmax(0, 1.6fr); gap: var(--space-3); align-items: center; padding: 10px var(--space-4); border-block-start: 1px solid var(--line); font-size: 15px; }
.og-act { display: flex; align-items: center; gap: var(--space-3); }
.og-act__i { inline-size: 32px; block-size: 32px; border-radius: var(--radius-md); background: var(--neutral-bg); color: var(--ink-muted); display: grid; place-items: center; flex: none; }
.og-act b { display: block; font-weight: 500; color: var(--navy-900); }
.og-act small { font-size: 13px; color: var(--ink-muted); }

/* reports */
.og-reps { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-6); }
.og-rep__h { display: flex; justify-content: space-between; align-items: flex-start; }
.og-rep__n { background: var(--blue-50); color: var(--navy-700); padding-inline: 10px; }
.og-rep__b { display: flex; align-items: center; justify-content: space-between; gap: var(--space-6); margin-block-start: var(--space-4); }
.og-legend { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; flex: 1; max-inline-size: 320px; font-size: 15px; }
.og-legend li { display: grid; grid-template-columns: 12px 1fr auto 44px; align-items: center; gap: var(--space-2); }
.og-legend b { font-weight: 500; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.og-legend small { text-align: end; color: var(--ink-muted); font-size: 13px; }
.og-donut { inline-size: 160px; block-size: 160px; }
.og-arc { transition: stroke-width .15s; cursor: default; }
.og-arc:hover { stroke-width: 26; }
.og-note { display: flex; align-items: center; gap: 6px; margin-block-start: var(--space-4); }

/* panels */
.og-drawer { inline-size: 560px; }
.og-drawer .nc-head { align-items: flex-start; }
.og-2col { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); }
.og-cc { font-size: 14px; color: var(--ink); padding-inline-end: 8px; border-inline-end: 1px solid var(--line); }
.og-bare { flex: 1; min-inline-size: 0; border: 0; outline: 0; font: inherit; font-size: 15px; color: var(--ink); background: none; }
.og-addsel { border: 0; background: none; font: inherit; font-size: 14px; color: var(--blue-500); padding: 6px; cursor: pointer; max-inline-size: 160px; }
.og-again { border: 0; padding: 0; margin-inline-end: auto; align-items: center; }
.og-mods { display: flex; flex-wrap: wrap; gap: 6px; margin-block-end: var(--space-3); }
.og-mod { display: inline-flex; align-items: center; gap: 6px; padding: 4px 6px 4px 12px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); font: inherit; font-size: 14px; color: var(--ink); cursor: pointer; }
.og-mod.is-on { border-color: var(--blue-500); background: var(--blue-50); color: var(--navy-900); font-weight: 500; }
.og-mod .cm-count { min-inline-size: 22px; block-size: 20px; font-size: 12px; }
.og-drop { display: grid; justify-items: center; gap: 6px; padding: 36px var(--space-4); border: 2px dashed var(--line); border-radius: var(--radius-md); background: var(--surface-raised); font: inherit; color: var(--ink-muted); font-size: 14px; cursor: pointer; }
.og-drop:hover { border-color: var(--blue-500); background: var(--blue-50); }
.og-drop b { color: var(--navy-900); font-size: 15px; }
.og-flags { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.og-up { border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden; font-size: 14px; }
.og-up__r { display: grid; grid-template-columns: 32px 1fr 1.4fr 70px; gap: var(--space-2); align-items: center; padding: 8px 12px; border-block-start: 1px solid var(--line-soft); }
.og-up__r.og-row--head { border: 0; border-radius: 0; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; }
.og-up__r.is-bad { background: var(--danger-bg); }
.og-fix { block-size: 34px; font-size: 14px; border-color: var(--danger-line); }
.og-up__r .nc-err { display: block; margin-block-start: 2px; }
.og-up__more { padding: 8px 12px; border-block-start: 1px solid var(--line-soft); color: var(--ink-muted); background: var(--surface-raised); }
.og-ta { block-size: 96px; padding: 10px 12px; resize: vertical; }
.og-quorum { display: flex; align-items: center; gap: var(--space-3); }
.og-quorum .nc-input { inline-size: 90px; }

.og-drawer .nc-file { flex: none; }
.og-chip--more { flex: none; max-inline-size: none; overflow: visible; }
.og-main .cm-actions .bv-select { gap: var(--space-2); }

/* ======================================================================
   My Account
   ====================================================================== */
.ma-main { padding-block-end: 120px; position: relative; }
.ma-layout { display: grid; grid-template-columns: minmax(0, 1fr) 520px; gap: var(--space-6); align-items: start; margin-block-start: var(--space-6); }
.ma-id { display: flex; align-items: center; gap: var(--space-6); padding: var(--space-6); }
.ma-avwrap { position: relative; cursor: pointer; flex: none; border-radius: var(--radius-pill); }
.ma-av { border: 0; font-size: 28px; }
.ma-photo { border-radius: var(--radius-pill); object-fit: cover; display: block; }
.ma-avbadge { position: absolute; inset-block-end: 0; inset-inline-end: 0; inline-size: 28px; block-size: 28px; border-radius: var(--radius-pill); background: var(--blue-500); color: #fff; display: grid; place-items: center; border: 2px solid var(--surface); }
.ma-avwrap:focus-within .ma-avbadge, .ma-avwrap:hover .ma-avbadge { background: var(--navy-700); }
.ma-id__t { flex: 1; min-inline-size: 0; }
.ma-id__t h2 { margin: 0 0 6px; font-size: 24px; line-height: 30px; font-weight: 700; color: var(--navy-900); }
.ma-id__t p { margin: 0; display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; font-size: 15px; }
.ma-h { display: flex; justify-content: space-between; align-items: baseline; padding: var(--space-4) var(--space-6); border-block-end: 1px solid var(--line); }
.ma-h h2 { margin: 0; font-size: 18px; font-weight: 700; color: var(--navy-900); }
.ma-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4) var(--space-6); padding: var(--space-6); }
.ma-grid .nc-label--row i { font-size: 13px; }
.ma-ro { background: var(--neutral-bg); color: var(--ink-muted); border-color: var(--line-soft); cursor: default; }
.ma-ro:focus { box-shadow: none; border-color: var(--line); }
.ma-lock { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 500; color: var(--ink-muted); }
.ma-ok { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; font-weight: 500; color: var(--success-ink); }
.ma-tel.is-error { border-color: var(--danger-ink); }
.ma-row { display: flex; align-items: center; gap: var(--space-4); padding: var(--space-4) var(--space-6); }
.ma-row + .ma-row { border-block-start: 1px solid var(--line-soft); }
.ma-row__i { inline-size: 40px; block-size: 40px; border-radius: var(--radius-md); background: var(--blue-50); color: var(--blue-500); display: grid; place-items: center; flex: none; }
.ma-row__t { flex: 1; min-inline-size: 0; }
.ma-row__t b { display: flex; align-items: center; gap: var(--space-2); font-size: 15px; font-weight: 500; color: var(--navy-900); }
.ma-row__t small { display: block; font-size: 13px; color: var(--ink-muted); margin-block-start: 2px; }
.ma-seg { display: inline-flex; border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden; }
.ma-seg button { padding: 8px 16px; border: 0; background: var(--surface); font: inherit; font-size: 15px; color: var(--ink); cursor: pointer; }
.ma-seg button[lang="ar"] { font-family: var(--font-arabic); }
.ma-seg button[aria-checked="true"] { background: var(--navy-900); color: #fff; }
.ma-bar { position: fixed; inset-inline: calc(var(--rail-width) + var(--space-8)) var(--space-8); inset-block-end: var(--space-6); z-index: 30; display: flex; align-items: center; gap: var(--space-3); padding: 12px 12px 12px var(--space-6); border-radius: 12px; background: var(--chrome-800); color: var(--chrome-ink); box-shadow: var(--shadow-pop); font-size: 15px; animation: ma-up .18s ease-out; }
.is-expanded .ma-bar { inset-inline-start: calc(var(--sidebar-width) + var(--space-8)); }
.ma-bar > span { color: var(--chrome-ink-muted); flex: 1; min-inline-size: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ma-bar__discard { padding: 8px 16px; border: 0; border-radius: var(--radius-md); background: none; font: inherit; font-size: 15px; color: var(--chrome-ink); cursor: pointer; }
.ma-bar__discard:hover { background: var(--chrome-700); }
@keyframes ma-up { from { transform: translateY(12px); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .ma-bar { animation: none; } }
/* dialogs */
.ma-dlg { position: fixed; inset-block-start: 50%; inset-inline-start: 50%; translate: -50% -50%; z-index: 45; max-inline-size: calc(100vw - 32px); background: var(--surface); border-radius: 14px; box-shadow: var(--shadow-pop); color: var(--ink); }
[dir="rtl"] .ma-dlg { translate: 50% -50%; }
.ma-dlg__h { display: flex; justify-content: space-between; align-items: center; padding: var(--space-4) var(--space-6); border-block-end: 1px solid var(--line); }
.ma-dlg__h h2 { margin: 0; font-size: 20px; font-weight: 700; color: var(--navy-900); }
.ma-dlg__b { display: grid; gap: var(--space-4); padding: var(--space-6); }
.ma-dlg__f { display: flex; justify-content: space-between; align-items: center; padding: var(--space-4) var(--space-6); border-block-start: 1px solid var(--line); }
.ma-pw { position: relative; display: block; }
.ma-pw .nc-input { padding-inline-end: 48px; }
.ma-eye { position: absolute; inset-inline-end: 4px; inset-block-start: 50%; translate: 0 -50%; color: var(--ink-muted); }
.ma-meter { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; margin-block-start: -6px; }
.ma-meter i { block-size: 4px; border-radius: 2px; background: var(--line-soft); }
.ma-meter i.on { background: var(--success-500); }
.ma-rules { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 6px var(--space-4); font-size: 14px; color: var(--ink-muted); }
.ma-rules li { display: flex; align-items: center; gap: 6px; }
.ma-rules li.ok { color: var(--success-ink); }
.ma-ring { inline-size: 12px; block-size: 12px; border-radius: var(--radius-pill); border: 1.5px solid var(--ink-faint); margin-inline: 1px; }
.ma-pinwrap { position: relative; display: flex; gap: var(--space-3); justify-content: center; cursor: text; }
.ma-pinbox { inline-size: 52px; block-size: 60px; border: 1.5px solid var(--line); border-radius: var(--radius-md); display: grid; place-items: center; font-size: 28px; color: var(--navy-900); }
.ma-pinbox.on { border-color: var(--navy-900); }
.ma-pinwrap:focus-within .ma-pinbox.cur { border-color: var(--blue-500); box-shadow: 0 0 0 3px var(--blue-50); }
.ma-pininput { position: absolute; inset: 0; opacity: 0; font-size: 16px; }
.ma-dev { display: flex; align-items: center; gap: var(--space-3); padding-block: var(--space-2); }
.ma-dev > span:nth-child(2) { flex: 1; }
.ma-dev b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.ma-dev small { font-size: 13px; color: var(--ink-muted); }
.ma-public { display: grid; justify-items: center; gap: 6px; padding: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface-raised); text-align: center; }
.ma-public .bv-avatar { border: 0; font-size: 22px; }
.ma-public b { font-size: 18px; color: var(--navy-900); }
.ma-public small { font-size: 13px; color: var(--ink-muted); }

/* ======================================================================
   Resolutions
   ====================================================================== */
.rs-tiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-4); margin-block: var(--space-6); }
.rs-tile { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-4) var(--space-6); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); font: inherit; text-align: start; cursor: pointer; }
.rs-tile:hover { border-color: var(--blue-200); }
.rs-tile.is-on { border: 2px solid var(--blue-500); padding: calc(var(--space-4) - 1px) calc(var(--space-6) - 1px); box-shadow: 0 0 0 3px var(--blue-50); }
.rs-tile b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.rs-tile small { font-size: 13px; color: var(--ink-muted); }
.rs-tile strong { font-size: 32px; line-height: 1; font-weight: 700; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.rs-tile strong.warn { color: var(--attention-ink); }
.rs-tools { flex-wrap: wrap; }
.rs-chip { display: inline-flex; align-items: center; gap: 6px; block-size: 36px; padding-inline: 12px 6px; border-radius: var(--radius-pill); background: var(--blue-50); border: 1px solid var(--blue-200); color: var(--navy-700); font: inherit; font-size: 14px; font-weight: 500; white-space: nowrap; }
.rs-chip button { border: 0; background: none; color: inherit; padding: 4px; border-radius: var(--radius-pill); cursor: pointer; display: grid; }
.rs-chip button:hover { background: var(--blue-200); }
.rs-chip--add { background: var(--surface); border-color: var(--line); color: var(--ink); padding-inline: 12px; cursor: pointer; }
.rs-chip--add:hover { border-color: var(--ink-muted); }
.rs-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(360px, 1fr)); gap: var(--space-6); }
.rs-card { padding: var(--space-4) var(--space-6) var(--space-6); display: flex; flex-direction: column; gap: var(--space-3); overflow: visible; }
.rs-card__top { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.rs-card__top .ap-pill .bv-icon { flex: none; }
.rs-card__t { padding: 0; border: 0; background: none; font: inherit; font-size: 17px; line-height: 24px; font-weight: 700; color: var(--navy-900); text-align: start; cursor: pointer; min-block-size: 48px; }
.rs-card__t:hover { color: var(--blue-500); }
.rs-due { margin-block-start: -4px; }
.rs-due .bv-icon { color: var(--ink-muted); }
.rs-vb { padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); background: var(--surface-raised); border: 1px solid var(--line-soft); }
.rs-vb__h { display: flex; justify-content: space-between; align-items: baseline; font-size: 14px; }
.rs-vb__h b { font-weight: 500; color: var(--navy-900); }
.rs-vb__h span { font-size: 13px; color: var(--ink-muted); }
.rs-bar { display: flex; gap: 2px; block-size: 6px; margin-block: 8px; border-radius: var(--radius-pill); background: var(--line-soft); overflow: hidden; }
.rs-bar i { display: block; block-size: 100%; }
.rs-bar i:empty[style*="width:0%"] { display: none; }
.rs-bar .a, .rs-vb__k .a { background: var(--chart-positive); }
.rs-bar .d, .rs-vb__k .d { background: var(--chart-negative); }
.rs-bar .b, .rs-vb__k .b { background: var(--blue-500); }
.rs-vb__k .p { background: var(--line); }
.rs-vb__k { display: flex; flex-wrap: wrap; gap: 4px var(--space-4); font-size: 13px; color: var(--ink-muted); }
.rs-vb__k span { display: inline-flex; align-items: center; gap: 5px; }
.rs-vb__k i { inline-size: 8px; block-size: 8px; border-radius: var(--radius-pill); }
.rs-need { margin-block-start: 4px; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--attention-ink); }
.rs-seg { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden; }
.rs-seg button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; block-size: 40px; border: 0; background: var(--surface); font: inherit; font-size: 15px; font-weight: 500; color: var(--ink); cursor: pointer; }
.rs-seg button + button { border-inline-start: 1px solid var(--line); }
.rs-seg button:nth-child(1) .bv-icon { color: var(--success-ink); }
.rs-seg button:nth-child(2) .bv-icon { color: var(--danger-ink); }
.rs-seg button:nth-child(1):hover { background: var(--success-bg); color: var(--success-ink); }
.rs-seg button:nth-child(2):hover { background: var(--danger-bg); color: var(--danger-ink); }
.rs-seg button:nth-child(3):hover { background: var(--neutral-bg); }
.rs-seg button:focus-visible { outline: 2px solid var(--blue-500); outline-offset: -2px; }
.rs-dash { color: var(--ink-muted); font-weight: 700; }
.rs-done { display: flex; align-items: center; gap: 8px; block-size: 42px; padding-inline: var(--space-4); border-radius: var(--radius-md); font-size: 15px; font-weight: 500; }
.rs-done .bv-linkbtn { margin-inline-start: auto; }
.rs-done--approve { background: var(--success-bg); color: var(--success-ink); }
.rs-done--deny { background: var(--danger-bg); color: var(--danger-ink); }
.rs-done--abstain { background: var(--neutral-bg); color: var(--ink); }
.rs-empty { display: grid; justify-items: center; text-align: center; gap: var(--space-2); padding: 56px var(--space-6); }
.rs-empty b { font-size: 18px; color: var(--navy-900); margin-block-start: 6px; }
.rs-empty p { margin: 0; max-inline-size: 480px; font-size: 15px; color: var(--ink-muted); }
.rs-empty > div { display: flex; gap: var(--space-3); margin-block-start: var(--space-3); }
/* detail */
.rs-dhead { margin-block-end: var(--space-6); }
.rs-detail { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: var(--space-6); align-items: start; }
.rs-desc { margin: 0; font-size: 16px; line-height: 26px; color: var(--ink); }
.rs-files { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); }
.rs-person { display: flex; align-items: center; gap: var(--space-3); padding-block: 8px; border-block-start: 1px solid var(--line-soft); font-size: 15px; }
.rs-person .bv-avatar { border: 0; inline-size: 30px; block-size: 30px; }
.rs-person b { flex: 1; font-weight: 500; color: var(--navy-900); }
.rs-person:first-of-type b::after { content: ""; }
.rs-vp { position: sticky; inset-block-start: var(--space-6); }
.rs-vp__t { font-size: 18px; color: var(--navy-900); }
.rs-opt { display: flex; align-items: center; gap: var(--space-3); inline-size: 100%; block-size: 52px; padding-inline: var(--space-4); margin-block-end: var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); font: inherit; font-size: 16px; font-weight: 500; color: var(--ink); cursor: pointer; }
.rs-radio { inline-size: 20px; block-size: 20px; border-radius: var(--radius-pill); border: 2px solid var(--line); }
.rs-opt--approve:hover { border-color: var(--success-line); background: var(--success-bg); color: var(--success-ink); }
.rs-opt--deny:hover { border-color: var(--danger-line); background: var(--danger-bg); color: var(--danger-ink); }
.rs-opt--abstain:hover { background: var(--neutral-bg); }
.rs-opt:hover .rs-radio { border-color: currentColor; }
.rs-voted { display: grid; gap: var(--space-3); text-align: center; }
.rs-voted__ic { justify-self: center; inline-size: 52px; block-size: 52px; border-radius: var(--radius-pill); display: grid; place-items: center; }
.rs-voted b { font-size: 17px; color: var(--navy-900); }
.rs-voted p { margin: 0; }
.rs-voted .og-ta { text-align: start; }
.rs-voters { display: grid; grid-template-columns: 1fr 1fr; gap: 0 var(--space-4); padding: var(--space-3); margin-block-start: 8px; border: 1px solid var(--line); border-radius: var(--radius-md); font-size: 14px; }
.rs-more summary { display: flex; align-items: center; gap: 4px; padding: 12px var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); cursor: pointer; list-style: none; font-size: 14px; color: var(--navy-900); }
.rs-more summary::-webkit-details-marker { display: none; }
.rs-more summary .bv-icon { margin-inline-start: auto; color: var(--ink-muted); }
.rs-more[open] summary .bv-icon { rotate: 180deg; }
.og-drawer .og-drop { inline-size: 100%; }
.rs-dhead .cm-title[dir="auto"] { text-align: start; }

/* ======================================================================
   Meetings
   ====================================================================== */
.mt-bar { display: flex; align-items: center; gap: var(--space-3); margin-block-start: var(--space-6); }
.mt-bar .cm-search { inline-size: 420px; }
.mt-filters { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.mt-fchip { display: inline-flex; align-items: center; gap: 6px; block-size: 36px; padding-inline: 12px 10px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); font: inherit; font-size: 14px; color: var(--ink-muted); cursor: pointer; }
.mt-fchip b { font-weight: 500; color: var(--ink); }
.mt-fchip.is-on { background: var(--blue-50); border-color: var(--blue-200); color: var(--navy-700); }
.mt-fchip.is-on b { color: var(--navy-900); }
.mt-clear { margin-inline-start: var(--space-2); font-size: 14px; }
.mt-clear:disabled { color: var(--ink-faint); cursor: default; }
.mt-card { padding: var(--space-4) var(--space-6); display: flex; flex-direction: column; gap: var(--space-3); overflow: visible; }
.mt-card__h { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-3); }
.mt-card__m { display: grid; grid-template-columns: 1fr 1fr; gap: 6px var(--space-4); }
.mt-card__m .bv-icon, .mt-head .bv-meta .bv-icon { color: var(--ink-muted); }
.mt-card__a { display: flex; align-items: center; gap: var(--space-2); padding-block-start: var(--space-3); border-block-start: 1px solid var(--line-soft); }
.mt-head { display: flex; justify-content: space-between; align-items: flex-start; padding: var(--space-6); overflow: visible; }
.mt-head .mt-card__m { display: flex; flex-wrap: wrap; gap: 6px var(--space-6); }
.mt-detail { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: var(--space-6); align-items: start; }
.mt-ch { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); flex-wrap: wrap; margin-block-end: var(--space-4); }
.mt-ch__a { display: flex; gap: var(--space-2); }
.mt-tchips { display: flex; gap: 6px; flex-wrap: wrap; margin-block-end: var(--space-4); }
.mt-tchip { display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); font: inherit; font-size: 14px; color: var(--ink); cursor: pointer; }
.mt-tchip span { font-size: 12px; color: var(--ink-muted); }
.mt-tchip.is-on { border-color: var(--blue-500); background: var(--blue-50); color: var(--navy-900); font-weight: 500; }
.mt-item { padding: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); margin-block-end: var(--space-3); }
.mt-item__h { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--space-3); }
.mt-item__h b { font-size: 16px; color: var(--navy-900); }
.mt-item__a { display: flex; gap: 6px; flex: none; }
.mt-item__a .ap-sm { block-size: 32px; padding-inline: 10px; font-size: 13px; }
.mt-item__t { display: flex; gap: 6px; margin-block: 8px; flex-wrap: wrap; }
.mt-item__m { display: flex; align-items: center; gap: var(--space-4); flex-wrap: wrap; }
.mt-item__m .bv-icon { color: var(--ink-muted); }
.mt-item__d { margin: 12px 0 0; padding: 10px 12px; border-radius: var(--radius-md); background: var(--surface-raised); font-size: 14px; line-height: 21px; }
.mt-type { padding: 2px 10px; border-radius: 6px; font-size: 12px; font-weight: 500; }
.mt-type--agenda { background: var(--neutral-bg); color: var(--ink); }
.mt-type--resolution { background: var(--blue-50); color: var(--navy-700); }
.mt-type--action { background: var(--warning-bg); color: var(--attention-ink); }
.mt-type--approval { background: var(--violet-bg); color: var(--violet-ink); }
.mt-files { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border: 1px solid var(--blue-200); border-radius: var(--radius-pill); background: var(--blue-50); font: inherit; font-size: 13px; font-weight: 500; color: var(--navy-700); cursor: pointer; }
.mt-files[aria-expanded="true"] .bv-icon:last-child { rotate: 180deg; }
.mt-part { display: flex; align-items: center; gap: var(--space-3); padding-block: 8px; border-block-start: 1px solid var(--line-soft); }
.mt-part .bv-avatar { border: 0; inline-size: 32px; block-size: 32px; font-size: 11px; }
.mt-part__n { flex: 1; min-inline-size: 0; }
.mt-part__n b { display: block; font-size: 14px; font-weight: 500; color: var(--navy-900); }
.mt-part__n small { font-size: 12px; color: var(--ink-muted); }
.mt-part__s { position: relative; }
.mt-attbtn { display: inline-flex; align-items: center; gap: 2px; border: 0; background: none; padding: 0; cursor: pointer; color: var(--ink-muted); font: inherit; }
.mt-attpop { position: absolute; inset-block-start: calc(100% + 6px); inset-inline-end: -40px; z-index: 20; inline-size: 240px; padding: var(--space-3); background: var(--surface); border: 1px solid var(--line); border-radius: 12px; box-shadow: var(--shadow-pop); display: grid; gap: 4px; }
.mt-attpop__f { display: flex; justify-content: space-between; align-items: center; margin-block-start: 8px; }
.mt-radio { display: flex; align-items: center; gap: 8px; padding: 6px 4px; border-radius: 6px; font-size: 14px; cursor: pointer; }
.mt-radio:hover { background: var(--neutral-bg); }
.mt-radio input { accent-color: var(--blue-500); margin: 0; }
.mt-row2 { display: flex; align-items: center; justify-content: space-between; font-size: 14px; color: var(--ink); }
.mt-row2__r { display: inline-flex; align-items: center; gap: var(--space-3); }
.mt-ag { padding: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface-raised); display: grid; gap: var(--space-4); }
.mt-ag__h { display: flex; justify-content: space-between; align-items: center; font-size: 13px; color: var(--ink-muted); }
.mt-sec { display: grid; gap: var(--space-4); padding-block-end: var(--space-4); }
.mt-sec h3 { margin: 0; font-size: 16px; color: var(--navy-900); }
.mt-sec fieldset { border: 0; margin: 0; padding: 0; display: grid; gap: var(--space-4); min-inline-size: 0; }
.mt-sec fieldset:disabled { opacity: .45; pointer-events: none; }
.mt-toggle { display: flex; align-items: center; gap: var(--space-3); padding: 10px var(--space-4); border-radius: var(--radius-md); background: var(--blue-50); }
.mt-sec.is-off .mt-toggle { background: var(--neutral-bg); }
.mt-toggle b { flex: 1; font-size: 15px; color: var(--navy-900); }
.mt-pri { display: flex; gap: var(--space-4); }
.mt-card__m .bv-meta { min-inline-size: 0; overflow: hidden; }
.mt-card__m .bv-meta { text-overflow: ellipsis; }
.mt-card__a .bv-btn-primary.ap-sm, .mt-card__a .bv-btn-secondary.ap-sm { padding-inline: 12px; font-size: 14px; }
.mt-card__a { flex-wrap: nowrap; min-inline-size: 0; }

/* ======================================================================
   Calendar (what's coming next)
   ====================================================================== */
.cl-main .cm-head { align-items: center; }
.cl-main .cm-search { inline-size: 320px; }
.cl-bar { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; margin-block: var(--space-6) var(--space-4); }
.cl-segs { display: inline-flex; gap: 2px; padding: 4px; border-radius: var(--radius-md); background: var(--neutral-bg); margin-inline-end: var(--space-2); }
.cl-seg { display: inline-flex; align-items: center; gap: 6px; block-size: 34px; padding-inline: 12px; border: 0; border-radius: 6px; background: none; font: inherit; font-size: 15px; color: var(--ink); cursor: pointer; }
.cl-seg.is-on { background: var(--surface); font-weight: 500; color: var(--navy-900); box-shadow: 0 1px 2px rgba(3, 17, 98, .08); }
.cl-seg.is-on .cm-count { background: var(--blue-50); color: var(--blue-500); }
.rs-chip--add.is-set { background: var(--blue-50); border-color: var(--blue-200); color: var(--navy-700); }
.cl-more { border-style: dashed; }
.cl-bar__end { margin-inline-start: auto; display: inline-flex; align-items: center; gap: var(--space-3); }
.cl-view { display: inline-flex; border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden; }
.cl-view button { inline-size: 40px; block-size: 36px; border: 0; background: var(--surface); color: var(--ink-muted); display: grid; place-items: center; cursor: pointer; }
.cl-view button + button { border-inline-start: 1px solid var(--line); }
.cl-view button[aria-pressed="true"] { background: var(--blue-50); color: var(--blue-500); }
.cl-list { overflow: visible; }
.cl-group { padding: 10px var(--space-6); background: var(--surface-raised); border-block-start: 1px solid var(--line); font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-muted); }
.cl-group:first-child { border-block-start: 0; border-start-start-radius: var(--radius-md); border-start-end-radius: var(--radius-md); }
.cl-row { display: grid; grid-template-columns: 56px minmax(0, 1fr) 220px auto; gap: var(--space-4); align-items: center; padding: var(--space-4) var(--space-6); border-block-start: 1px solid var(--line); }
.cl-row:hover { background: var(--surface-raised); }
.cl-row.is-live { box-shadow: inset 3px 0 0 var(--chart-positive); }
[dir="rtl"] .cl-row.is-live { box-shadow: inset -3px 0 0 var(--chart-positive); }
.cl-date { display: grid; justify-items: center; inline-size: 52px; padding-block: 6px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); }
.cl-date small { font-size: 11px; font-weight: 700; letter-spacing: .08em; color: var(--blue-500); }
.cl-date b { font-size: 22px; line-height: 26px; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.cl-t { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.cl-title { padding: 0; border: 0; background: none; font: inherit; font-size: 17px; font-weight: 500; color: var(--navy-900); cursor: pointer; text-align: start; }
.cl-title:hover { color: var(--blue-500); text-decoration: underline; }
.cl-t .ap-pill .bv-icon { flex: none; }
.cl-meta { display: flex; flex-wrap: wrap; gap: 4px var(--space-6); margin-block-start: 6px; }
.cl-ppl { display: inline-flex; align-items: center; gap: var(--space-2); font-size: 14px; color: var(--ink-muted); }
.cl-avs .bv-avatar { inline-size: 26px; block-size: 26px; font-size: 9px; }
.cl-act { display: flex; align-items: center; gap: var(--space-2); justify-content: flex-end; }
.cl-edit { min-inline-size: 64px; color: var(--ink); font-weight: 400; }
.bv-ghost-icon.is-on { background: var(--neutral-bg); box-shadow: inset 0 0 0 1px var(--blue-200); }
.cl-month { padding: var(--space-4) var(--space-6) var(--space-6); }
.cl-month__h { display: flex; align-items: center; gap: var(--space-2); margin-block-end: var(--space-4); font-size: 18px; color: var(--navy-900); }
.cl-month__h .bv-ghost-icon:first-child .bv-icon { transform: rotate(-90deg); }
.cl-month__h .bv-ghost-icon:nth-of-type(2) .bv-icon { transform: rotate(-90deg); }
.cl-grid { display: grid; grid-template-columns: repeat(7, 1fr); border-block-start: 1px solid var(--line); border-inline-start: 1px solid var(--line); }
.cl-wd { padding: 8px; font-size: 13px; font-weight: 500; color: var(--ink-muted); border-block-end: 1px solid var(--line); border-inline-end: 1px solid var(--line); background: var(--surface-raised); }
.cl-cell { min-block-size: 104px; padding: 6px; border-block-end: 1px solid var(--line); border-inline-end: 1px solid var(--line); display: flex; flex-direction: column; gap: 4px; min-inline-size: 0; }
.cl-cell.is-out { background: var(--surface-raised); }
.cl-cell.is-out .cl-cell__n { color: var(--ink-faint); }
.cl-cell__n { font-size: 13px; color: var(--ink); inline-size: 26px; block-size: 26px; display: grid; place-items: center; border-radius: var(--radius-pill); }
.cl-cell.is-today .cl-cell__n { background: var(--blue-500); color: #fff; font-weight: 700; }
.cl-chip { padding: 3px 6px; border: 0; border-radius: 4px; font: inherit; font-size: 12px; text-align: start; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: pointer; background: var(--blue-50); color: var(--navy-700); box-shadow: inset 3px 0 0 var(--blue-500); }
.cl-chip--live { background: var(--success-bg); color: var(--success-ink); box-shadow: inset 3px 0 0 var(--chart-positive); }
.cl-chip--draft, .cl-chip--completed { background: var(--neutral-bg); color: var(--ink-muted); box-shadow: inset 3px 0 0 var(--ink-faint); }

/* ===== Persona profile (pp-) ===== */
.pp-main { display: block; }
.pp-head { display: flex; align-items: flex-start; gap: var(--space-6); padding: var(--space-6); overflow: visible; }
.pp-av { inline-size: 88px; block-size: 88px; font-size: 28px; border: 0; }
.pp-head__t { flex: 1; min-inline-size: 0; }
.pp-name { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-3); }
.pp-name h1 { margin: 0; font-size: 28px; line-height: 36px; font-weight: 700; color: var(--navy-900); }
.pp-alt { font-family: var(--font-arabic); font-size: 18px; color: var(--ink-muted); }
.pp-alt[lang="en"] { font-family: var(--font-sans); }
.pp-badge { padding: 3px 10px; border-radius: 6px; background: var(--navy-900); color: #fff; font-size: 13px; font-weight: 500; }
.pp-title { margin: 4px 0 0; font-size: 16px; color: var(--ink); }
.pp-chips { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); margin-block-start: var(--space-4); }
.pp-chip { padding: 4px 12px; border: 1px solid var(--line); border-radius: var(--radius-pill); font-size: 13px; color: var(--ink); background: var(--surface); }
.pp-chip.is-lead { border-color: var(--blue-200); background: var(--blue-50); color: var(--navy-700); font-weight: 500; }
.pp-since { margin-inline-start: var(--space-2); font-size: 14px; color: var(--ink-muted); }
.pp-head__a { display: flex; align-items: center; gap: var(--space-2); flex: none; }
.pp-more { border: 1px solid var(--line); inline-size: 40px; block-size: 40px; }
.pp-layout { display: grid; grid-template-columns: minmax(0, 1fr) 460px; gap: var(--space-6); align-items: start; margin-block-start: var(--space-6); }
.pp-card { padding: var(--space-6); }
.pp-ch { display: flex; align-items: center; gap: var(--space-3); }
.pp-ch h2 { margin: 0; font-size: 18px; font-weight: 700; color: var(--navy-900); }
.pp-chs { margin-inline-start: auto; font-size: 14px; }
.pp-regen { margin-inline-start: auto; }
.pp-regen[disabled] { color: var(--ink-faint); cursor: default; }
.pp-ai { display: inline-flex; align-items: center; gap: 4px; padding: 2px 8px; border-radius: 6px; background: var(--violet-bg); color: var(--violet-ink); border: 1px solid var(--violet-line); font-size: 12px; font-weight: 700; letter-spacing: .04em; flex: none; }
.pp-meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3); margin-block: var(--space-3) var(--space-4); font-size: 14px; }
.pp-meta .ap-pill .bv-icon, .ma-persona .ap-pill .bv-icon { flex: none; }
.pp-sum { margin: 0; font-size: 15px; line-height: 24px; color: var(--ink); max-inline-size: 78ch; }
.pp-text { inline-size: 100%; block-size: auto; min-block-size: 140px; padding: 12px; line-height: 22px; resize: vertical; box-sizing: border-box; }
.pp-acts { display: flex; justify-content: flex-end; align-items: center; gap: var(--space-3); margin-block-start: var(--space-4); padding-block-start: var(--space-4); border-block-start: 1px solid var(--line-soft); }
.pp-fit { display: grid; margin-block-start: var(--space-4); }
.pp-fit__r { display: grid; grid-template-columns: 170px 150px 90px minmax(0, 1fr); align-items: center; gap: var(--space-4); padding-block: 14px; border-block-start: 1px solid var(--line-soft); font-size: 14px; }
.pp-fit__r b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.pp-bar { display: grid; grid-template-columns: repeat(5, 1fr); gap: 4px; }
.pp-bar i { block-size: 8px; border-radius: 2px; background: var(--line); }
.pp-bar i.on { background: var(--blue-500); }
.pp-lv { font-weight: 500; color: var(--navy-900); }
.pp-lv--5 { color: var(--success-ink); }
.pp-lv--3 { color: var(--attention-ink); }
.pp-fit--wait .pp-fit__r { opacity: .6; }
.pp-note { display: flex; align-items: center; gap: var(--space-2); margin: var(--space-2) 0 0; padding: 10px 12px; border-radius: var(--radius-md); background: var(--neutral-bg); font-size: 13px; color: var(--ink-muted); }
.pp-tags { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-block-start: var(--space-4); }
.pp-tag { padding: 6px 14px; border-radius: var(--radius-pill); background: var(--blue-50); color: var(--navy-700); font-size: 14px; font-weight: 500; }
.pp-roles { display: flex; flex-wrap: wrap; gap: var(--space-2); padding: var(--space-4) var(--space-6); }
.pp-role { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border: 1px solid var(--line); border-radius: var(--radius-md); font-size: 14px; font-weight: 500; color: var(--navy-900); }
.pp-role .bv-icon { color: var(--blue-500); }
.pp-foot { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-6); border-block-start: 1px solid var(--line); background: var(--surface-raised); font-size: 13px; }
.pp-foot .ap-muted { display: inline-flex; align-items: center; gap: 6px; }
.pp-foot .bv-linkbtn { font-size: 14px; }
.pp-empty { display: grid; justify-items: center; gap: var(--space-2); padding: 48px var(--space-6); text-align: center; }
.pp-empty b { font-size: 18px; color: var(--navy-900); }
.pp-empty p { margin: 0 0 var(--space-3); max-inline-size: 420px; color: var(--ink-muted); }
.pp-used { display: flex; gap: var(--space-4); }
.pp-used b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.pp-used ul { list-style: none; margin: 6px 0 0; padding: 0; display: grid; gap: 4px; font-size: 14px; color: var(--ink); }
.pp-used li { display: flex; align-items: center; gap: 6px; }
.pp-used li .bv-icon { color: var(--success-ink); }
.pp-notused { display: flex; align-items: flex-start; gap: var(--space-2); padding: 12px; border-radius: var(--radius-md); background: var(--neutral-bg); font-size: 14px; color: var(--ink); }
.pp-notused .bv-icon { flex: none; margin-block-start: 2px; color: var(--ink-muted); }
.pp-check { display: flex; align-items: flex-start; gap: var(--space-3); padding: 10px 0; cursor: pointer; }
.pp-check + .pp-check { border-block-start: 1px solid var(--line-soft); }
.pp-check input { inline-size: 18px; block-size: 18px; margin: 2px 0 0; accent-color: var(--blue-500); flex: none; }
.pp-check b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.pp-check small { display: block; font-size: 13px; color: var(--ink-muted); margin-block-start: 2px; }
.pp-danger { background: var(--danger-ink); }
.pp-danger:hover:not([disabled]) { background: #8f1d24; }
.og-name { background: none; border: 0; padding: 0; font: inherit; cursor: pointer; text-align: start; }
.og-name b { text-decoration: underline; text-decoration-color: var(--blue-200); text-underline-offset: 3px; }
.og-name:hover b { color: var(--blue-500); }
.ma-persona { display: flex; align-items: center; gap: var(--space-4); padding: var(--space-4) var(--space-6); }
[dir="rtl"] .ap-crumb .bv-icon, [dir="rtl"] .ma-persona .ap-btn-soft .bv-icon { rotate: 180deg; }
@media (max-width: 1200px) { .pp-layout { grid-template-columns: 1fr; } .pp-fit__r { grid-template-columns: 140px 120px 80px minmax(0, 1fr); } }
.pp-danger:disabled { background: var(--danger-line); }

/* ===== Action Tracker (at-) ===== */
.at-main { padding: 0; }
.at-wrap { display: grid; grid-template-columns: minmax(0, 1fr) 360px; min-block-size: 100%; }
.at-content { padding: var(--space-8); min-inline-size: 0; }
.at-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); margin-block: var(--space-6); }
.at-stat { display: flex; align-items: center; gap: var(--space-4); padding: var(--space-4) var(--space-6); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); text-align: start; cursor: pointer; }
.at-stat:hover { border-color: var(--ink-muted); }
.at-stat.is-on { border-color: var(--blue-500); box-shadow: 0 0 0 3px var(--blue-50); }
.at-stat__i { inline-size: 40px; block-size: 40px; border-radius: var(--radius-pill); display: grid; place-items: center; background: var(--blue-50); color: var(--navy-900); flex: none; }
.at-stat--late .at-stat__i { background: var(--danger-bg); color: var(--danger-ink); }
.at-stat--week .at-stat__i { background: var(--warning-bg); color: var(--attention-ink); }
.at-stat--done .at-stat__i { background: var(--success-bg); color: var(--success-ink); }
.at-stat b { display: block; font-size: 28px; line-height: 32px; font-weight: 700; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.at-stat--late b { color: var(--danger-ink); }
.at-stat small { display: block; font-size: 14px; color: var(--ink-muted); }
.at-tools { flex-wrap: wrap; }
.at-tools .cm-search { inline-size: 300px; }
.at-views { margin-inline: auto 0; }
.at-fmenu { min-inline-size: 260px; padding-block-end: 4px; }
.at-fmenu__h { padding: 8px 12px 4px; font-size: 12px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-muted); }
.at-fopt { display: flex; align-items: center; gap: var(--space-3); padding: 8px 12px; border-radius: 8px; cursor: pointer; }
.at-fopt:hover { background: var(--neutral-bg); }
.at-fopt input { inline-size: 18px; block-size: 18px; margin: 0; accent-color: var(--blue-500); }
.at-chips { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); margin-block-end: var(--space-4); font-size: 14px; }
.at-chips .bv-linkbtn { font-size: 14px; margin-inline: var(--space-2); }
.at-board { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); align-items: start; }
.at-col { border-radius: var(--radius-md); background: var(--surface-raised); border: 1px solid var(--line-soft); min-inline-size: 0; transition: background .12s, border-color .12s; }
.at-col.is-over { background: var(--blue-50); border-color: var(--blue-500); border-style: dashed; }
.at-col__h { display: flex; align-items: center; gap: var(--space-2); padding: 12px var(--space-4); }
.at-col__h h2 { margin: 0; font-size: 16px; font-weight: 700; color: var(--navy-900); }
.at-col__dot { inline-size: 10px; block-size: 10px; border-radius: var(--radius-pill); background: var(--chart-neutral); flex: none; }
.at-col__dot--doing { background: var(--blue-500); }
.at-col__dot--done { background: var(--success-500); }
.at-add { margin-inline-start: auto; padding: 2px; margin-block: -2px; }
.at-col__b { display: grid; gap: var(--space-3); padding: 0 var(--space-3) var(--space-3); }
.at-col__empty { padding: 28px; border: 1px dashed var(--line); border-radius: var(--radius-md); text-align: center; font-size: 14px; color: var(--ink-faint); }
.at-card { position: relative; display: grid; gap: 8px; padding: 14px var(--space-4); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); cursor: grab; }
.at-card:hover { border-color: var(--ink-muted); }
.at-card.is-late { border-inline-start: 4px solid var(--danger-ink); padding-inline-start: 13px; }
.at-card.is-done .at-card__t { color: var(--ink-muted); }
.at-card.is-drag { opacity: .45; }
.at-card__top { display: flex; align-items: center; justify-content: space-between; margin-block: -4px -2px; }
.at-dots { padding: 4px; margin-inline-end: -6px; }
.at-card__t { display: block; padding: 0; border: 0; background: none; font: inherit; font-size: 15px; line-height: 21px; font-weight: 500; color: var(--navy-900); text-align: start; cursor: pointer; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.at-card__t:hover { color: var(--blue-500); text-decoration: underline; }
.at-card__m { display: flex; align-items: center; gap: 6px; margin: 0; font-size: 13px; color: var(--ink-muted); min-inline-size: 0; }
.at-card__m span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.at-card__m .bv-icon { flex: none; }
.at-card__f { display: flex; align-items: center; flex-wrap: wrap; gap: 6px var(--space-3); margin-block-start: 2px; }
.at-due { display: inline-flex; align-items: center; gap: 5px; padding: 2px 8px; border-radius: 6px; background: var(--neutral-bg); color: var(--ink); font-size: 13px; font-weight: 500; white-space: nowrap; }
.at-due--late { background: var(--danger-bg); color: var(--danger-ink); }
.at-due--today { background: var(--warning-bg); color: var(--attention-ink); }
.at-due--done { background: var(--success-bg); color: var(--success-ink); }
.at-meta { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; color: var(--ink-muted); }
.at-owner { display: inline-flex; align-items: center; gap: 6px; margin-inline-start: auto; font-size: 13px; color: var(--ink); min-inline-size: 0; }
.at-owner span:last-child { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.at-av { border: 0; inline-size: 26px; block-size: 26px; font-size: 10px; }
.at-prio { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 500; color: var(--ink); }
.at-prio i { inline-size: 8px; block-size: 8px; border-radius: 2px; background: var(--chart-neutral); }
.at-prio--high { color: var(--danger-ink); } .at-prio--high i { background: var(--danger-ink); }
.at-prio--medium { color: var(--attention-ink); } .at-prio--medium i { background: var(--chart-pending); }
.at-prio--low i { background: var(--chart-neutral); }
.at-empty { padding: 56px; }
/* list */
.at-table { overflow: visible; }
.at-tr { display: grid; grid-template-columns: minmax(0, 1fr) 190px 170px 110px 160px; align-items: center; gap: var(--space-4); padding: 12px var(--space-6); border-block-start: 1px solid var(--line-soft); }
.at-th { border: 0; font-size: 13px; font-weight: 500; color: var(--ink-muted); }
.at-tr.is-late { box-shadow: inset 4px 0 0 var(--danger-ink); }
[dir="rtl"] .at-tr.is-late { box-shadow: inset -4px 0 0 var(--danger-ink); }
.at-tr__a { min-inline-size: 0; }
.at-tr__a small { display: flex; align-items: center; gap: 5px; margin-block-start: 2px; font-size: 13px; color: var(--ink-muted); }
.at-tr .at-owner { margin: 0; }
.at-stsel { block-size: 36px; }
/* today panel */
.at-side { border-inline-start: 1px solid var(--line); background: var(--surface-raised); padding: var(--space-6); display: flex; flex-direction: column; gap: var(--space-6); }
.at-side__h b { display: block; margin-block-start: 2px; font-size: 20px; color: var(--navy-900); }
.at-side__s h3 { display: flex; align-items: center; gap: var(--space-2); margin: 0 0 var(--space-3); font-size: 15px; font-weight: 700; color: var(--navy-900); }
.at-side__sub { margin: -6px 0 var(--space-3); font-size: 13px; }
.at-ti { display: flex; align-items: flex-start; gap: var(--space-3); padding: 10px 12px; margin-block-end: var(--space-2); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); }
.at-ti__t { flex: 1; min-inline-size: 0; display: grid; gap: 6px; }
.at-ti__t .at-card__t { font-size: 14px; line-height: 19px; }
.at-ti__r { font-size: 13px; flex: none; }
.at-check { inline-size: 22px; block-size: 22px; flex: none; margin-block-start: 1px; border: 2px solid var(--ink-faint); border-radius: var(--radius-pill); background: var(--surface); color: transparent; display: grid; place-items: center; cursor: pointer; padding: 0; }
.at-check:hover { border-color: var(--success-500); color: var(--success-500); }
.at-none { display: flex; align-items: center; gap: 6px; margin: 0; font-size: 14px; }
.at-prog { block-size: 8px; border-radius: var(--radius-pill); background: var(--line); overflow: hidden; }
.at-prog i { display: block; block-size: 100%; background: var(--success-500); border-radius: inherit; }
.at-side .at-prog + .at-side__sub { margin-block-start: 8px; }
/* drawers */
.at-drawer { inline-size: 560px; }
.at-stseg { flex: 1; max-inline-size: 380px; }
.at-stseg .cm-seg__btn { flex: 1; justify-content: center; }
.at-dt { margin: 0; font-size: 22px; line-height: 30px; font-weight: 700; color: var(--navy-900); }
.at-latebar { display: flex; align-items: center; gap: var(--space-2); margin: var(--space-3) 0 0; padding: 10px 12px; border-radius: var(--radius-md); background: var(--danger-bg); color: var(--danger-ink); font-size: 14px; font-weight: 500; }
.at-latebar .bv-linkbtn { margin-inline-start: auto; font-size: 14px; }
.at-dl { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 12px var(--space-4); margin: 0; align-items: center; font-size: 15px; }
.at-dl dt { color: var(--ink-muted); font-size: 14px; }
.at-dl dd { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; }
.at-dl .at-owner { margin: 0; font-size: 15px; }
.at-dl small { font-size: 13px; }
.at-h3 { display: flex; align-items: center; gap: var(--space-2); margin: 0 0 var(--space-3); font-size: 16px; font-weight: 700; color: var(--navy-900); }
.at-p { margin: 0; font-size: 15px; line-height: 23px; }
.at-sub { display: flex; align-items: center; gap: var(--space-3); padding: 9px 0; border-block-end: 1px solid var(--line-soft); font-size: 15px; cursor: pointer; }
.at-sub input { inline-size: 18px; block-size: 18px; margin: 0; accent-color: var(--success-500); }
.at-sub.is-on span { color: var(--ink-muted); text-decoration: line-through; }
.at-h3 + .at-prog { margin-block-end: var(--space-2); }
.at-addsub { display: flex; align-items: center; gap: var(--space-3); padding: 9px 0; color: var(--blue-500); }
.at-addsub input { flex: 1; border: 0; outline: 0; font: inherit; font-size: 15px; background: none; color: var(--ink); }
.at-note { display: flex; gap: var(--space-3); margin-block-end: var(--space-3); }
.at-note b { font-size: 14px; color: var(--navy-900); }
.at-note p { margin: 2px 0 0; font-size: 14px; line-height: 21px; }
.at-post { display: grid; gap: var(--space-2); justify-items: end; }
.at-ta { block-size: auto; padding-block: 10px; line-height: 22px; resize: vertical; }
.at-2 { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); }
.at-pseg { display: grid; grid-template-columns: repeat(3, 1fr); }
.at-pseg .cm-seg__btn { justify-content: center; }
.at-undo { margin-inline-start: var(--space-3); padding: 0; border: 0; background: none; color: var(--blue-200); font-weight: 700; cursor: pointer; }
@media (max-width: 1500px) { .at-wrap { grid-template-columns: minmax(0, 1fr) 320px; } .at-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ===== Minutes of meeting (mm-) and versions (mv-) ===== */
.mm-hmenu { min-inline-size: 290px; }
.mm-hmenu .ap-menu__i .ap-pill, .mm-hint { margin-inline-start: auto; }
.mm-hint { font-size: 13px; color: var(--ink-muted); }
.mm-hmenu .at-fmenu__h { padding-inline: 10px; }
.mm-strip { display: flex; align-items: center; gap: var(--space-4); margin-block-start: var(--space-4); padding: var(--space-4) var(--space-6); }
.mm-strip__t { flex: 1; min-inline-size: 0; }
.mm-strip__t b { display: flex; align-items: center; gap: var(--space-2); font-size: 15px; font-weight: 500; color: var(--navy-900); }
.mm-strip__t small { display: block; margin-block-start: 2px; font-size: 13px; color: var(--ink-muted); }
.mm-drawer { inline-size: 920px; }
.mm-h { min-inline-size: 0; }
.mm-h h2 { margin: 0; font-size: 20px; font-weight: 700; color: var(--navy-900); }
.mm-h p { margin: 2px 0 0; font-size: 13px; color: var(--ink-muted); }
.mm-drawer .nc-head .bv-ghost-icon, .mv-drawer .nc-head > .bv-ghost-icon:last-child { margin-inline-start: 0; }
.mm-drawer .nc-head > .ap-pill { margin-inline-start: auto; }
.mm-saved { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; color: var(--ink-muted); white-space: nowrap; }
.mm-bar { display: flex; align-items: center; gap: var(--space-6); padding: 12px var(--space-6); border-block-end: 1px solid var(--line); background: var(--surface-raised); }
.mm-prog { display: grid; gap: 6px; inline-size: 240px; }
.mm-prog b { font-size: 14px; font-weight: 500; color: var(--navy-900); }
.mm-aibtn { display: inline-flex; align-items: center; gap: 6px; margin-inline-start: auto; block-size: 36px; padding-inline: 14px; border: 1px solid var(--violet-line); border-radius: var(--radius-md); background: var(--violet-bg); color: var(--violet-ink); font-size: 14px; font-weight: 500; cursor: pointer; }
.mm-aibtn:hover { border-color: var(--violet-ink); }
.mm-bar > .ap-muted { margin-inline-start: auto; }
.mm-body { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: var(--space-6); align-items: start; padding-block-start: var(--space-4); }
.mm-nav { position: sticky; inset-block-start: 0; display: grid; gap: 2px; }
.mm-nav__i { display: flex; align-items: flex-start; gap: 10px; padding: 8px 10px; border: 0; border-radius: 8px; background: none; font-size: 14px; line-height: 19px; color: var(--ink); text-align: start; cursor: pointer; }
.mm-nav__i:hover { background: var(--neutral-bg); }
.mm-dot { inline-size: 16px; block-size: 16px; margin-block-start: 1px; border: 2px solid var(--line); border-radius: var(--radius-pill); display: grid; place-items: center; flex: none; color: #fff; }
.mm-nav__i.is-ok .mm-dot { background: var(--success-500); border-color: var(--success-500); }
.mm-secs { display: grid; gap: var(--space-6); min-inline-size: 0; }
.mm-sec { display: grid; gap: 10px; scroll-margin-block-start: 8px; }
.mm-sec__h { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; }
.mm-sec__h h3 { margin: 0; font-size: 16px; font-weight: 700; color: var(--navy-900); }
.mm-sec__a { display: flex; gap: 4px; margin-inline-start: auto; }
.mm-mini { display: inline-flex; align-items: center; gap: 5px; block-size: 30px; padding-inline: 10px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); color: var(--ink); font-size: 13px; cursor: pointer; }
.mm-mini:hover { border-color: var(--ink-muted); }
.mm-mini.is-rec { border-color: var(--danger-ink); color: var(--danger-ink); background: var(--danger-bg); }
.mm-recdot { inline-size: 8px; block-size: 8px; border-radius: var(--radius-pill); background: var(--danger-ink); animation: mm-pulse 1.2s infinite; }
@keyframes mm-pulse { 50% { opacity: .3; } }
.mm-listen { display: inline-flex; align-items: center; gap: 6px; margin-inline-start: auto; font-size: 13px; color: var(--danger-ink); }
.mm-sep { inline-size: 1px; block-size: 18px; margin-inline: 4px; background: var(--line); }
.mm-ctx { display: flex; align-items: center; flex-wrap: wrap; gap: 8px var(--space-4); padding: 10px 12px; border-radius: var(--radius-md); background: var(--surface-raised); border: 1px solid var(--line-soft); font-size: 14px; }
.mm-ctx__l { font-size: 12px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-muted); }
.mm-out { padding: 3px; }
.mm-out .cm-seg__btn { block-size: 28px; padding-inline: 12px; font-size: 13px; }
.mm-votes { display: inline-flex; align-items: center; gap: 5px; color: var(--ink-muted); }
.mm-votes b { color: var(--navy-900); }
.mm-rte { min-block-size: 84px; }
.mm-rte:empty::before { content: attr(data-ph); color: var(--ink-faint); pointer-events: none; }
.mm-sec.is-ai .mm-ed { border-color: var(--violet-line); box-shadow: inset 3px 0 0 var(--violet-ink); }
[dir="rtl"] .mm-sec.is-ai .mm-ed { box-shadow: inset -3px 0 0 var(--violet-ink); }
.mm-foot { flex-wrap: wrap; }
.mm-foot__s { display: inline-flex; align-items: center; gap: 6px; margin-inline-end: auto; font-size: 13px; color: var(--ink-muted); }
.mm-foot__s .bv-icon { color: var(--success-500); }
.mm-pub { flex: 1 1 100%; display: grid; gap: 4px; padding: 12px 14px; margin-block-end: 4px; border-radius: var(--radius-md); background: var(--blue-50); }
.mm-pub > b { color: var(--navy-900); }
.mm-pub > .ap-muted { font-size: 13px; }
.mm-pub + .nc-cancel { margin-inline-start: auto; }
/* status dialog */
.mm-opt { display: flex; align-items: flex-start; gap: var(--space-3); padding: 12px 14px; border: 1px solid var(--line); border-radius: var(--radius-md); cursor: pointer; }
.mm-opt:hover { border-color: var(--ink-muted); }
.mm-opt.is-on { border-color: var(--blue-500); background: var(--blue-50); }
.mm-opt input { margin: 3px 0 0; inline-size: 18px; block-size: 18px; accent-color: var(--blue-500); flex: none; }
.mm-opt b { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.mm-opt small { display: block; margin-block-start: 2px; font-size: 13px; color: var(--ink-muted); }
/* versions */
.mv-drawer { inline-size: 620px; }
.mv-drawer .nc-head > .bv-ghost-icon:last-child { margin-inline-start: auto; }
.mv-intro { display: flex; gap: 8px; margin: 0; padding: 10px 12px; border-radius: var(--radius-md); background: var(--neutral-bg); font-size: 14px; color: var(--ink); }
.mv-intro .bv-icon { flex: none; margin-block-start: 2px; color: var(--ink-muted); }
.mv-list { list-style: none; margin: 0; padding: 0; display: grid; }
.mv-item { position: relative; display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: var(--space-3); padding-block-end: var(--space-4); }
.mv-item::before { content: ""; position: absolute; inset-inline-start: 11px; inset-block: 18px 0; inline-size: 2px; background: var(--line); }
.mv-item:last-child::before { display: none; }
.mv-dot { position: relative; z-index: 1; inline-size: 14px; block-size: 14px; margin: 14px 5px 0; border-radius: var(--radius-pill); background: var(--success-500); box-shadow: 0 0 0 3px var(--surface); }
.mv-dot.is-draft { background: var(--surface); border: 2px dashed var(--chart-pending); }
.mv-card { padding: 14px var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); }
.mv-item.is-cur .mv-card { border-style: dashed; }
.mv-top { display: flex; align-items: center; gap: var(--space-3); }
.mv-v { font-size: 18px; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.mv-note { margin: 8px 0 4px; font-size: 15px; color: var(--ink); }
.mv-by { display: flex; align-items: center; gap: 6px; margin: 0; font-size: 13px; color: var(--ink-muted); }
.mv-acts { display: flex; align-items: center; gap: var(--space-2); margin-block-start: 12px; }
.mv-acts .bv-linkbtn { margin-inline-start: auto; font-size: 14px; }
.mv-confirm { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-3); margin-block-start: 12px; padding: 10px 12px; border-radius: var(--radius-md); background: var(--warning-bg); font-size: 14px; color: var(--ink); }
.mv-confirm > span { flex: 1 1 260px; }
.mv-legend { display: flex; flex-wrap: wrap; gap: 8px var(--space-4); font-size: 13px; }
.mv-drawer ins, .mv-drawer del { padding: 1px 3px; border-radius: 3px; }
.mv-drawer ins { text-decoration: none; }
.mv-drawer ins { background: var(--success-bg); color: var(--success-ink); }
.mv-drawer del { background: var(--danger-bg); color: var(--danger-ink); text-decoration: line-through; }
.mv-diff { padding: 14px var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); }
.mv-diff h4 { display: flex; align-items: center; gap: 8px; margin: 0 0 8px; font-size: 15px; color: var(--navy-900); }
.mv-diff p { margin: 0; font-size: 15px; line-height: 26px; }
.mm-doc { padding: var(--space-6); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); }
.mm-doc__t { margin: 0; font-size: 20px; color: var(--navy-900); }
.mm-doc__m { margin: 4px 0 var(--space-4); font-size: 13px; }
.mm-doc section { padding-block: 12px; border-block-start: 1px solid var(--line-soft); }
.mm-doc h4 { display: flex; align-items: center; gap: 8px; margin: 0 0 6px; font-size: 15px; color: var(--navy-900); }
.mm-doc div { font-size: 15px; line-height: 23px; }
.mm-doc p { margin: 0; }

/* ===== Meeting status dialog (st-) ===== */
.ap-menu__i > .ap-pill { margin-inline-start: auto; }
.st-dlg .ma-dlg__b { gap: 10px; }
.st-title { display: flex; align-items: center; gap: var(--space-3); min-inline-size: 0; }
.st-title h2 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.st-flow { list-style: none; display: flex; align-items: center; margin: 0 0 6px; padding: 12px 14px; border-radius: var(--radius-md); background: var(--surface-raised); border: 1px solid var(--line-soft); font-size: 13px; color: var(--ink-muted); }
.st-flow li { display: flex; align-items: center; gap: 6px; flex: 1; white-space: nowrap; }
.st-flow li:not(:last-child)::after { content: ""; flex: 1; block-size: 2px; margin-inline: 8px; background: var(--line); border-radius: 2px; }
.st-flow li.is-done::after { background: var(--success-500); }
.st-flow li:last-child { flex: none; }
.st-flow__d { inline-size: 16px; block-size: 16px; border-radius: var(--radius-pill); border: 2px solid var(--line); background: var(--surface); display: grid; place-items: center; flex: none; color: #fff; }
.st-flow .is-done { color: var(--ink); }
.st-flow .is-done .st-flow__d { background: var(--success-500); border-color: var(--success-500); }
.st-flow .is-cur { color: var(--navy-900); font-weight: 700; }
.st-flow .is-cur .st-flow__d { border-color: var(--blue-500); box-shadow: inset 0 0 0 3px var(--surface), inset 0 0 0 8px var(--blue-500); }
.st-flow .is-cancel .st-flow__d { background: var(--danger-ink); border-color: var(--danger-ink); box-shadow: none; }
.st-flow .is-cancel { color: var(--danger-ink); }
.st-h { padding: 4px 0 0; }
.st-opt { display: flex; align-items: center; gap: var(--space-3); inline-size: 100%; padding: 12px 14px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); text-align: start; cursor: pointer; }
.st-opt:hover { border-color: var(--ink-muted); }
.st-opt.is-on { border-color: var(--blue-500); background: var(--blue-50); box-shadow: 0 0 0 3px var(--blue-50); }
.st-opt__i { inline-size: 36px; block-size: 36px; border-radius: var(--radius-pill); display: grid; place-items: center; flex: none; background: var(--blue-50); color: var(--navy-900); }
.st-opt--live .st-opt__i { background: var(--success-bg); color: var(--success-ink); }
.st-opt--cancelled .st-opt__i { background: var(--danger-bg); color: var(--danger-ink); }
.st-opt--archived .st-opt__i { background: var(--neutral-bg); color: var(--ink); }
.st-opt.is-on .st-opt__i { background: var(--surface); }
.st-opt--cancelled.is-on { border-color: var(--danger-ink); background: var(--danger-bg); box-shadow: 0 0 0 3px var(--danger-bg); }
.st-opt__t { flex: 1; min-inline-size: 0; }
.st-opt__t b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.st-opt__t small { display: block; margin-block-start: 2px; font-size: 13px; color: var(--ink-muted); }
.st-opt__to { font-size: 13px; color: var(--ink-muted); white-space: nowrap; }
.st-extra { display: grid; gap: 10px; margin: -2px 0 4px; padding: 12px 14px; border-inline-start: 3px solid var(--blue-200); }
.st-when { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--ink); }
.st-when .bv-linkbtn { margin-inline-start: auto; font-size: 14px; }
.st-danger { display: flex; align-items: center; gap: var(--space-4); margin-block-start: 8px; padding-block-start: 14px; border-block-start: 1px solid var(--line); }
.st-danger span { flex: 1; }
.st-danger b { display: block; font-size: 15px; font-weight: 500; color: var(--danger-ink); }
.st-danger small { display: block; margin-block-start: 2px; font-size: 13px; color: var(--ink-muted); }
.st-delbtn { border-color: var(--danger-line); }
.st-delbtn:hover { border-color: var(--danger-ink); background: var(--danger-bg); }
.st-del { display: flex; gap: var(--space-3); padding: 14px; border-radius: var(--radius-md); background: var(--danger-bg); color: var(--danger-ink); }
.st-del .bv-icon { flex: none; margin-block-start: 2px; }
.st-del b { display: block; font-size: 15px; color: var(--danger-ink); }
.st-del p { margin: 4px 0 0; font-size: 14px; color: var(--ink); }

/* ===== Resolution vote (pick, reason, submit) ===== */
.rs-bar .o, .rs-vb__k .o { background: var(--violet-ink); }
.rs-pill--other { background: var(--violet-bg); color: var(--violet-ink); }
.rs-person__n { flex: 1; min-inline-size: 0; }
.rs-person__n b { display: block; }
.rs-person__n small { display: block; margin-block-start: 1px; font-size: 13px; color: var(--ink-muted); font-style: italic; }
.rs-opts { display: grid; gap: 8px; }
.rs-opt2 { display: flex; align-items: center; gap: var(--space-3); inline-size: 100%; min-block-size: 52px; padding: 10px 14px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); color: var(--ink); text-align: start; cursor: pointer; }
.rs-opt2:hover { border-color: var(--ink-muted); }
.rs-opt2__i { inline-size: 30px; block-size: 30px; border-radius: var(--radius-pill); display: grid; place-items: center; flex: none; background: var(--neutral-bg); color: var(--ink); }
.rs-opt2--approve .rs-opt2__i { background: var(--success-bg); color: var(--success-ink); }
.rs-opt2--deny .rs-opt2__i { background: var(--danger-bg); color: var(--danger-ink); }
.rs-opt2--abstain .rs-opt2__i { background: var(--blue-50); color: var(--navy-700); }
.rs-opt2--other .rs-opt2__i { background: var(--violet-bg); color: var(--violet-ink); }
.rs-opt2__t { flex: 1; min-inline-size: 0; }
.rs-opt2__t b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.rs-opt2__t small { display: block; margin-block-start: 2px; font-size: 13px; color: var(--ink-muted); }
.rs-opt2 .rs-radio { flex: none; }
.rs-opt2.is-on { border-width: 2px; padding: 9px 13px; }
.rs-opt2.is-on .rs-radio { border-color: currentColor; box-shadow: inset 0 0 0 4px var(--surface); background: currentColor; }
.rs-opt2--approve.is-on { border-color: var(--success-ink); background: var(--success-bg); color: var(--success-ink); }
.rs-opt2--deny.is-on { border-color: var(--danger-ink); background: var(--danger-bg); color: var(--danger-ink); }
.rs-opt2--abstain.is-on { border-color: var(--blue-500); background: var(--blue-50); color: var(--blue-500); }
.rs-opt2--other.is-on { border-color: var(--violet-ink); background: var(--violet-bg); color: var(--violet-ink); }
.rs-opt2.is-on .rs-opt2__i { background: var(--surface); }
.rs-reason { margin-block-start: var(--space-4); }
.rs-reason .nc-label i { font-size: 13px; }
.rs-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-block-end: 8px; }
.rs-chips .rs-chip { padding: 4px 12px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); font-size: 13px; color: var(--ink); cursor: pointer; }
.rs-chip:hover { border-color: var(--ink-muted); }
.rs-chip.is-on { border-color: var(--blue-500); background: var(--blue-50); color: var(--navy-700); font-weight: 500; }
.rs-reason .nc-help { display: flex; align-items: center; gap: 5px; }
.rs-submit { inline-size: 100%; justify-content: center; margin-block-start: var(--space-4); }
.rs-why { margin: 0; padding: 10px 12px; border-inline-start: 3px solid var(--line); background: var(--surface-raised); border-radius: 6px; font-size: 14px; color: var(--ink); text-align: start; font-style: italic; }
.rs-done--other { background: var(--violet-bg); color: var(--violet-ink); }

/* ===== Applied filter tags (bv-ftag) ===== */
.bv-ftags { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-block: 12px 16px; }
.bv-ftag { display: inline-flex; align-items: center; gap: 4px; block-size: 36px; padding-inline: 12px 4px; border: 1px solid var(--blue-200); border-radius: var(--radius-md); background: var(--blue-50); font-size: 15px; color: var(--ink-muted); white-space: nowrap; }
.bv-ftag b { font-weight: 500; color: var(--blue-500); }
.bv-ftag__x { inline-size: 28px; block-size: 28px; border: 0; border-radius: 6px; background: none; color: var(--blue-500); display: grid; place-items: center; cursor: pointer; }
.bv-ftag__x:hover, .bv-ftag__x:focus-visible { background: var(--blue-200); color: var(--navy-900); outline: 0; }
.bv-ftag__x:focus-visible { box-shadow: 0 0 0 2px var(--blue-500); }
.bv-ftags__clear { margin-inline-start: 4px; font-size: 15px; font-weight: 700; }
.bv-ftags__count { margin-inline-start: auto; font-size: 14px; color: var(--ink-muted); }
.bv-ftags__count b { color: var(--navy-900); }
.bv-ftags--none .bv-ftags__count { margin-inline-start: 0; }
.mt-fchip .cm-count { min-inline-size: 20px; block-size: 20px; padding-inline: 6px; background: var(--blue-500); color: #fff; font-size: 12px; }
.mt-fmenu { min-inline-size: 260px; }
.mt-cb { inline-size: 18px; block-size: 18px; border: 2px solid var(--line); border-radius: 4px; display: grid; place-items: center; flex: none; color: #fff; }
.mt-cb.is-on { background: var(--blue-500); border-color: var(--blue-500); }
.at-content .bv-ftags { margin-block: 0 16px; }

/* ===== Agenda builder (ab-) ===== */
.ab-head { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-6); }
.ab-head__a { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; justify-content: flex-end; }
.ab-tplmenu { min-inline-size: 320px; }
.ab-tplmenu .ap-menu__i { align-items: flex-start; }
.ab-tplmenu .ap-menu__i b { display: block; font-weight: 500; color: var(--navy-900); }
.ab-tplmenu .ap-menu__i small { display: block; font-size: 13px; color: var(--ink-muted); }
.ab-confirm { display: flex; align-items: flex-start; gap: var(--space-4); margin-block-start: var(--space-4); padding: var(--space-4) var(--space-6); border: 1px solid var(--success-line); border-radius: var(--radius-md); background: var(--success-bg); color: var(--success-ink); }
.ab-confirm.is-warn { border-color: var(--warning-line); background: var(--warning-bg); color: var(--attention-ink); }
.ab-confirm > .bv-icon { flex: none; margin-block-start: 2px; }
.ab-confirm > div { flex: 1; color: var(--ink); }
.ab-confirm b { color: var(--navy-900); font-size: 16px; }
.ab-confirm ul { margin: 6px 0; padding-inline-start: 18px; font-size: 14px; }
.ab-confirm p { margin: 4px 0 0; font-size: 14px; color: var(--ink-muted); }
.ab-confirm .bv-linkbtn { font-size: 14px; }
.ab-confirm__a { display: flex; align-items: center; gap: var(--space-3); flex: none; align-self: center; }
.ab-ready { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-3) var(--space-4); margin-block: var(--space-4); padding: 14px var(--space-6); }
.ab-ready__m { display: grid; gap: 6px; inline-size: 260px; margin-inline-end: var(--space-2); }
.ab-ready__m b { font-size: 16px; color: var(--navy-900); }
.ab-k { display: inline-flex; align-items: center; gap: 6px; block-size: 32px; padding-inline: 12px; border: 0; border-radius: var(--radius-pill); font-size: 14px; font-weight: 500; cursor: pointer; }
.ab-k--ready { background: var(--success-bg); color: var(--success-ink); }
.ab-k--waiting { background: var(--warning-bg); color: var(--attention-ink); }
.ab-k--draft { background: var(--neutral-bg); color: var(--ink); }
.ab-k:hover { box-shadow: 0 0 0 1px currentColor; }
.ab-time { display: inline-flex; align-items: center; gap: 6px; margin-inline-start: auto; font-size: 14px; color: var(--ink-muted); }
.ab-time b { color: var(--navy-900); }
.ab-time.is-over, .ab-time.is-over b { color: var(--danger-ink); }
.ab-layout { display: grid; grid-template-columns: 400px minmax(0, 1fr); gap: var(--space-6); align-items: start; }
.ab-outline { position: sticky; inset-block-start: var(--space-4); overflow: visible; }
.ab-outline__h { display: flex; justify-content: space-between; align-items: center; padding: 14px var(--space-4); border-block-end: 1px solid var(--line); font-size: 13px; }
.ab-rows { display: grid; padding: 6px; }
.ab-row { display: flex; align-items: stretch; border-radius: var(--radius-md); border: 1px solid transparent; }
.ab-row + .ab-row { margin-block-start: 2px; }
.ab-row:hover { background: var(--surface-raised); }
.ab-row.is-sel { background: var(--blue-50); border-color: var(--blue-200); }
.ab-row.is-drag { opacity: .4; }
.ab-row.is-over { box-shadow: inset 0 3px 0 var(--blue-500); }
.ab-grip { display: grid; place-items: center; inline-size: 24px; color: var(--ink-faint); cursor: grab; flex: none; }
.ab-row__b { flex: 1; display: flex; align-items: flex-start; gap: 10px; min-inline-size: 0; padding: 10px 10px 10px 0; border: 0; background: none; text-align: start; cursor: pointer; }
.ab-no { display: inline-grid; place-items: center; min-inline-size: 24px; block-size: 24px; padding-inline: 4px; border-radius: 6px; background: var(--neutral-bg); font-size: 13px; font-weight: 700; color: var(--navy-900); flex: none; font-variant-numeric: tabular-nums; }
.ab-row.is-sel .ab-no { background: var(--blue-500); color: #fff; }
.ab-no--lg { min-inline-size: 32px; block-size: 32px; font-size: 15px; background: var(--blue-500); color: #fff; }
.ab-row__t { flex: 1; min-inline-size: 0; }
.ab-row__t b { display: block; font-size: 14px; font-weight: 500; line-height: 19px; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ab-row__t small { display: inline-flex; align-items: center; gap: 3px; font-size: 12px; color: var(--ink-muted); }
.ab-row__t small i { font-style: normal; color: var(--attention-ink); }
.ab-subs { display: grid; margin-block-start: 4px; }
.ab-subs span { font-size: 12px; color: var(--ink-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-inline-start: 8px; border-inline-start: 2px solid var(--line); }
.ab-st { display: inline-flex; align-items: center; gap: 4px; padding: 2px 8px; border-radius: 6px; font-size: 12px; font-weight: 500; white-space: nowrap; flex: none; }
.ab-st--ready { background: var(--success-bg); color: var(--success-ink); }
.ab-st--waiting { background: var(--warning-bg); color: var(--attention-ink); }
.ab-st--draft { background: var(--neutral-bg); color: var(--ink); }
.ab-add { display: flex; align-items: center; gap: 8px; inline-size: calc(100% - 12px); margin: 0 6px 6px; padding: 12px; border: 1px dashed var(--line); border-radius: var(--radius-md); background: none; color: var(--blue-500); font-size: 15px; font-weight: 500; cursor: pointer; }
.ab-add:hover { border-color: var(--blue-500); background: var(--blue-50); }
.ab-editor { overflow: visible; }
.ab-ed__h { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-4) var(--space-6); border-block-end: 1px solid var(--line); }
.ab-miss { display: flex; align-items: center; gap: 8px; margin: var(--space-4) var(--space-6) 0; padding: 10px 12px; border-radius: var(--radius-md); background: var(--neutral-bg); font-size: 14px; }
.ab-miss b { color: var(--navy-900); }
.ab-form { display: grid; gap: var(--space-5, 20px); padding: var(--space-6); }
.ab-title { font-size: 18px; font-weight: 500; block-size: 48px; color: var(--navy-900); }
.nc-input.is-warn, .nc-select.is-warn { border-style: dashed; border-color: var(--ink-faint); }
.ab-kind { display: grid; grid-template-columns: repeat(3, 1fr); }
.ab-kind .cm-seg__btn { justify-content: center; }
.ab-res { padding: 10px 12px; border-radius: var(--radius-md); background: var(--blue-50); }
.ab-step { display: flex; align-items: center; gap: 6px; }
.ab-step .nc-input { inline-size: 84px; text-align: center; }
.ab-step span { font-size: 14px; color: var(--ink-muted); }
.ab-step .bv-ghost-icon { border: 1px solid var(--line); inline-size: 40px; block-size: 40px; }
.ab-file { margin-block-end: 8px; }
.ab-file .bv-ghost-icon { margin-inline-start: auto; }
.ab-more { font-size: 14px; cursor: pointer; }
.ab-req { display: flex; gap: var(--space-3); padding: 14px; border: 1px solid var(--warning-line); border-radius: var(--radius-md); background: var(--warning-bg); color: var(--attention-ink); }
.ab-req > .bv-icon { flex: none; margin-block-start: 2px; }
.ab-req b { color: var(--navy-900); }
.ab-req p { margin: 4px 0 10px; font-size: 14px; color: var(--ink); }
.ab-req__a { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.ab-req__a .bv-linkbtn { font-size: 14px; margin-inline-start: auto; }
.ab-nopaper { display: flex; align-items: center; gap: 8px; padding: 10px 12px; border-radius: var(--radius-md); background: var(--surface-raised); border: 1px solid var(--line-soft); font-size: 14px; }
.ab-nopaper .bv-icon { color: var(--success-500); }
.ab-nopaper .bv-linkbtn { margin-inline-start: auto; font-size: 14px; }
.ab-paperopts { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); }
.ab-drop { display: grid; justify-items: center; align-content: center; gap: 4px; padding: 18px; border: 1.5px dashed var(--line); border-radius: var(--radius-md); text-align: center; cursor: pointer; color: var(--blue-500); }
.ab-drop:hover { border-color: var(--blue-500); background: var(--blue-50); }
.ab-drop b { color: var(--navy-900); font-size: 15px; }
.ab-drop small { font-size: 13px; color: var(--ink-muted); }
.ab-drop.is-set { border-style: solid; border-color: var(--success-line); background: var(--success-bg); color: var(--success-ink); }
.ab-drop--lg { padding: 32px; }
.ab-ask { display: grid; gap: 8px; padding: 14px; border: 1px solid var(--line); border-radius: var(--radius-md); }
.ab-ask b { color: var(--navy-900); font-size: 15px; }
.ab-ask small { font-size: 13px; color: var(--ink-muted); margin-block-start: -4px; }
.ab-ask .nc-field { display: grid; gap: 2px; }
.ab-ask .nc-label { margin: 0; }
.ab-ask .bv-btn-secondary { justify-content: center; }
.ab-none { margin-block-start: 8px; font-size: 14px; color: var(--ink-muted); font-weight: 400; text-decoration: underline; text-underline-offset: 3px; }
.ab-sub { display: flex; align-items: center; gap: 8px; margin-block-end: 8px; }
.ab-sub .nc-input { block-size: 40px; }
.ab-ed__f { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding: var(--space-4) var(--space-6); border-block-start: 1px solid var(--line); background: var(--surface-raised); border-radius: 0 0 var(--radius-md) var(--radius-md); }
.ab-ed__f .ap-muted { font-size: 13px; }
.ab-strip__bar { inline-size: 160px; }
.ab-toc { list-style: none; margin: 0; padding: 0; }
.ab-toc li { display: flex; align-items: flex-start; gap: 10px; padding-block: 10px; border-block-start: 1px solid var(--line-soft); }
.ab-toc__t { flex: 1; display: grid; gap: 2px; }
.ab-toc__t b { font-size: 15px; color: var(--navy-900); }
.ab-toc__t small { font-size: 13px; color: var(--ink-muted); }
.ab-toc__p { font-size: 13px; color: var(--ink-muted); white-space: nowrap; }
.ab-paper { display: grid; place-items: start center; padding-block: var(--space-6); }
.ab-paper__card { display: grid; gap: var(--space-4); inline-size: min(640px, 100%); padding: var(--space-8); }
.ab-paper__card > .ap-pill { justify-self: start; }
.ab-paper__card h1 { margin: 0; font-size: 26px; color: var(--navy-900); }
.ab-paper__lead { margin: -8px 0 0; color: var(--ink-muted); }
.ab-paper__a { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); }
.ab-paper__a .ap-muted { font-size: 13px; }
.ab-paper__done { justify-items: center; text-align: center; }
.ab-paper__done p { margin: 0; color: var(--ink); }
.ab-paper__done .ab-paper__a { justify-content: center; }
@media (max-width: 1300px) { .ab-layout { grid-template-columns: 320px minmax(0, 1fr); } .ab-paperopts { grid-template-columns: 1fr; } }
.ab-rows { grid-template-columns: minmax(0, 1fr); }
.ab-row, .ab-row__b { min-inline-size: 0; }
.ab-row__b { overflow: hidden; }
.ab-strip__bar .at-prog { display: block; }
.ab-next { display: flex; gap: var(--space-3); padding: 14px; border-radius: var(--radius-md); background: var(--blue-50); color: var(--blue-500); }
.ab-next .bv-icon { flex: none; margin-block-start: 2px; }
.ab-next b { color: var(--navy-900); }
.ab-next p { margin: 4px 0 0; font-size: 14px; color: var(--ink); }
.ab-next--btn { inline-size: 100%; border: 1px solid var(--blue-200); text-align: start; cursor: pointer; font: inherit; }
.ab-next--btn:hover { border-color: var(--blue-500); }

/* ===== Minutes document, the PDF page design (mp-) ===== */
.mp-drawer { inline-size: 880px; }
.mp-body { background: var(--neutral-bg); padding: var(--space-6); }
.mp-pages { display: grid; gap: var(--space-6); justify-items: center; }
.mp-page { position: relative; inline-size: 680px; min-block-size: 962px; padding: 44px 48px 72px; background: #fff; color: #1f2937; box-shadow: 0 1px 3px rgba(3, 17, 98, .12), 0 8px 24px rgba(3, 17, 98, .06); font-size: 12.5px; line-height: 1.55; box-sizing: border-box; }
.mp-top { display: flex; align-items: flex-start; justify-content: space-between; padding-block-end: 16px; margin-block-end: 20px; border-block-end: 1.5px solid #1f2937; }
.mp-top--sm { padding-block-end: 10px; margin-block-end: 18px; border-block-end-width: 1px; border-color: var(--line); }
.mp-logo { display: block; block-size: 40px; inline-size: auto; }
.mp-top--sm .mp-logo { block-size: 26px; }
.mp-issued { text-align: end; font-size: 10.5px; color: #6b7280; line-height: 1.6; }
.mp-band { display: flex; align-items: center; gap: 10px; margin-block: 18px 12px; padding: 9px 12px; background: var(--blue-50); border-inline-end: 3px solid var(--blue-500); border-radius: 4px; }
.mp-band__i { inline-size: 26px; block-size: 26px; border-radius: 5px; background: var(--blue-500); color: #fff; display: grid; place-items: center; flex: none; }
.mp-band b { font-size: 14px; font-weight: 500; color: var(--blue-500); }
.mp-title { padding-block: 4px 14px; border-block-end: 1px solid var(--line); }
.mp-title small { display: block; font-size: 10.5px; color: #6b7280; }
.mp-title b { font-size: 18px; font-weight: 500; color: #374151; }
.mp-h { margin: 16px 0 8px; font-size: 14px; font-weight: 500; color: var(--blue-500); }
.mp-info { display: grid; grid-template-columns: 110px 1fr; gap: 6px 12px; margin: 0; }
.mp-info dt { color: #6b7280; }
.mp-info dd { margin: 0; color: #374151; }
.mp-table { inline-size: 100%; border-collapse: collapse; border: 1px solid var(--line); font-size: 12px; }
.mp-table th { padding: 8px 10px; background: #1e3a9f; color: #fff; font-size: 10.5px; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; text-align: start; }
.mp-table td { padding: 8px 10px; border-block-start: 1px solid var(--line-soft); vertical-align: middle; color: #374151; }
.mp-table tbody tr:nth-child(even) td { background: #f8fafc; }
.mp-table--votes th { background: var(--blue-50); color: var(--navy-700); }
.mp-av { display: inline-grid; place-items: center; inline-size: 20px; block-size: 20px; margin-inline-end: 8px; border: 1px solid var(--blue-500); border-radius: 50%; font-size: 10px; color: var(--blue-500); vertical-align: middle; }
.mp-pill { display: inline-block; padding: 1px 9px; border-radius: 10px; font-size: 10.5px; font-weight: 500; }
.mp-pill--ok { background: var(--success-bg); color: var(--success-ink); }
.mp-pill--warn { background: var(--warning-bg); color: var(--attention-ink); }
.mp-pill--danger { background: var(--danger-bg); color: var(--danger-ink); }
.mp-pill--info { background: var(--blue-50); color: var(--navy-700); }
.mp-pill--muted { background: var(--neutral-bg); color: var(--ink); }
.mp-p { margin: 0 0 8px; color: #374151; }
.mp-p--sm { font-size: 11.5px; color: #6b7280; }
.mp-p p { margin: 0 0 6px; }
.mp-none { color: #9ca3af; }
.mp-item { padding-block: 8px 10px; border-block-end: 1px solid var(--line-soft); }
.mp-item h4 { display: flex; align-items: center; gap: 6px; margin: 0 0 4px; font-size: 13px; font-weight: 500; color: #111827; }
.mp-item h4 span { color: var(--blue-500); }
.mp-tag { margin-inline-start: auto; padding: 1px 8px; border-radius: 4px; font-size: 10px; font-style: normal; font-weight: 500; }
.mp-tag--agenda { background: var(--neutral-bg); color: var(--ink); }
.mp-tag--resolution { background: var(--blue-50); color: var(--navy-700); }
.mp-tag--action { background: var(--warning-bg); color: var(--attention-ink); }
.mp-tag--approval { background: var(--violet-bg); color: var(--violet-ink); }
.mp-meta { margin: 0 0 6px; font-size: 11.5px; color: #6b7280; }
.mp-meta b { color: var(--success-ink); }
.mp-res { padding: 12px; border: 1px solid var(--blue-200); border-radius: 6px; background: #fbfcff; }
.mp-res__h { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-block-end: 4px; }
.mp-res__h b { font-size: 13px; font-weight: 500; color: #111827; }
.mp-ring { --p: 0; inline-size: 42px; block-size: 42px; border-radius: 50%; background: conic-gradient(var(--blue-500) calc(var(--p) * 1%), var(--blue-200) 0); display: grid; place-items: center; flex: none; }
.mp-ring span { inline-size: 32px; block-size: 32px; border-radius: 50%; background: #fff; display: grid; place-items: center; font-size: 10px; font-weight: 700; color: var(--navy-900); }
.mp-sigs { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 32px; margin-block-start: 18px; }
.mp-sig { display: grid; gap: 2px; align-content: end; min-block-size: 96px; }
.mp-sig b { font-size: 12.5px; font-weight: 500; color: #111827; border-block-start: 1px solid #9ca3af; padding-block-start: 6px; }
.mp-sig small { font-size: 10.5px; color: #6b7280; }
.mp-sig .ap-sig { stroke: var(--navy-900); }
.mp-sig__line { display: block; block-size: 52px; }
.mp-sig__wait { display: block; block-size: 52px; line-height: 52px; font-size: 11px; color: var(--attention-ink); }
.mp-sigarea { position: relative; block-size: 170px; margin-block-start: 12px; border: 1.5px dashed var(--line); border-radius: 6px; }
.mp-sighint { position: absolute; inset-block-end: 8px; inset-inline-start: 12px; margin: 0; font-size: 11px; color: #9ca3af; }
.mp-foot { position: absolute; inset-inline: 48px; inset-block-end: 26px; display: flex; justify-content: space-between; padding-block-start: 8px; border-block-start: 1px solid var(--line); font-size: 10px; color: #9ca3af; }
/* signing view */
.ms-req { grid-template-columns: 380px minmax(0, 1fr); }
.ms-steps { list-style: none; display: flex; gap: 6px; margin: 0; padding: 0; font-size: 13px; }
.ms-steps li { flex: 1; display: flex; align-items: center; gap: 5px; padding: 6px 8px; border-radius: 6px; background: var(--neutral-bg); color: var(--ink-muted); }
.ms-steps li.is-done { background: var(--success-bg); color: var(--success-ink); }
.ms-steps li.is-now { background: var(--blue-50); color: var(--blue-500); font-weight: 500; }
.ms-signer { flex-wrap: nowrap; gap: 8px; }
.ms-signer.is-placing { border-color: var(--sc); box-shadow: 0 0 0 3px color-mix(in srgb, var(--sc) 15%, transparent); }
.ms-signer > span:nth-child(2), .ms-signer > span:nth-child(3):not(.ab-no):not(.ms-ord) { flex: 1; min-inline-size: 0; }
.ms-signer small { display: block; }
.ms-addmenu { inset-inline-start: 0; inset-inline-end: auto; min-inline-size: 300px; max-block-size: 320px; overflow-y: auto; }
.ms-viewer { min-inline-size: 0; }
.ms-scroll { max-block-size: calc(100vh - 220px); min-block-size: 600px; overflow: auto; padding: var(--space-6); }
.mp-pages.is-placing .mp-page { cursor: crosshair; outline: 2px dashed var(--blue-200); outline-offset: 4px; }
.ms-box { inline-size: 38%; }
.ms-box .ap-box__tag { cursor: grab; touch-action: none; }
/* versions: signing status */
.mv-sign { display: grid; gap: 6px; margin-block-start: 10px; padding: 10px 12px; border-radius: var(--radius-md); background: var(--surface-raised); border: 1px solid var(--line-soft); }
.mv-sign .ap-pill { justify-self: start; }
.mv-sign__who { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 13px; color: var(--attention-ink); }
.mv-sign__who span { display: inline-flex; align-items: center; gap: 4px; }
.mv-sign__who .is-done { color: var(--success-ink); }
/* save as PDF: print only the document pages */
@media print {
  @page { size: A4; margin: 0; }
  body.bv-printing * { visibility: hidden !important; }
  body.bv-printing .mp-pages, body.bv-printing .mp-pages * { visibility: visible !important; }
  body.bv-printing .mp-pages { position: absolute; inset: 0; display: block; }
  body.bv-printing .mp-page { inline-size: 210mm; min-block-size: 297mm; box-shadow: none; break-after: page; margin: 0; }
  body.bv-printing .ap-box { display: none; }
}
.ms-signer { align-items: flex-start; }
.ms-signer > .bv-ghost-icon { padding: 4px; }
.ms-place { display: inline-flex; align-items: center; gap: 5px; margin-block-start: 8px; padding: 4px 10px; border: 1px solid var(--sc); border-radius: 6px; background: var(--surface); color: var(--sc); font-size: 13px; font-weight: 500; cursor: pointer; }
.ms-place:hover, .ms-place.is-on { background: color-mix(in srgb, var(--sc) 10%, #fff); }
.ms-signer { align-items: flex-start; }
.ms-signer > .bv-ghost-icon { padding: 4px; }
.ms-place { display: inline-flex; align-items: center; gap: 5px; margin-block-start: 8px; padding: 4px 10px; border: 1px solid var(--sc); border-radius: 6px; background: var(--surface); color: var(--sc); font-size: 13px; font-weight: 500; cursor: pointer; }
.ms-place:hover, .ms-place.is-on { background: color-mix(in srgb, var(--sc) 10%, #fff); }

/* ===== Organisation > Bviser subscription and renewal (og-sub) ===== */
.og-info > .ap-col { min-inline-size: 0; }
.og-sub { display: grid; gap: var(--space-4); }
.og-sub__h { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-3); }
.og-term { padding: 14px; border-radius: var(--radius-md); background: var(--surface-raised); border: 1px solid var(--line-soft); }
.og-term__d { display: flex; justify-content: space-between; gap: var(--space-3); }
.og-term__d small { display: block; font-size: 12px; color: var(--ink-muted); }
.og-term__d b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.og-term__end { text-align: end; }
.og-term__bar { position: relative; block-size: 8px; margin-block: 14px 6px; border-radius: var(--radius-pill); background: var(--line); }
.og-term__bar > i { display: block; block-size: 100%; border-radius: inherit; background: var(--blue-500); }
.og-term__bar--warn > i { background: var(--chart-pending); }
.og-term__bar--danger > i { background: var(--danger-ink); }
.og-term__now { position: absolute; inset-block-start: -5px; inline-size: 2px; block-size: 18px; background: var(--navy-900); translate: -1px 0; }
.og-term__now em { position: absolute; inset-block-end: 100%; inset-inline-start: 50%; translate: -50% -2px; font-size: 11px; font-style: normal; color: var(--ink-muted); white-space: nowrap; }
.og-term__left { margin: 0; font-size: 14px; color: var(--ink-muted); text-align: end; }
.og-term__left b { color: var(--navy-900); }
.og-term__left.is-warn, .og-term__left.is-warn b { color: var(--attention-ink); }
.og-term__left.is-danger, .og-term__left.is-danger b { color: var(--danger-ink); }
.og-subdl { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 12px var(--space-4); margin: 0; }
.og-subdl dt { font-size: 14px; color: var(--ink-muted); }
.og-subdl dd { margin: 0; display: grid; gap: 4px; }
.og-subdl b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.og-subdl small { font-size: 13px; color: var(--ink-muted); }
.og-seats.is-high i { background: var(--chart-pending); }
.og-renew { display: flex; gap: var(--space-3); padding: 12px 14px; border-radius: var(--radius-md); background: var(--warning-bg); border: 1px solid var(--warning-line); color: var(--attention-ink); }
.og-renew > .bv-icon { flex: none; margin-block-start: 2px; }
.og-renew b { color: var(--navy-900); font-size: 15px; }
.og-renew p { margin: 4px 0 0; font-size: 14px; color: var(--ink); }
.og-renew.is-sent { background: var(--success-bg); border-color: var(--success-line); color: var(--success-ink); }
.og-renew__a { display: flex; flex-wrap: wrap; gap: 6px 16px; margin-block-start: 8px; }
.og-renew__a .bv-linkbtn { font-size: 14px; }
.og-renewbtn { justify-content: center; inline-size: 100%; }
.og-rdlg .ma-dlg__b { max-block-size: calc(100vh - 220px); overflow-y: auto; }
.og-rdlg .ma-dlg__h { align-items: flex-start; }
.og-to { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; padding: 10px 12px; border-radius: var(--radius-md); background: var(--blue-50); font-size: 14px; color: var(--navy-700); }
.og-to b { color: var(--navy-900); }
.og-to .ap-muted { margin-inline-start: auto; font-size: 13px; }
.og-rdlg .ab-step span { white-space: nowrap; }
.og-rdlg .rs-chip { display: inline-flex; align-items: center; gap: 4px; }
.og-prev summary { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; color: var(--blue-500); cursor: pointer; }
.og-mail { margin-block-start: 10px; padding: 14px 16px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface-raised); font-size: 14px; line-height: 21px; color: var(--ink); }
.og-mail p { margin: 0 0 8px; }
.og-mail ul { margin: 0 0 8px; padding-inline-start: 20px; }
.og-mail__s { padding-block-end: 8px; border-block-end: 1px solid var(--line-soft); }
.og-sub__h { flex-direction: column; gap: 8px; }
.og-sub__h > div { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; inline-size: 100%; flex-wrap: wrap; }
.og-sub__h h2 { white-space: nowrap; }
.og-term__now em { inset-block-end: auto; inset-block-start: 100%; translate: -50% 2px; }
.og-term__left { margin-block-start: 14px; }
.og-renew__a .og-danger { margin-inline-start: auto; }
.og-term__left { display: flex; justify-content: space-between; text-align: start; }
.og-term__left > span:first-child { color: var(--ink-muted); }
.og-renew.is-later { background: var(--blue-50); border-color: var(--blue-200); color: var(--blue-500); }
.og-renew.is-ended { background: var(--danger-bg); border-color: var(--danger-line); color: var(--danger-ink); }
.og-term__win { position: absolute; inset-block: 0; inset-inline-end: 0; border-radius: 0 var(--radius-pill) var(--radius-pill) 0; background: repeating-linear-gradient(135deg, rgba(180, 71, 15, .25) 0 3px, transparent 3px 6px); pointer-events: none; }
.og-term__legend { display: flex; align-items: center; gap: 6px; margin: 6px 0 0; font-size: 12px; color: var(--ink-muted); }
.og-term__legend i { inline-size: 14px; block-size: 8px; border-radius: 2px; background: repeating-linear-gradient(135deg, rgba(180, 71, 15, .45) 0 3px, transparent 3px 6px); border: 1px solid var(--warning-line); }
.og-rterm { display: flex; align-items: center; gap: var(--space-3); padding: 12px 14px; border: 1px solid var(--line); border-radius: var(--radius-md); }
.og-rterm small { display: block; font-size: 13px; color: var(--ink-muted); }
.og-rterm b { font-size: 15px; font-weight: 500; color: var(--navy-900); }

/* ===== Minutes document viewer, full screen (md-) ===== */
.md-main { padding: 0; display: flex; flex-direction: column; block-size: calc(100vh - var(--topbar-height, 72px)); min-block-size: 640px; }
.md-bar { display: flex; align-items: center; gap: var(--space-3); padding: 12px var(--space-6); border-block-end: 1px solid var(--line); background: var(--surface); flex: none; flex-wrap: wrap; }
.md-bar__t { flex: 1; min-inline-size: 0; display: flex; align-items: center; flex-wrap: wrap; gap: 4px 10px; }
.md-bar__t b { font-size: 17px; color: var(--navy-900); }
.md-bar__t small { flex-basis: 100%; font-size: 13px; color: var(--ink-muted); }
.md-ver { block-size: 38px; }
.md-ver select { font-size: 14px; }
.md-zoom { display: inline-flex; align-items: center; border: 1px solid var(--line); border-radius: var(--radius-md); }
.md-zoom .bv-ghost-icon { padding: 8px; }
.md-zoom .bv-ghost-icon:disabled { opacity: .35; cursor: default; }
.md-zoom__v { min-inline-size: 56px; border: 0; background: none; font-size: 14px; font-variant-numeric: tabular-nums; color: var(--ink); cursor: pointer; }
.md-body { position: relative; flex: 1; min-block-size: 0; display: grid; grid-template-columns: 220px minmax(0, 1fr); }
.md-side { padding: var(--space-4); border-inline-end: 1px solid var(--line); background: var(--surface); overflow-y: auto; }
.md-thumbs { display: grid; gap: 10px; margin-block-start: 8px; }
.md-thumb { display: grid; justify-items: center; gap: 4px; padding: 6px; border: 0; border-radius: var(--radius-md); background: none; cursor: pointer; }
.md-thumb__p { display: grid; align-content: start; gap: 5px; inline-size: 96px; block-size: 136px; padding: 12px 10px; background: #fff; border: 1px solid var(--line); border-radius: 3px; box-shadow: 0 1px 2px rgba(3, 17, 98, .08); }
.md-thumb__p i { display: block; block-size: 6px; border-radius: 2px; background: var(--blue-50); }
.md-thumb__p i.s { block-size: 3px; background: var(--line); inline-size: 70%; }
.md-thumb small { font-size: 12px; color: var(--ink-muted); }
.md-thumb.is-on .md-thumb__p { border-color: var(--blue-500); box-shadow: 0 0 0 2px var(--blue-200); }
.md-thumb.is-on small { color: var(--blue-500); font-weight: 700; }
.md-secs { display: grid; margin-block-start: 6px; }
.md-secs button { display: flex; justify-content: space-between; gap: 8px; padding: 7px 8px; border: 0; border-radius: 6px; background: none; font-size: 14px; color: var(--ink); text-align: start; cursor: pointer; }
.md-secs button:hover { background: var(--neutral-bg); }
.md-secs small { color: var(--ink-faint); font-size: 12px; }
.md-scroll { overflow: auto; background: var(--neutral-bg); padding: var(--space-8) var(--space-6) 96px; }
.md-pageno { position: absolute; inset-block-end: 18px; inset-inline-start: calc(220px + (100% - 220px) / 2); translate: -50% 0; padding: 6px 14px; border-radius: var(--radius-pill); background: rgba(3, 17, 98, .82); color: #fff; font-size: 13px; pointer-events: none; }
[dir="rtl"] .md-pageno { translate: 50% 0; }
.bv-main.md-main { flex-direction: column; align-items: stretch; }
.md-body, .md-bar { inline-size: 100%; box-sizing: border-box; }

/* ===== Minutes review: share, comment, approve (rv-) ===== */
.mt-roleswitch { display: inline-flex; align-items: center; gap: 2px; margin-inline-start: auto; padding: 3px; border-radius: var(--radius-pill); background: var(--neutral-bg); font-size: 13px; }
.mt-roleswitch > span { padding-inline: 10px 6px; color: var(--ink-muted); }
.mt-roleswitch button { padding: 5px 12px; border: 0; border-radius: var(--radius-pill); background: none; font-size: 13px; color: var(--ink); cursor: pointer; }
.mt-roleswitch button.is-on { background: var(--surface); color: var(--navy-900); font-weight: 500; box-shadow: 0 1px 2px rgba(3, 17, 98, .1); }
.mm-inc { display: inline-flex; align-items: center; gap: 4px; padding: 2px 6px; border-radius: 6px; font-size: 11px; font-weight: 700; letter-spacing: .04em; color: var(--ink-muted); cursor: pointer; flex: none; }
.mm-inc:hover { background: var(--blue-50); color: var(--blue-500); }
.mm-inc input { inline-size: 16px; block-size: 16px; margin: 0; accent-color: var(--blue-500); }
.rv-av { border: 0; font-size: 10px; flex: none; }
.rv-people { display: inline-flex; align-items: center; }
.rv-person { position: relative; margin-inline-start: -6px; }
.rv-person:first-child { margin-inline-start: 0; }
.rv-person .bv-avatar { box-shadow: 0 0 0 2px var(--surface); }
.rv-person i { position: absolute; inset-block-end: -3px; inset-inline-end: -3px; inline-size: 14px; block-size: 14px; border-radius: 50%; display: grid; place-items: center; background: var(--neutral-bg); color: var(--ink-muted); box-shadow: 0 0 0 2px var(--surface); }
.rv-person.is-approved i { background: var(--success-500); color: #fff; }
.rv-person.is-changes i { background: var(--chart-pending); color: #fff; }
.rv-person.is-pending .bv-avatar { opacity: .55; }
.rv-people--sm { margin-inline: 6px; }
.rv-strip.is-ask { border-color: var(--warning-line); background: var(--warning-bg); }
.rv-strip.is-ok { border-color: var(--success-line); }
.rv-bar { display: flex; align-items: center; gap: var(--space-4); padding: 10px var(--space-6); border-block-end: 1px solid var(--line); background: var(--warning-bg); }
.rv-bar.is-done { background: var(--success-bg); }
.rv-bar__t { display: grid; gap: 2px; flex: 1; }
.rv-bar__t b { display: inline-flex; align-items: center; gap: 6px; font-size: 15px; color: var(--navy-900); }
.rv-bar__t span { font-size: 13px; color: var(--ink-muted); }
.rv-bar .bv-linkbtn { font-size: 14px; }
.rv-badge { display: inline-flex; align-items: center; gap: 3px; margin-inline-start: auto; padding: 1px 6px; border-radius: var(--radius-pill); background: var(--warning-bg); color: var(--attention-ink); font-size: 11px; font-style: normal; font-weight: 700; flex: none; }
.rv-thread { display: grid; gap: 8px; padding: 10px 12px; border-radius: var(--radius-md); background: var(--surface-raised); border: 1px solid var(--line-soft); }
.rv-c { display: flex; gap: 10px; padding: 10px 12px; border-radius: 8px; background: var(--surface); border: 1px solid var(--warning-line); border-inline-start: 3px solid var(--chart-pending); }
.rv-c.is-resolved { border-color: var(--line-soft); border-inline-start-color: var(--success-500); opacity: .85; }
.rv-c__b { flex: 1; min-inline-size: 0; }
.rv-c__h { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.rv-c__h b { font-size: 14px; color: var(--navy-900); }
.rv-c__h small { font-size: 12px; color: var(--ink-muted); }
.rv-res { display: inline-flex; align-items: center; gap: 3px; margin-inline-start: auto; font-size: 12px; font-weight: 500; color: var(--success-ink); }
.rv-c p { margin: 4px 0 0; font-size: 14px; line-height: 21px; color: var(--ink); }
.rv-reply { display: flex; gap: 8px; margin-block-start: 8px; padding-block-start: 8px; border-block-start: 1px solid var(--line-soft); font-size: 14px; }
.rv-reply b { color: var(--navy-900); font-weight: 500; }
.rv-c__a { display: flex; gap: 16px; margin-block-start: 8px; }
.rv-c__a .bv-linkbtn { font-size: 13px; }
.rv-toggle { font-size: 13px; justify-self: start; }
.rv-compose { display: grid; gap: 8px; padding: 10px 12px; border: 1px solid var(--blue-200); border-radius: var(--radius-md); background: var(--blue-50); }
.rv-compose textarea { block-size: auto; padding-block: 8px; line-height: 21px; resize: vertical; background: var(--surface); }
.rv-compose > span { display: flex; justify-content: flex-end; align-items: center; gap: 12px; }
.rv-compose--sm { margin-block-start: 8px; padding: 8px; background: var(--surface-raised); border-color: var(--line); }
.rv-text { padding: 12px 14px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface-raised); font-size: 15px; line-height: 23px; color: var(--ink); }
.rv-text p { margin: 0 0 6px; }
.rv-ctx { margin: 0; font-size: 13px; color: var(--ink-muted); }
.rv-ctx b { color: var(--success-ink); }
.rv-cbtn { border-color: var(--blue-200); color: var(--blue-500); }
.rv-dot { color: #fff; font-size: 10px; font-weight: 700; }
.rv-dot.has-c { background: var(--chart-pending); border-color: var(--chart-pending); }
.rv-steps { list-style: none; display: flex; align-items: center; flex-wrap: wrap; gap: 6px 18px; margin: 0; padding: 10px var(--space-6); border-block-end: 1px solid var(--line); background: var(--surface-raised); font-size: 13px; color: var(--ink-muted); }
.rv-steps li { display: inline-flex; align-items: center; gap: 6px; }
.rv-steps li b { color: var(--ink); font-weight: 500; }
.rv-steps li.is-done .bv-icon { color: var(--success-500); }
.rv-steps__lock { margin-inline-start: auto; }
.rv-foot { gap: var(--space-3); }
.rv-mine { display: inline-flex; align-items: flex-start; gap: 8px; margin-inline-end: auto; font-size: 14px; color: var(--ink-muted); }
.rv-mine > .bv-icon { flex: none; margin-block-start: 1px; }
.rv-mine b { display: block; color: var(--navy-900); font-weight: 500; }
.rv-mine small { display: block; font-size: 13px; }
.rv-mine.is-ok > .bv-icon { color: var(--success-500); }
.rv-mine.is-warn > .bv-icon { color: var(--attention-ink); }
.rv-foot .og-danger { font-size: 14px; }
.mm-foot.is-share { flex-wrap: wrap; }
.rv-share { flex: 1 1 100%; display: grid; gap: 10px; padding: 12px 14px; margin-block-end: 4px; border-radius: var(--radius-md); background: var(--blue-50); }
.rv-share__h b { display: block; color: var(--navy-900); }
.rv-share__h .ap-muted { font-size: 13px; }
.rv-share__who { display: flex; flex-wrap: wrap; gap: 6px; }
.rv-chk { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px 4px 4px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); font-size: 13px; color: var(--ink-muted); cursor: pointer; }
.rv-chk.is-on { border-color: var(--blue-500); color: var(--navy-900); }
.rv-chk input { inline-size: 15px; block-size: 15px; margin: 0 0 0 4px; accent-color: var(--blue-500); }
.rv-share__opts { display: flex; align-items: center; gap: var(--space-4); }
.rv-share__opts .nc-field { display: grid; gap: 2px; inline-size: 180px; }
.rv-share__opts .nc-label { margin: 0; }
.rv-share + .nc-cancel { margin-inline-start: auto; }
.mt-appr__tabs { margin-block: 4px 8px; border-block-end: 1px solid var(--line); }
.mt-appr__tabs .cm-tab { font-size: 14px; padding-block: 8px; }
.mt-appr__r { display: flex; align-items: center; gap: 10px; padding-block: 10px; border-block-end: 1px solid var(--line-soft); }
.mt-appr__r.is-mom { margin-inline: -8px; padding-inline: 8px; border-radius: 8px; background: var(--blue-50); }
.mt-appr__t { flex: 1; min-inline-size: 0; }
.mt-appr__t b { display: block; font-size: 14px; font-weight: 500; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mt-appr__t small { font-size: 12px; color: var(--ink-muted); }
.mt-appr__r .bv-linkbtn { font-size: 14px; }
.mt-detail .ap-col > aside .mt-ch { flex-wrap: wrap; row-gap: 2px; }
.mt-part .mt-part__n { min-inline-size: 0; }
.mt-detail .ap-col > aside:first-child .mt-ch > span { flex-basis: 100%; }
.mm-foot .bv-linkbtn[data-mm-history] { font-size: 15px; }
.rv-share__h .ap-muted b { color: var(--ink); font-weight: 500; }

/* ---------- Organisation > KPI ---------- */
.kp-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); gap: var(--space-6); align-items: stretch; }
.kp-card__h { display: flex; align-items: flex-start; gap: var(--space-3); margin-block-end: var(--space-4); }
.kp-card__h > div { flex: 1; min-inline-size: 0; }
.kp-card__h .ap-more { margin-inline-start: -4px; }
.kp-sub { margin: 2px 0 0; font-size: 14px; }
.kp-ic { flex: none; display: grid; place-items: center; inline-size: 40px; block-size: 40px; border-radius: 10px; background: var(--blue-50); color: var(--blue-500); }
.kp-big { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 10px; }
.kp-big > b { font-size: 56px; line-height: 1; font-weight: 700; color: var(--navy-900); letter-spacing: -.02em; }
.kp-big > span:not(.kp-delta) { font-size: 18px; color: var(--ink-muted); }
.kp-big--sm > b { font-size: 36px; }
.kp-delta { display: inline-flex; align-items: center; gap: 4px; margin-inline-start: 6px; padding: 3px 10px 3px 6px; border-radius: 6px; font-size: 14px; font-weight: 500; }
.kp-delta.is-good { background: var(--success-bg); color: var(--success-ink); }
.kp-delta.is-bad { background: var(--danger-bg); color: var(--danger-ink); }
.kp-cap { margin: 8px 0 var(--space-6); font-size: 14px; color: var(--ink-muted); }
.kp-scale { position: relative; display: flex; block-size: 10px; border-radius: var(--radius-pill); overflow: visible; }
.kp-scale__z { block-size: 100%; }
.kp-scale__z:first-child { border-start-start-radius: 99px; border-end-start-radius: 99px; }
.kp-scale__z--ok { background: var(--success-bg); box-shadow: inset 0 0 0 1px var(--success-line); }
.kp-scale__z--warn { background: var(--warning-bg); box-shadow: inset 0 0 0 1px var(--warning-line); }
.kp-scale__z--bad { background: var(--danger-bg); box-shadow: inset 0 0 0 1px var(--danger-line); border-start-end-radius: 99px; border-end-end-radius: 99px; }
.kp-scale__v { position: absolute; inset-block: -6px; inline-size: 4px; margin-inline-start: -2px; border-radius: 2px; background: var(--navy-900); }
.kp-scale__v b { position: absolute; inset-block-end: calc(100% + 4px); inset-inline-start: 50%; transform: translateX(-50%); padding: 1px 6px; border-radius: 4px; background: var(--navy-900); color: #fff; font-size: 12px; font-weight: 500; white-space: nowrap; }
.kp-scale__l { position: relative; block-size: 20px; margin-block-start: 6px; font-size: 12px; color: var(--ink-muted); }
.kp-scale__l span { position: absolute; transform: translateX(-50%); white-space: nowrap; }
.kp-scale__l span:first-child { transform: none; }
.kp-scale__l span:last-child { transform: translateX(-100%); }
.kp-on { display: flex; flex-direction: column; gap: 8px; margin-block-start: var(--space-4); font-size: 15px; color: var(--ink); }
.kp-on b { color: var(--navy-900); }
.kp-on small { color: var(--ink-muted); font-size: 13px; }
.kp-on .at-prog { display: block; }
.kp-howlink { display: inline-flex; align-items: center; gap: 6px; margin-block-start: var(--space-4); font-size: 15px; }

.kp-stack { display: flex; gap: 2px; block-size: 14px; border-radius: 4px; overflow: hidden; }
.kp-stack--big { block-size: 56px; gap: 3px; border-radius: 8px; }
.kp-seg { display: flex; flex-direction: column; justify-content: center; min-inline-size: 0; padding-inline: 10px; overflow: hidden; white-space: nowrap; }
.kp-stack--big .kp-seg b { font-size: 14px; font-weight: 500; }
.kp-stack--big .kp-seg small { font-size: 12px; opacity: .9; }
.kp-seg--draft { background: var(--navy-700); color: #fff; }
.kp-seg--review { background: var(--blue-500); color: #fff; }
.kp-seg--sign { background: var(--blue-200); color: var(--navy-900); }
.kp-seg.is-max { box-shadow: inset 0 0 0 2px var(--navy-900); }
.kp-stack--big .kp-seg.is-max b::after { content: " · bottleneck"; font-weight: 400; }
.kp-bneck { display: flex; gap: var(--space-3); align-items: flex-start; margin-block: var(--space-4); padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); background: var(--warning-bg); color: var(--attention-ink); }
.kp-bneck .bv-icon { flex: none; margin-block-start: 2px; }
.kp-bneck p { margin: 0; font-size: 14px; line-height: 20px; color: var(--ink); }
.kp-bneck b { color: var(--attention-ink); }
.kp-crows { display: flex; flex-direction: column; }
.kp-crow { display: grid; grid-template-columns: 210px minmax(0, 1fr) 72px; align-items: center; gap: var(--space-4); padding-block: 8px; border-block-end: 1px solid var(--line-soft); }
.kp-crow.is-sel { background: var(--blue-50); margin-inline: -8px; padding-inline: 8px; border-radius: 6px; }
.kp-crow--h { font-size: 13px; color: var(--ink-muted); padding-block: 0 8px; }
.kp-crow--h span:last-child { text-align: end; }
.kp-crow__n { text-align: start; font-size: 14px; color: var(--ink); font-weight: 400; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kp-crow__bar { position: relative; display: block; }
.kp-crow__bar .kp-seg { padding: 0; }
.kp-tline { position: absolute; inset-block: -6px; inline-size: 0; border-inline-start: 2px dashed var(--danger-ink); }
.kp-tkey { display: inline-block; inline-size: 0; block-size: 12px; border-inline-start: 2px dashed var(--danger-ink); margin-inline: 8px 4px; vertical-align: -2px; }
.kp-crow__t { display: inline-flex; align-items: center; justify-content: flex-end; gap: 4px; font-size: 14px; color: var(--navy-900); }
.kp-crow__t.is-over { color: var(--danger-ink); }
.kp-legend { list-style: none; margin: var(--space-4) 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-6); font-size: 13px; }
.kp-legend li { display: flex; align-items: center; gap: 6px; }
.kp-legend b { font-weight: 500; color: var(--navy-900); }
.kp-legend small { color: var(--ink-muted); }
.kp-sw { flex: none; display: inline-block; inline-size: 12px; block-size: 12px; border-radius: 3px; padding: 0; }

.kp-svg { display: block; inline-size: 100%; block-size: auto; }
.kp-grid line.kp-grid, .kp-svg .kp-grid { stroke: var(--line-soft); stroke-width: 1; }
.kp-ax { fill: var(--ink-muted); font-size: 12px; font-family: inherit; }
.kp-lab { fill: var(--navy-900); font-size: 13px; font-weight: 700; }
.kp-tlab { fill: var(--danger-ink); font-size: 12px; font-weight: 500; }
.kp-target { stroke: var(--danger-ink); stroke-width: 1.5; stroke-dasharray: 5 4; }
.kp-line { fill: none; stroke: var(--navy-700); stroke-width: 2.5; stroke-linejoin: round; }
.kp-area { fill: var(--blue-50); }
.kp-dot { stroke: #fff; stroke-width: 2; }
.kp-dot--ok { fill: var(--chart-positive); background: var(--chart-positive); }
.kp-dot--warn { fill: var(--chart-pending); background: var(--chart-pending); }
.kp-dot--danger { fill: var(--chart-negative); background: var(--chart-negative); }
.kp-legend--row { color: var(--ink); }
.kp-dotkey { inline-size: 10px; block-size: 10px; border-radius: 99px; display: inline-block; }

.kp-orows { display: flex; flex-direction: column; }
.kp-orow { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) 70px 140px auto; align-items: center; gap: var(--space-3); padding-block: 12px; border-block-end: 1px solid var(--line-soft); }
.kp-orow:last-child { border: 0; }
.kp-orow b { font-weight: 500; color: var(--navy-900); font-size: 15px; }
.kp-orow small { display: block; font-size: 13px; color: var(--ink-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kp-orow__m { min-inline-size: 0; }
.kp-orow__s { display: flex; align-items: flex-start; gap: 8px; min-inline-size: 0; }
.kp-orow__s .kp-sw { margin-block-start: 5px; }
.kp-orow__s b { font-size: 14px; }
.kp-orow__d { font-size: 14px; color: var(--ink-muted); white-space: nowrap; }
.kp-orow__d b { font-size: 18px; }
.kp-orow .ap-pill { justify-self: start; }
.kp-minis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); margin-block-start: var(--space-6); }
.kp-mini .kp-cap { margin-block-end: 0; }
.kp-addtile { display: flex; align-items: center; gap: var(--space-4); inline-size: 100%; margin-block-start: var(--space-6); padding: var(--space-4) var(--space-6); border: 1.5px dashed var(--line); border-radius: var(--radius-md); background: none; color: var(--blue-500); text-align: start; cursor: pointer; }
.kp-addtile:hover { border-color: var(--blue-500); background: var(--blue-50); }
.kp-addtile b { display: block; font-size: 16px; font-weight: 500; }
.kp-addtile small { color: var(--ink-muted); font-size: 14px; }

.kp-how { inline-size: 640px; }
.kp-h3 { margin: 0 0 var(--space-3); font-size: 16px; font-weight: 700; color: var(--navy-900); }
.kp-formula { padding: var(--space-4); border-radius: var(--radius-md); background: var(--neutral-bg); font-size: 15px; line-height: 22px; }
.kp-formula p { margin: 0; }
.kp-formula p + p { margin-block-start: 6px; }
.kp-how .ap-muted { margin: var(--space-3) 0 0; line-height: 20px; }
.kp-steps, .kp-tables, .kp-rules { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: var(--space-3); }
.kp-steps li { display: grid; grid-template-columns: 12px 80px 1fr; align-items: center; gap: var(--space-3); font-size: 14px; }
.kp-steps b { font-weight: 500; color: var(--navy-900); }
.kp-steps small { color: var(--ink-muted); font-size: 14px; }
.kp-tables li { display: grid; grid-template-columns: 200px 1fr; gap: 2px var(--space-3); padding-block-end: var(--space-3); border-block-end: 1px solid var(--line-soft); font-size: 13px; }
.kp-tables code, .kp-rules code, .kp-field { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12.5px; color: var(--navy-700); }
.kp-tables code { font-weight: 600; }
.kp-tables span { color: var(--ink); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12.5px; }
.kp-tables span b { color: var(--blue-500); font-weight: 600; }
.kp-tables small { grid-column: 2; color: var(--ink-muted); font-size: 13px; }
.kp-rules li { position: relative; padding-inline-start: 18px; font-size: 14px; line-height: 20px; }
.kp-rules li::before { content: ""; position: absolute; inset-inline-start: 4px; inset-block-start: 8px; inline-size: 5px; block-size: 5px; border-radius: 9px; background: var(--ink-faint); }
.kp-sql { border: 1px solid var(--line); border-radius: var(--radius-md); }
.kp-sql summary { display: flex; align-items: center; gap: 8px; padding: 12px var(--space-4); cursor: pointer; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.kp-sql pre { margin: 0; padding: var(--space-4); border-block-start: 1px solid var(--line); background: var(--neutral-bg); font-size: 12.5px; line-height: 19px; overflow-x: auto; color: var(--ink); }

.kp-main .ab-head { margin-block-end: var(--space-6); }
.kp-build { display: grid; grid-template-columns: minmax(0, 1fr) 440px; gap: var(--space-6); align-items: start; }
.kp-bcol { display: flex; flex-direction: column; gap: var(--space-4); }
.kp-bsec { display: flex; flex-direction: column; gap: var(--space-4); }
.kp-bsec.is-off { opacity: .55; }
.kp-bsec__h { display: flex; gap: var(--space-3); align-items: flex-start; }
.kp-num { flex: none; display: grid; place-items: center; inline-size: 28px; block-size: 28px; border-radius: 99px; background: var(--navy-900); color: #fff; font-size: 14px; font-weight: 500; }
.kp-bsec.is-off .kp-num { background: var(--ink-faint); }
.kp-wait { margin: 0; }
.kp-tpls { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.kp-tpl { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); text-align: start; cursor: pointer; }
.kp-tpl:hover { border-color: var(--blue-400); }
.kp-tpl.is-on { border-color: var(--blue-500); box-shadow: 0 0 0 1px var(--blue-500); background: var(--blue-50); }
.kp-tpl > span:nth-child(2) { flex: 1; min-inline-size: 0; }
.kp-tpl b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.kp-tpl small { font-size: 13px; color: var(--ink-muted); }
.kp-tpl > .bv-icon { color: var(--blue-500); }
.kp-2 { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); }
.kp-events { display: grid; grid-template-columns: 1fr 28px 1fr; gap: var(--space-3); align-items: start; }
.kp-arrow { display: grid; place-items: center; block-size: 44px; margin-block-start: 28px; color: var(--ink-muted); }
.kp-field { display: inline-block; margin-block-start: 6px; padding: 2px 6px; border-radius: 4px; background: var(--neutral-bg); }
.kp-check, .kp-radio, .kp-viz { display: flex; gap: var(--space-3); align-items: flex-start; cursor: pointer; }
.kp-check input, .kp-radio input, .kp-viz input { margin: 3px 0 0; inline-size: 18px; block-size: 18px; accent-color: var(--blue-500); flex: none; }
.kp-check b, .kp-radio b, .kp-viz b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.kp-check small, .kp-radio small, .kp-viz small { font-size: 13px; color: var(--ink-muted); }
.kp-radios { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); }
.kp-radio, .kp-viz { padding: var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); }
.kp-radio.is-on, .kp-viz.is-on { border-color: var(--blue-500); background: var(--blue-50); }
.kp-viz.is-dis { cursor: default; opacity: .6; }
.kp-req { font-size: 12px; font-weight: 400; color: var(--ink-muted); }
.kp-num-in { display: flex; align-items: center; gap: 8px; }
.kp-num-in .nc-input { inline-size: 110px; }
.kp-num-in span { color: var(--ink-muted); font-size: 15px; }
.kp-bands { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.kp-band { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 6px; font-size: 13px; font-weight: 500; }
.kp-band--ok { background: var(--success-bg); color: var(--success-ink); }
.kp-band--warn { background: var(--warning-bg); color: var(--attention-ink); }
.kp-band--bad { background: var(--danger-bg); color: var(--danger-ink); }
.kp-bsec > .ap-muted { margin: 0; }
.kp-vizs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.kp-vico { flex: none; display: flex; align-items: flex-end; gap: 2px; inline-size: 40px; block-size: 30px; padding: 4px; border-radius: 6px; background: var(--surface); border: 1px solid var(--line); }
.kp-vico i { flex: 1; border-radius: 1px; background: var(--blue-500); }
.kp-vico--stat i { block-size: 4px; } .kp-vico--stat i:first-child { block-size: 14px; background: var(--navy-900); }
.kp-vico--stack { flex-direction: column; align-items: stretch; justify-content: center; } .kp-vico--stack i { flex: none; block-size: 5px; } .kp-vico--stack i:nth-child(1) { inline-size: 90%; } .kp-vico--stack i:nth-child(2) { inline-size: 60%; background: var(--navy-700); } .kp-vico--stack i:nth-child(3) { inline-size: 75%; background: var(--blue-200); }
.kp-vico--trend i:nth-child(1) { block-size: 18px; } .kp-vico--trend i:nth-child(2) { block-size: 12px; } .kp-vico--trend i:nth-child(3) { block-size: 8px; background: var(--chart-positive); }
.kp-vico--list { flex-direction: column; align-items: stretch; justify-content: center; } .kp-vico--list i { flex: none; block-size: 3px; background: var(--ink-faint); }
.kp-who { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-6); }
.kp-chk { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; cursor: pointer; }
.kp-chk input { inline-size: 18px; block-size: 18px; accent-color: var(--blue-500); margin: 0; }
.kp-toggle { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding-block-start: var(--space-4); border-block-start: 1px solid var(--line-soft); }
.kp-toggle b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.kp-toggle small { font-size: 13px; color: var(--ink-muted); }
.kp-toggle .bv-switch { flex: none; }
.kp-prev { position: sticky; inset-block-start: var(--space-6); display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4); border-radius: 12px; background: var(--neutral-bg); }
.kp-prev__h { display: flex; justify-content: space-between; align-items: baseline; }
.kp-prev__h .ap-muted { font-size: 13px; }
.kp-hero--prev .kp-big > b { font-size: 48px; }
.kp-pempty { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; color: var(--ink-muted); padding-block: var(--space-8); }
.kp-pempty b { color: var(--navy-900); }
.kp-pempty p { margin: 0; }
.kp-prev__also { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.kp-also { display: inline-flex; align-items: center; gap: 8px; padding: 4px 10px 4px 4px; border-radius: 8px; background: var(--surface); border: 1px solid var(--line); font-size: 13px; color: var(--navy-900); }
.kp-also .kp-vico { inline-size: 30px; block-size: 22px; padding: 3px; border: 0; background: var(--neutral-bg); }
.kp-prev__who { display: flex; align-items: center; gap: 6px; margin: 0; font-size: 13px; }
.kp-hero { display: flex; flex-direction: column; }
.kp-hero .kp-cap { margin-block-end: 36px; }
.kp-hero .kp-howlink { margin-block-start: auto; padding-block-start: var(--space-4); align-self: flex-start; }
.kp-crow { grid-template-columns: 230px minmax(0, 1fr) 72px; }
.kp-crow__n { display: block; }
.kp-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); margin: var(--space-6) 0 0; padding-block-start: var(--space-4); border-block-start: 1px solid var(--line-soft); }
.kp-facts dt { font-size: 13px; color: var(--ink-muted); }
.kp-facts dd { margin: 2px 0 0; font-size: 15px; font-weight: 500; color: var(--navy-900); }

/* ---------- Configuration > Minutes template ---------- */
.tp-state { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; color: var(--success-ink); white-space: nowrap; }
.tp-state.is-dirty { color: var(--attention-ink); }
.tp-grid { display: grid; grid-template-columns: minmax(0, 560px) minmax(0, 1fr); gap: var(--space-6); align-items: start; }
.tp-ed { padding: var(--space-6); display: flex; flex-direction: column; gap: var(--space-4); }
.tp-panes { align-self: flex-start; }
.tp-lead { margin: 0; line-height: 20px; }
.tp-rows { display: flex; flex-direction: column; gap: 6px; }
.tp-row { display: flex; align-items: center; gap: var(--space-2); padding: 6px 10px 6px 6px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); }
.tp-row:hover { border-color: var(--blue-200); }
.tp-row.is-sel { border-color: var(--blue-500); box-shadow: 0 0 0 1px var(--blue-500); background: var(--blue-50); }
.tp-row.is-off .tp-row__t b, .tp-row.is-off .tp-ic { opacity: .5; }
.tp-row.is-drag { opacity: .4; }
.tp-grip { flex: none; display: grid; place-items: center; inline-size: 22px; color: var(--ink-faint); cursor: grab; }
.tp-row[draggable="false"] .tp-grip { cursor: default; }
.tp-row__b { flex: 1; min-inline-size: 0; display: flex; align-items: center; gap: var(--space-3); padding: 4px; border: 0; background: none; text-align: start; cursor: pointer; border-radius: 6px; }
.tp-row__t { min-inline-size: 0; }
.tp-row__t b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tp-row__t small { font-size: 13px; color: var(--ink-muted); }
.tp-ic { flex: none; display: grid; place-items: center; inline-size: 32px; block-size: 32px; border-radius: 8px; background: var(--blue-50); color: var(--blue-500); }
.tp-row.is-sel .tp-ic { background: var(--surface); }
.tp-move { display: flex; }
.tp-move .bv-ghost-icon { inline-size: 30px; block-size: 30px; }
.tp-move .bv-ghost-icon:disabled { opacity: .3; }
.tp-row .bv-switch { flex: none; margin-inline-start: 4px; }
.tp-req { flex: none; padding: 2px 8px; border-radius: 6px; background: var(--neutral-bg); color: var(--ink-muted); font-size: 12px; font-weight: 500; }
.tp-detail { display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-4); border-radius: var(--radius-md); background: var(--neutral-bg); }
.tp-detail__h { display: flex; align-items: center; justify-content: space-between; }
.tp-detail .nc-input { background: var(--surface); }
.tp-opts { display: flex; flex-direction: column; gap: 10px; }
.tp-opts .nc-label { margin: 0; }
.tp-note { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 13px; color: var(--ink-muted); }
.tp-look { display: flex; flex-direction: column; gap: var(--space-4); }
.tp-seg { display: inline-flex; }
.tp-seg .cm-seg__btn { block-size: 34px; padding-inline: 14px; font-size: 14px; }
.tp-swatches { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.tp-sw { display: inline-flex; align-items: center; gap: 8px; block-size: 36px; padding: 0 12px 0 8px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); font-size: 14px; color: var(--ink); cursor: pointer; }
.tp-sw i { inline-size: 20px; block-size: 20px; border-radius: 99px; background: var(--c); }
.tp-sw.is-on { border-color: var(--c); box-shadow: 0 0 0 1px var(--c); font-weight: 500; }
.tp-mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 14px; }
.tp-hint { display: block; margin-block-start: 6px; font-size: 13px; color: var(--ink-muted); }
.tp-hint b { color: var(--navy-900); font-weight: 500; }
.tp-tog { padding-block-start: var(--space-3); }
.tp-banner { display: flex; align-items: center; gap: var(--space-3); margin-block-end: var(--space-4); padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); background: var(--blue-50); color: var(--navy-700); }
.tp-banner p { flex: 1; margin: 0; font-size: 14px; color: var(--ink); }
.tp-prev { position: sticky; inset-block-start: var(--space-4); display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4); border-radius: 12px; background: var(--neutral-bg); }
.tp-prev__h { display: flex; align-items: center; gap: var(--space-3); }
.tp-prev__h .ap-muted { flex: 1; font-size: 13px; }
.tp-prev__h .bv-linkbtn { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; }
.tp-paper { max-block-size: 1060px; overflow: auto; display: flex; justify-content: center; padding-block: 4px; }
.tp-page { zoom: .9; min-block-size: 0; padding-block-end: 80px; overflow: hidden; }
.tp-page.is-letter { inline-size: 700px; }
.tp-page .mp-band { background: color-mix(in srgb, var(--acc) 9%, #fff); border-color: color-mix(in srgb, var(--acc) 25%, #fff); }
.tp-page .mp-band__i { background: var(--acc); }
.tp-page .mp-band b { color: var(--acc); }
.tp-page .mp-table th { background: var(--acc); }
.tp-page .mp-table--votes th { background: color-mix(in srgb, var(--acc) 9%, #fff); color: var(--acc); }
.tp-page .mp-item h4 span { color: var(--acc); }
.tp-page .mp-ring { background: conic-gradient(var(--acc) calc(var(--p) * 1%), var(--line-soft) 0); }
.tp-conf { color: var(--danger-ink); font-weight: 500; letter-spacing: .04em; text-transform: uppercase; }
.tp-wm { position: absolute; inset: 0; display: grid; place-items: center; font-size: 120px; font-weight: 700; letter-spacing: .1em; color: rgba(31, 41, 55, .05); transform: rotate(-30deg); pointer-events: none; }
.tp-psec { position: relative; margin-inline: -10px; padding: 0 10px 2px; border-radius: 6px; outline: 2px solid transparent; cursor: pointer; transition: outline-color .15s, background .15s; }
.tp-psec:hover { outline-color: var(--blue-200); }
.tp-psec.is-hl { outline-color: var(--blue-500); background: rgba(47, 84, 235, .03); }
.tp-psec:focus-visible { outline-color: var(--blue-500); }
.tp-page[dir="rtl"] .mp-info { direction: rtl; }

/* ---------- Configuration > Home screen ---------- */
.hs-roles { display: grid; grid-template-columns: repeat(2, minmax(0, 440px)); gap: var(--space-3); margin-block-end: var(--space-6); }
.hs-role { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); text-align: start; cursor: pointer; }
.hs-role.is-on { border-color: var(--blue-500); box-shadow: 0 0 0 1px var(--blue-500); background: var(--blue-50); }
.hs-role__i { flex: none; display: grid; place-items: center; inline-size: 40px; block-size: 40px; border-radius: 10px; background: var(--surface); color: var(--navy-700); border: 1px solid var(--line); }
.hs-role b { display: block; font-size: 16px; font-weight: 500; color: var(--navy-900); }
.hs-role small { font-size: 13px; color: var(--ink-muted); }
.hs-grid { display: grid; grid-template-columns: 380px minmax(0, 1fr); gap: var(--space-6); align-items: start; }
.hs-lib { padding: var(--space-6); display: flex; flex-direction: column; gap: var(--space-4); }
.hs-lib__h { display: flex; align-items: baseline; justify-content: space-between; }
.hs-g { display: flex; flex-direction: column; gap: 6px; }
.hs-g .cm-eyebrow { margin-block-end: 2px; font-size: 12px; }
.hs-item { display: flex; align-items: center; gap: var(--space-3); padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--radius-md); cursor: pointer; }
.hs-item input { flex: none; inline-size: 18px; block-size: 18px; margin: 0; accent-color: var(--blue-500); }
.hs-item b { display: block; font-size: 14px; font-weight: 500; color: var(--navy-900); }
.hs-item small { font-size: 12.5px; color: var(--ink-muted); }
.hs-item.is-on { background: var(--blue-50); border-color: var(--blue-200); }
.hs-item.is-sel { border-color: var(--blue-500); }
.hs-item.is-na { cursor: default; background: var(--neutral-bg); border-style: dashed; }
.hs-item.is-na .tp-ic, .hs-item.is-na b { opacity: .5; }
.hs-copy { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; align-self: flex-start; }
.hs-prevwrap { position: sticky; inset-block-start: var(--space-4); display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4); border-radius: 12px; background: var(--neutral-bg); }
.hs-frame { border-radius: 10px; overflow: hidden; border: 1px solid var(--line); background: var(--surface); box-shadow: 0 8px 24px rgba(3, 17, 98, .06); }
.hs-frame__bar { display: flex; align-items: center; gap: 6px; block-size: 34px; padding-inline: 12px; background: var(--chrome-800); }
.hs-frame__bar span { inline-size: 9px; block-size: 9px; border-radius: 9px; background: var(--chrome-600); }
.hs-frame__bar b { margin-inline-start: 8px; font-size: 12px; font-weight: 500; color: var(--chrome-ink-muted); }
.hs-page { padding: var(--space-4) var(--space-4) var(--space-6); }
.hs-greet { margin-block-end: var(--space-4); }
.hs-greet b { display: block; font-size: 18px; font-weight: 700; color: var(--navy-900); }
.hs-greet small { font-size: 13px; color: var(--ink-muted); }
.hs-cols { display: grid; grid-template-columns: minmax(0, 1fr) 240px; gap: var(--space-3); align-items: start; }
.hs-main { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); }
.hs-side { display: flex; flex-direction: column; gap: var(--space-3); }
.hs-w { position: relative; min-inline-size: 0; padding: 10px 12px 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); cursor: pointer; transition: box-shadow .15s, border-color .15s; }
.hs-w.is-full { grid-column: span 2; }
.hs-w:hover { border-color: var(--blue-200); }
.hs-w.is-sel, .hs-w:focus-visible { border-color: var(--blue-500); box-shadow: 0 0 0 2px var(--blue-500); outline: 0; }
.hs-w__h { display: flex; align-items: center; justify-content: space-between; gap: 6px; min-block-size: 26px; margin-block-end: 8px; }
.hs-w__h > span:first-child { display: inline-flex; align-items: center; gap: 6px; min-inline-size: 0; font-size: 13px; font-weight: 700; color: var(--navy-900); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hs-w__h > span:first-child .bv-icon { color: var(--blue-500); flex: none; }
.hs-w__a { display: none; align-items: center; gap: 2px; flex: none; }
.hs-w.is-sel .hs-w__a, .hs-w:focus-within .hs-w__a { display: inline-flex; }
.hs-w__a .bv-ghost-icon { inline-size: 26px; block-size: 26px; }
.hs-w__a .bv-ghost-icon:disabled { opacity: .3; }
.hs-wbtn { block-size: 24px; padding-inline: 8px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); font-size: 12px; color: var(--navy-700); cursor: pointer; }
.hs-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.hs-stats span { padding: 8px; border-radius: 6px; background: var(--neutral-bg); font-size: 12px; color: var(--ink-muted); }
.hs-stats b { display: block; font-size: 20px; color: var(--navy-900); }
.hs-donut { display: flex; align-items: center; gap: 12px; font-size: 12px; color: var(--ink-muted); }
.hs-donut b { display: block; font-size: 18px; color: var(--navy-900); }
.hs-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.hs-cards span { display: flex; flex-direction: column; gap: 2px; padding: 8px; border: 1px solid var(--line-soft); border-radius: 6px; }
.hs-cards b { font-size: 12.5px; font-weight: 500; color: var(--navy-900); }
.hs-cards small { font-size: 11px; color: var(--ink-muted); }
.hs-cards i { align-self: flex-start; margin-block-start: 4px; padding: 2px 10px; border-radius: 5px; background: var(--blue-500); color: #fff; font-size: 11px; font-style: normal; }
.hs-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.hs-list li { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-block: 6px; border-block-start: 1px solid var(--line-soft); }
.hs-list li:first-child { border: 0; padding-block-start: 0; }
.hs-list b { display: block; font-size: 12.5px; font-weight: 500; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hs-list small { font-size: 11px; color: var(--ink-muted); }
.hs-list li > span { min-inline-size: 0; }
.hs-list--d li { justify-content: flex-start; }
.hs-date { flex: none; display: grid; place-items: center; inline-size: 38px; padding-block: 3px; border-radius: 6px; background: var(--blue-50); font-size: 10px; color: var(--blue-500); line-height: 1.2; }
.hs-date b { font-size: 14px; color: var(--navy-900); }
.hs-pill { flex: none; padding: 1px 7px; border-radius: 5px; font-size: 10.5px; font-style: normal; font-weight: 500; }
.hs-pill--warn { background: var(--warning-bg); color: var(--attention-ink); }
.hs-pill--danger { background: var(--danger-bg); color: var(--danger-ink); }
.hs-pill--ok { background: var(--success-bg); color: var(--success-ink); }
.hs-pill--open { background: var(--neutral-bg); color: var(--ink); }
.hs-prog { display: grid; gap: 6px; }
.hs-prog b { display: block; font-size: 12.5px; font-weight: 500; color: var(--ink); }
.hs-prog small { font-size: 11px; color: var(--ink-muted); }
.hs-prog i { display: block; block-size: 5px; border-radius: 5px; background: linear-gradient(90deg, var(--success-500) var(--p), var(--line-soft) var(--p)); margin-block-end: 4px; }
.hs-kpi { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 8px; }
.hs-kpi b { font-size: 28px; line-height: 1; color: var(--navy-900); }
.hs-kpi span { font-size: 12px; color: var(--ink-muted); }
.hs-cal { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }
.hs-cal i { block-size: 16px; border-radius: 4px; background: var(--neutral-bg); }
.hs-cal i.is-ev { background: var(--blue-200); }
.hs-cal i.is-today { background: var(--blue-500); }
.hs-empty { margin: 0; padding: var(--space-6); border: 1.5px dashed var(--line); border-radius: 8px; text-align: center; font-size: 13px; color: var(--ink-muted); grid-column: 1 / -1; }

/* ---------- Library ---------- */
.lb-main .cm-head { align-items: center; }
.lb-main .cm-search { inline-size: 280px; }
.lb-main .cm-tab .bv-icon { color: var(--attention-ink); }
.lb-fbtn .cm-count { background: var(--blue-50); color: var(--blue-500); }
.lb-fmenu { min-inline-size: 200px; }
.lb-fchk { padding: 8px 12px; }
.lb-top { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); margin-block-end: var(--space-4); min-block-size: 32px; }
.lb-crumbs { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; font-size: 16px; }
.lb-crumbs .bv-linkbtn { color: var(--ink-muted); font-weight: 400; font-size: 16px; }
.lb-crumbs b { color: var(--navy-900); font-weight: 500; }
.lb-sep { display: inline-flex; color: var(--ink-faint); }
.lb-store { display: flex; align-items: center; gap: var(--space-3); font-size: 13px; color: var(--ink-muted); }
.lb-store b { color: var(--navy-900); font-weight: 500; }
.lb-store .at-prog { display: block; inline-size: 120px; }
.lb-lead { display: inline-flex; align-items: center; gap: 6px; margin: 0; }
.lb-lead .bv-icon { color: var(--attention-ink); }
.lb-finfo { display: flex; align-items: center; gap: var(--space-4); margin-block-end: var(--space-4); padding: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); }
.lb-finfo > div { flex: 1; }
.lb-finfo b { font-size: 17px; color: var(--navy-900); font-weight: 500; }
.lb-finfo p { margin: 2px 0 0; }
.lb-table { padding: 0; overflow: visible; }
.lb-row { display: grid; grid-template-columns: 44px minmax(0, 1fr) 220px 170px 100px 96px; align-items: center; gap: var(--space-3); min-block-size: 64px; padding-inline: var(--space-4) var(--space-3); border-block-end: 1px solid var(--line-soft); }
.lb-srow { display: grid; grid-template-columns: minmax(0, 1.5fr) 96px minmax(0, 1fr) minmax(0, 1.1fr) 150px 150px 96px; align-items: center; gap: var(--space-3); min-block-size: 68px; padding-inline: var(--space-4) var(--space-3); border-block-end: 1px solid var(--line-soft); }
.lb-row:last-child, .lb-srow:last-child { border-block-end: 0; }
.lb-row--h { min-block-size: 46px; background: var(--neutral-bg); border-radius: var(--radius-sm) var(--radius-sm) 0 0; font-size: 13px; font-weight: 500; color: var(--ink-muted); }
.lb-row:not(.lb-row--h):hover, .lb-srow:not(.lb-row--h):hover { background: #fafbff; }
.lb-row.is-sel { background: var(--blue-50); }
.lb-row.is-sub { min-block-size: 52px; background: var(--neutral-bg); }
.lb-row.is-sub .lb-name { padding-inline-start: 28px; }
.lb-row.is-new { background: var(--blue-50); }
.lb-name { display: flex; align-items: center; gap: var(--space-3); min-inline-size: 0; }
.lb-name__t { min-inline-size: 0; display: flex; flex-direction: column; }
.lb-open, .lb-copy { padding: 0; border: 0; background: none; font: inherit; font-size: 15px; font-weight: 500; color: var(--navy-900); text-align: start; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lb-open:hover { color: var(--blue-500); text-decoration: underline; }
.lb-copy { cursor: default; font-weight: 400; color: var(--ink); }
.lb-name__t small { font-size: 13px; color: var(--ink-muted); }
.lb-fi { flex: none; display: grid; place-items: center; inline-size: 36px; block-size: 36px; border-radius: 8px; }
.lb-fi i { font-style: normal; font-size: 9.5px; font-weight: 700; letter-spacing: .04em; color: #fff; padding: 2px 4px; border-radius: 3px; }
.lb-fi--pdf { background: #fdecec; } .lb-fi--pdf i { background: #d93f3f; }
.lb-fi--xls { background: #e7f5ec; } .lb-fi--xls i { background: #1f8a4c; }
.lb-fi--doc { background: #e8effd; } .lb-fi--doc i { background: #2f5fd0; }
.lb-fi--zip { background: var(--neutral-bg); } .lb-fi--zip i { background: #5b6170; }
.lb-fi--fd { background: #fff6e0; }
.lb-fi--lg { inline-size: 64px; block-size: 64px; border-radius: 14px; }
.lb-fi--lg i { font-size: 13px; padding: 3px 6px; }
.lb-ct { flex: none; display: grid; place-items: center; inline-size: 36px; block-size: 36px; border-radius: 8px; background: color-mix(in srgb, var(--c) 12%, #fff); color: var(--c); font-size: 13px; font-weight: 700; }
.lb-ct--sm { inline-size: 28px; block-size: 28px; border-radius: 7px; font-size: 11px; }
.lb-det__top .lb-ct { inline-size: 64px; block-size: 64px; font-size: 20px; border-radius: 14px; }
.lb-chip { flex: none; display: inline-flex; align-items: center; gap: 4px; padding: 2px 8px; border: 0; border-radius: 6px; background: var(--neutral-bg); color: var(--ink); font: inherit; font-size: 12px; font-weight: 500; white-space: nowrap; }
button.lb-chip { cursor: pointer; background: var(--warning-bg); color: var(--attention-ink); }
.lb-chip--sh { background: var(--blue-50); color: var(--navy-700); }
.lb-chip--new { background: var(--blue-500); color: #fff; }
.lb-own { display: flex; align-items: center; gap: 8px; min-inline-size: 0; font-size: 14px; }
.lb-own b { font-weight: 400; color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lb-av { inline-size: 28px; block-size: 28px; font-size: 10px; flex: none; }
.lb-date { display: flex; flex-direction: column; font-size: 14px; min-inline-size: 0; }
.lb-date b { font-weight: 400; color: var(--ink); }
.lb-date small { font-size: 12px; color: var(--ink-muted); }
.lb-size { font-size: 14px; color: var(--ink-muted); }
.lb-acts { display: flex; align-items: center; justify-content: flex-end; gap: 2px; }
.lb-star { display: grid; place-items: center; inline-size: 36px; block-size: 36px; border: 0; border-radius: 8px; background: none; color: var(--ink-faint); cursor: pointer; opacity: 0; }
.lb-row:hover .lb-star, .lb-srow:hover .lb-star, .lb-star:focus-visible, .lb-star.is-on { opacity: 1; }
.lb-star:hover { background: var(--neutral-bg); }
.lb-star.is-on { color: #e6a700; }
.lb-star.is-on svg { fill: #f5b83d; }
.lb-menu { min-inline-size: 220px; }
.lb-del { color: var(--danger-ink); }
.lb-nf { block-size: 38px; max-inline-size: 320px; }
.lb-selbar { display: flex; align-items: center; gap: var(--space-4); margin-block-end: var(--space-3); padding: 8px var(--space-4); border-radius: var(--radius-md); background: var(--blue-50); font-size: 14px; }
.lb-selbar b { color: var(--navy-900); font-weight: 500; }
.lb-selbar .bv-linkbtn { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; }
.lb-empty { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 56px var(--space-6); text-align: center; }
.lb-empty b { font-size: 16px; color: var(--navy-900); }
.lb-empty p { margin: 0; font-size: 14px; color: var(--ink-muted); }
.lb-empty__i { display: grid; place-items: center; inline-size: 56px; block-size: 56px; border-radius: 99px; background: var(--neutral-bg); color: var(--ink-muted); }

.lb-shbar { display: flex; align-items: center; gap: var(--space-4); margin-block-end: var(--space-4); }
.lb-shbar p { margin: 0; }
.lb-shbar .cl-seg .bv-icon { color: var(--ink-muted); }
.lb-dirc { display: inline-flex; align-items: center; justify-self: start; gap: 4px; padding: 3px 8px; border-radius: 6px; font-size: 12px; font-weight: 500; }
.lb-dirc--in { background: var(--blue-50); color: var(--navy-700); }
.lb-dirc--out { background: var(--success-bg); color: var(--success-ink); }
.lb-who { display: flex; align-items: center; gap: 8px; min-inline-size: 0; }
.lb-who__t { display: flex; flex-direction: column; min-inline-size: 0; }
.lb-who__t b { font-size: 14px; font-weight: 400; color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lb-who__t small { font-size: 12px; color: var(--ink-muted); }
.lb-stack { display: flex; flex: none; }
.lb-stack .lb-av + .lb-av { margin-inline-start: -8px; box-shadow: 0 0 0 2px var(--surface); }
.lb-stack .bv-avatar--more { font-size: 10px; }
.lb-sacc { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.lb-sacc small { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; color: var(--attention-ink); }
.lb-acc { gap: 5px; }
.lb-acc .bv-icon { flex: none; }
.lb-seen { display: inline-flex; align-items: center; gap: 4px; }

.lb-det .nc-body { gap: var(--space-6); }
.lb-det__top { display: flex; align-items: center; gap: var(--space-4); }
.lb-det__top b { display: block; font-size: 17px; font-weight: 500; color: var(--navy-900); word-break: break-word; }
.lb-det__top small { font-size: 13px; color: var(--ink-muted); }
.lb-dl { grid-template-columns: 1fr 1fr; gap: var(--space-4); }
.lb-acl { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.lb-acl li { display: flex; align-items: center; gap: var(--space-3); }
.lb-acl li > span:nth-child(2) { flex: 1; min-inline-size: 0; }
.lb-acl b { display: block; font-size: 14px; font-weight: 500; color: var(--ink); }
.lb-acl small { font-size: 12px; color: var(--ink-muted); }
.lb-ownl { font-size: 13px; color: var(--ink-muted); }
.lb-act { list-style: none; margin: 0; padding: 0; border-inline-start: 2px solid var(--line); }
.lb-act li { position: relative; padding: 0 0 12px 16px; font-size: 14px; color: var(--ink); }
.lb-act li::before { content: ""; position: absolute; inset-inline-start: -5px; inset-block-start: 6px; inline-size: 8px; block-size: 8px; border-radius: 9px; background: var(--blue-500); }
.lb-act b { font-weight: 500; }
.lb-act small { display: block; font-size: 12px; color: var(--ink-muted); }
.lb-share .ma-dlg__b { gap: var(--space-4); }
.lb-addrow { display: flex; gap: var(--space-2); }
.lb-add { flex: 1; inline-size: auto !important; }
.lb-accsel { block-size: 40px; padding-inline: 10px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); font: inherit; font-size: 14px; color: var(--ink); }
.lb-addrow .lb-accsel { block-size: 44px; }
.lb-sugg { display: flex; flex-direction: column; padding: 4px; border: 1px solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-pop); margin-block-start: -8px; }
.lb-sugg__i { display: flex; align-items: center; gap: var(--space-3); padding: 8px 10px; border: 0; border-radius: 8px; background: none; text-align: start; cursor: pointer; }
.lb-sugg__i:hover { background: var(--neutral-bg); }
.lb-sugg__i b { display: block; font-size: 14px; font-weight: 500; color: var(--ink); }
.lb-sugg__i small { font-size: 12px; color: var(--ink-muted); }
.lb-eb { margin-block-end: var(--space-3); font-size: 12px; }
.lb-acl .lb-accsel { block-size: 34px; font-size: 13px; }
.lb-gen { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3); border-radius: var(--radius-md); background: var(--neutral-bg); }
.lb-gen__i { display: grid; place-items: center; inline-size: 36px; block-size: 36px; border-radius: 99px; background: var(--surface); color: var(--navy-700); }
.lb-gen b { display: block; font-size: 14px; font-weight: 500; color: var(--navy-900); margin-block-end: 2px; }
.lb-gen .lb-accsel { block-size: 32px; border: 0; padding-inline: 0; background: none; color: var(--ink-muted); }
.lb-opts { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-3) var(--space-4); }
.lb-date-in { inline-size: 170px; block-size: 38px; }
.lb-opts .kp-chk:last-child { margin-inline-start: auto; }
.lb-share .ma-dlg__f .bv-linkbtn { display: inline-flex; align-items: center; gap: 6px; }

/* ---------- KPI scorecard (redesign) ---------- */
.kp-subs { margin-block-end: var(--space-6); }
.kp-subs .cm-seg { display: inline-flex; }
.kp-subs .cm-count.is-due { background: var(--warning-bg); color: var(--attention-ink); }
.kp-sum { display: grid; grid-template-columns: 1.3fr repeat(4, 1fr); gap: var(--space-3); margin-block-end: var(--space-3); }
.kp-sum > * { display: flex; flex-direction: column; justify-content: center; gap: 2px; padding: var(--space-3) var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); text-align: start; font: inherit; }
.kp-sum__p small { font-size: 12px; color: var(--ink-muted); }
.kp-sum__p b { font-size: 20px; color: var(--navy-900); }
.kp-sum__p span { font-size: 13px; color: var(--ink-muted); }
.kp-sum__c b { font-size: 28px; line-height: 1.1; color: var(--navy-900); }
.kp-sum__c span { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; color: var(--ink); }
.kp-sum__c span i { inline-size: 8px; block-size: 8px; border-radius: 9px; }
.kp-sum__c--ok span i { background: var(--chart-positive); }
.kp-sum__c--warn span i { background: var(--chart-pending); }
.kp-sum__c--danger span i { background: var(--chart-negative); }
.kp-sum__c--due { cursor: pointer; background: var(--warning-bg); border-color: var(--warning-line); }
.kp-sum__c--due span { color: var(--attention-ink); }
.kp-mode, .kp-note { display: flex; align-items: center; gap: var(--space-3); margin-block-end: var(--space-6); padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); background: var(--neutral-bg); color: var(--navy-700); }
.kp-mode.is-snap { background: var(--blue-50); }
.kp-mode p, .kp-note p { flex: 1; margin: 0; font-size: 14px; line-height: 20px; color: var(--ink); }
.kp-mode b, .kp-note b { color: var(--navy-900); font-weight: 500; margin-inline-end: 6px; }
.kp-mode .bv-linkbtn { font-size: 14px; white-space: nowrap; }
.kp-dchips { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-block-end: var(--space-6); }
.kp-dchip { display: inline-flex; align-items: center; gap: 6px; block-size: 36px; padding-inline: 14px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); font: inherit; font-size: 14px; color: var(--ink); cursor: pointer; }
.kp-dchip span { font-size: 12px; color: var(--ink-muted); }
.kp-dchip.is-on { border-color: var(--navy-900); background: var(--navy-900); color: #fff; }
.kp-dchip.is-on span { color: var(--blue-200); }
.kp-dom { margin-block-end: var(--space-8); }
.kp-dom__h { display: flex; align-items: baseline; gap: var(--space-3); margin-block-end: var(--space-4); }
.kp-dom__h .ap-muted { font-size: 14px; }
.kc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(330px, 1fr)); gap: var(--space-4); }
.kc { position: relative; display: flex; flex-direction: column; padding: var(--space-4) var(--space-4) 0; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); overflow: hidden; }
.kc::before { content: ""; position: absolute; inset-block: 0; inset-inline-start: 0; inline-size: 4px; }
.kc--ok::before { background: var(--chart-positive); } .kc--warn::before { background: var(--chart-pending); } .kc--danger::before { background: var(--chart-negative); } .kc--muted::before { background: var(--line); }
.kc__top { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); }
.kc-src { display: inline-flex; align-items: center; gap: 5px; padding: 2px 8px; border-radius: 6px; font-size: 12px; font-weight: 500; white-space: nowrap; }
.kc-src--calc { background: var(--blue-50); color: var(--navy-700); }
.kc-src--entered { background: var(--violet-bg); color: var(--violet-ink); }
.kc-src--assess { background: var(--success-bg); color: var(--success-ink); }
.kc-src--connected { background: var(--neutral-bg); color: var(--ink); }
.kc__name { margin: var(--space-3) 0 2px; font-size: 17px; font-weight: 500; color: var(--navy-900); }
.kc__name .lb-open { font-size: 17px; white-space: normal; }
.kc__obj { margin: 0; min-block-size: 40px; font-size: 13px; line-height: 20px; color: var(--ink-muted); }
.kc__val { display: flex; align-items: baseline; gap: 6px; margin-block-start: var(--space-3); }
.kc__val b { font-size: 40px; line-height: 1; font-weight: 700; color: var(--navy-900); letter-spacing: -.02em; }
.kc__val span { font-size: 16px; color: var(--ink-muted); }
.kc__tgt { margin: 6px 0 0; font-size: 13px; color: var(--ink-muted); }
.kc__tgt b { font-weight: 500; }
.kc__tgt b.is-ok { color: var(--success-ink); } .kc__tgt b.is-warn { color: var(--attention-ink); } .kc__tgt b.is-danger { color: var(--danger-ink); }
.kc-spark { display: block; inline-size: 100%; block-size: 44px; margin-block: var(--space-3); overflow: visible; }
.kc-spark__t { stroke: var(--ink-faint); stroke-width: 1; stroke-dasharray: 4 3; vector-effect: non-scaling-stroke; }
.kc-spark__l { fill: none; stroke: var(--navy-700); stroke-width: 2; vector-effect: non-scaling-stroke; stroke-linejoin: round; }
.kc-spark circle { fill: var(--navy-700); }
.kc-spark--ok circle:last-of-type { fill: var(--chart-positive); } .kc-spark--warn circle:last-of-type { fill: var(--chart-pending); } .kc-spark--danger circle:last-of-type { fill: var(--chart-negative); }
.kc__foot { display: flex; align-items: center; gap: 8px; margin-inline: calc(-1 * var(--space-4)); padding: 10px var(--space-4); border-block-start: 1px solid var(--line-soft); }
.kc__own { display: flex; flex-direction: column; min-inline-size: 0; flex: 1; }
.kc__own small { font-size: 11px; color: var(--ink-muted); }
.kc__own b { font-size: 13px; font-weight: 500; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.kc-per { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; color: var(--ink-muted); white-space: nowrap; }
.kc-per.is-old, .kc-per.is-pend { color: var(--attention-ink); }
.kc__due { display: flex; align-items: center; gap: 8px; margin-inline: calc(-1 * var(--space-4)); padding: 8px var(--space-4); background: var(--warning-bg); color: var(--attention-ink); font-size: 13px; }
.kc__due.is-info { background: var(--blue-50); color: var(--navy-700); }
.kc__due span { flex: 1; color: var(--ink); }
.kc__due .bv-linkbtn { font-size: 13px; }
.kc--prev { padding-block-end: 0; }
.kc--prev .kc__obj i { color: var(--ink-faint); }
.km-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); }
.km { display: flex; flex-direction: column; padding: var(--space-4); }
.km h3 { margin: 0; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.km__v { margin-block-start: 8px; font-size: 32px; font-weight: 700; color: var(--navy-900); }
.km__d { flex: 1; margin: 4px 0 var(--space-3); font-size: 13px; line-height: 19px; color: var(--ink-muted); }
.km__bars { display: flex; align-items: flex-end; gap: 6px; block-size: 48px; }
.km__bars i { flex: 1; border-radius: 3px 3px 0 0; background: var(--blue-200); }
.km__bars i:last-child { background: var(--navy-700); }
.km__f { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); margin-block-start: var(--space-3); padding-block-start: var(--space-3); border-block-start: 1px solid var(--line-soft); }
.km__f small { font-size: 12px; color: var(--ink-muted); }
.km__f .bv-btn-secondary { display: inline-flex; align-items: center; gap: 6px; }
.kq-top { display: flex; align-items: center; gap: var(--space-6); margin-block-end: var(--space-4); padding: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); }
.kq-top > div { display: flex; flex-direction: column; gap: 8px; min-inline-size: 280px; }
.kq-top > div b { font-size: 15px; color: var(--navy-900); font-weight: 500; }
.kq-top .at-prog { display: block; }
.kq-flow { display: flex; gap: var(--space-4); margin: 0; padding: 0; list-style: none; counter-reset: q; }
.kq-flow li { display: flex; align-items: center; gap: 6px; font-size: 13px; color: var(--ink-muted); }
.kq-flow li + li::before { content: "→"; margin-inline-end: var(--space-2); color: var(--ink-faint); }
.kq-flow .bv-icon { color: var(--blue-500); flex: none; }
.kq-row { display: grid; grid-template-columns: minmax(0, 1.4fr) 90px minmax(0, 1fr) 100px 200px 70px 220px; align-items: center; gap: var(--space-3); min-block-size: 68px; padding-inline: var(--space-4); border-block-end: 1px solid var(--line-soft); font-size: 14px; }
.kq-row:last-child { border: 0; }
.kq-k { display: flex; flex-direction: column; min-inline-size: 0; }
.kq-k small { font-size: 12px; color: var(--ink-muted); }
.kq-st { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; }
.kq-st small { font-size: 12px; color: var(--ink-muted); }
.kq-v { font-size: 16px; color: var(--navy-900); }
.kq-a { display: flex; align-items: center; justify-content: flex-end; gap: var(--space-3); }
.kq-a .bv-btn-secondary { display: inline-flex; align-items: center; gap: 6px; }
.kl-row { display: grid; grid-template-columns: minmax(0, 1.6fr) 130px 190px minmax(0, 1.4fr) 120px 170px minmax(0, 1fr); align-items: center; gap: var(--space-3); min-block-size: 68px; padding-inline: var(--space-4); border-block-end: 1px solid var(--line-soft); font-size: 13px; }
.kl-row:last-child { border: 0; }
.kl-row.is-draft { background: var(--neutral-bg); }
.kl-row.is-draft .kq-k b { font-weight: 500; color: var(--ink-muted); font-size: 15px; }
.kl-m, .kl-vis { color: var(--ink-muted); line-height: 18px; }
.kd-tags { display: flex; gap: var(--space-2); margin-block-end: var(--space-2); }
.kd-dom { padding: 2px 8px; border-radius: 6px; background: var(--neutral-bg); font-size: 12px; font-weight: 500; color: var(--ink); }
.kp-main .ab-head__a .cl-segs { margin: 0; }
.kd-def { margin-block-end: var(--space-6); }
.kd-dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4) var(--space-6); margin: 0; }
.kd-dl .kd-wide { grid-column: span 2; }
.kd-dl dt { font-size: 12px; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; color: var(--ink-muted); margin-block-end: 6px; }
.kd-dl dd { margin: 0; font-size: 15px; color: var(--ink); }
.kd-dl dd small { display: block; margin-block-start: 4px; font-size: 13px; color: var(--ink-muted); line-height: 18px; }
.kd-grid { display: grid; grid-template-columns: 360px minmax(0, 1fr); gap: var(--space-6); margin-block-end: var(--space-6); }
.kd-hero { position: relative; overflow: hidden; }
.kd-hero::before { content: ""; position: absolute; inset-block: 0; inset-inline-start: 0; inline-size: 4px; }
.kd-hero .kc__val b { font-size: 56px; }
.kd-caveat { display: flex; gap: 8px; margin: var(--space-4) 0 0; padding: var(--space-3); border-radius: var(--radius-md); background: var(--neutral-bg); font-size: 13px; line-height: 19px; color: var(--ink); }
.kd-caveat .bv-icon { flex: none; margin-block-start: 2px; color: var(--ink-muted); }
.kh { padding-block-end: var(--space-4); }
.kh-row { display: grid; grid-template-columns: 140px 140px 160px 1fr; align-items: center; gap: var(--space-3); min-block-size: 48px; padding-inline: var(--space-3); border-block-end: 1px solid var(--line-soft); font-size: 14px; }
.kh-row b { color: var(--navy-900); }
.kh-row .ap-pill { justify-self: start; }
.kh-note { display: flex; gap: var(--space-3); margin-block-start: var(--space-4); padding: var(--space-3) var(--space-4); border-inline-start: 3px solid var(--violet-ink); border-radius: 6px; background: var(--violet-bg); }
.kh-note .bv-icon { flex: none; color: var(--violet-ink); margin-block-start: 2px; }
.kh-note p { margin: 0; font-size: 14px; line-height: 20px; color: var(--ink); }
.kh-note b { display: block; font-weight: 500; color: var(--navy-900); }
.ke-sum { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-3); }
.ke-sum > div { padding: var(--space-3); border-radius: var(--radius-md); background: var(--neutral-bg); }
.ke-sum small { display: block; font-size: 12px; color: var(--ink-muted); }
.ke-sum b { font-size: 22px; color: var(--navy-900); }
.ke-sum > div:first-child { background: var(--blue-50); }
.ke-file { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); }
.ke-file > span:nth-child(2) { flex: 1; }
.ke-file b { display: block; font-size: 14px; font-weight: 500; }
.ke-file small { font-size: 12px; color: var(--ink-muted); }
.ke-who { display: flex; align-items: center; gap: 6px; margin: 0; }
.ke-drop { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-4); border: 1.5px dashed var(--line); border-radius: var(--radius-md); color: var(--blue-500); }
.ke-drop b { display: block; font-size: 14px; font-weight: 500; }
.ke-drop small { font-size: 12px; color: var(--ink-muted); }
.ks-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.ks { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); text-align: start; font: inherit; cursor: pointer; }
.ks:hover:not(:disabled) { border-color: var(--blue-400); }
.ks.is-on { border-color: var(--blue-500); box-shadow: 0 0 0 1px var(--blue-500); background: var(--blue-50); }
.ks:disabled:not(.is-on) { opacity: .5; cursor: default; }
.ks b { font-size: 15px; font-weight: 500; color: var(--navy-900); line-height: 20px; }
.ks small { font-size: 13px; color: var(--ink-muted); }
.ks small span { color: var(--ink); font-weight: 500; }
.ks__ok { position: absolute; inset-block-start: 12px; inset-inline-end: 12px; color: var(--blue-500); font-style: normal; }
.kd-facts { display: grid; gap: 10px; margin: var(--space-4) 0 0; padding-block-start: var(--space-4); border-block-start: 1px solid var(--line-soft); }
.kd-facts > div { display: flex; justify-content: space-between; gap: var(--space-3); }
.kd-facts dt { font-size: 13px; color: var(--ink-muted); }
.kd-facts dd { margin: 0; font-size: 14px; font-weight: 500; color: var(--ink); text-align: end; }
.kd-facts dd.is-ok { color: var(--success-ink); } .kd-facts dd.is-danger { color: var(--danger-ink); }

/* ---------- Minutes template: text boxes and own design ---------- */
.tp-panes .cm-seg__btn { padding-inline: 12px; font-size: 14px; }
.tp-ex { color: var(--navy-700); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; }
.tp-addbox { margin-block-start: 0; padding: var(--space-3) var(--space-4); }
.tp-addbox b { font-size: 15px; }
.tp-kinds { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-2); }
.tp-kind { display: flex; align-items: flex-start; gap: var(--space-3); padding: 10px 12px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); text-align: start; font: inherit; cursor: pointer; }
.tp-kind:hover { border-color: var(--blue-400); }
.tp-kind.is-on { border-color: var(--blue-500); box-shadow: 0 0 0 1px var(--blue-500); background: var(--blue-50); }
.tp-kind .tp-ic { inline-size: 28px; block-size: 28px; }
.tp-kind.is-on .tp-ic { background: var(--surface); }
.tp-kind b { display: block; font-size: 14px; font-weight: 500; color: var(--navy-900); }
.tp-kind small { font-size: 12px; color: var(--ink-muted); line-height: 16px; }
.tp-toks { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-block-start: -8px; }
.tp-toks .ap-muted { font-size: 13px; }
.tp-tok { padding: 3px 8px; border: 1px dashed var(--blue-200); border-radius: 6px; background: var(--surface); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; color: var(--navy-700); cursor: pointer; }
.tp-tok:hover { border-style: solid; background: var(--blue-50); }
.tp-reset { align-self: end; padding-block-end: 4px; }
.tp-note b { color: var(--navy-900); font-weight: 500; }
.tp-style { display: flex; align-items: center; gap: var(--space-2); }
.tp-boldbtn { inline-size: 40px; block-size: 42px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); font: inherit; font-size: 16px; color: var(--ink); cursor: pointer; }
.tp-boldbtn.is-on { border-color: var(--navy-900); background: var(--navy-900); color: #fff; }
.tp-hl { display: flex; flex-direction: column; gap: 6px; }
.tp-bxs { display: flex; flex-wrap: wrap; gap: 4px 12px; }
.tp-bxs--hr { justify-content: flex-end; margin-block-start: 4px; }
.tp-bxs--title { margin: 8px 0 4px; }
.tp-bxs--sig { margin: 12px 0 4px; }
.mp-foot .tp-bxs, .tp-lh-foot .tp-bxs { display: inline-flex; margin-inline-end: 10px; }
.tp-bx { position: relative; display: inline-flex; align-items: baseline; gap: 4px; padding: 1px 4px; border-radius: 3px; color: #111827; cursor: pointer; outline: 1.5px dashed transparent; outline-offset: 1px; }
.tp-bx:hover { outline-color: var(--blue-200); }
.tp-bx.is-hl, .tp-bx:focus-visible { outline: 2px solid var(--blue-500); background: rgba(47, 84, 235, .06); }
.tp-bx small { font-size: inherit; color: #6b7280; font-weight: 400; }
.tp-bx--s { font-size: 10px; } .tp-bx--m { font-size: 12px; } .tp-bx--l { font-size: 15px; }
.tp-bx.is-b { font-weight: 700; }
.tp-bx__ask { display: inline-grid; place-items: center; inline-size: 14px; block-size: 14px; border-radius: 3px; background: var(--violet-bg); color: var(--violet-ink); font-style: normal; align-self: center; }
.tp-kinds--2 { grid-template-columns: 1fr 1fr; }
.tp-needs { padding: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); }
.tp-needs__h { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); margin-block-end: var(--space-3); }
.tp-needs__h b { font-size: 15px; color: var(--navy-900); font-weight: 500; }
.tp-needs__h .bv-linkbtn { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; }
.tp-needs ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.tp-needs li { display: flex; gap: 10px; }
.tp-needs li > .bv-icon { flex: none; margin-block-start: 3px; color: var(--success-ink); }
.tp-needs li b { display: block; font-size: 14px; font-weight: 500; color: var(--ink); }
.tp-needs li small { font-size: 13px; line-height: 20px; color: var(--ink-muted); }
.tp-needs code, .tp-map code { padding: 1px 5px; border-radius: 4px; background: var(--neutral-bg); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; color: var(--navy-700); }
.tp-drop { display: flex; flex-direction: column; align-items: center; gap: 6px; inline-size: 100%; padding: var(--space-6); border: 1.5px dashed var(--blue-200); border-radius: var(--radius-md); background: var(--blue-50); color: var(--blue-500); font: inherit; cursor: pointer; }
.tp-drop b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.tp-drop small { font-size: 13px; color: var(--ink-muted); }
.tp-file .bv-linkbtn { font-size: 14px; }
.tp-checks { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.tp-checks li { display: flex; align-items: center; gap: 8px; font-size: 14px; }
.tp-checks li.is-ok .bv-icon { color: var(--success-ink); }
.tp-checks li.is-warn { color: var(--attention-ink); }
.tp-map { display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: var(--radius-md); }
.tp-map__r { display: grid; grid-template-columns: 170px 18px 1fr 18px; align-items: center; gap: 8px; min-block-size: 40px; padding: 4px 12px; border-block-end: 1px solid var(--line-soft); font-size: 14px; }
.tp-map__r:last-child { border: 0; }
.tp-map__r > .bv-icon { color: var(--success-ink); }
.tp-map__a { color: var(--ink-faint); }
.tp-map__r.is-warn { background: var(--warning-bg); }
.tp-map__r .nc-input { block-size: 34px; font-size: 14px; }
.tp-yours { display: inline-flex; align-items: center; gap: 4px; padding: 1px 8px; border-radius: 6px; background: var(--violet-bg); color: var(--violet-ink); font-weight: 500; }
.tp-lhnote { padding: 10px 12px; border-radius: var(--radius-md); background: var(--violet-bg); color: var(--ink); }
.tp-page--lh { padding-block-start: 0; }
.tp-lh-top { display: flex; align-items: center; gap: 14px; margin-inline: -48px; margin-block-end: 18px; padding: 22px 48px 16px; background: #1b2a4a; color: #fff; border-block-end: 4px solid #c9a24a; }
.tp-lh-mark { display: grid; place-items: center; inline-size: 44px; block-size: 44px; border: 2px solid #c9a24a; border-radius: 50%; font-family: Georgia, serif; font-size: 17px; color: #c9a24a; }
.tp-lh-org { flex: 1; }
.tp-lh-org b { display: block; font-family: Georgia, serif; font-size: 18px; font-weight: 400; letter-spacing: .02em; }
.tp-lh-org small { font-size: 10.5px; color: #cbd5e1; }
.tp-lh-meta { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; font-size: 10.5px; color: #cbd5e1; }
.tp-lh-meta .tp-bx { color: #fff; }
.tp-lh-meta .tp-bx small { color: #cbd5e1; }
.tp-lh-under { margin-block: -8px 10px; }
.tp-lh-foot { position: absolute; inset-inline: 0; inset-block-end: 0; display: flex; justify-content: space-between; gap: 12px; padding: 10px 48px; border-block-start: 3px solid #c9a24a; background: #f5f1e6; font-size: 10px; color: #4b5563; }

/* ---------- Configuration > Notifications ---------- */
.nt-global { margin-block-end: var(--space-6); padding-block: var(--space-4); }
.nt-global__h { margin-block-end: var(--space-3); }
.nt-gs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); }
.nt-g { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-3); border-radius: var(--radius-md); background: var(--neutral-bg); }
.nt-g .kp-toggle { border: 0; padding: 0; align-items: flex-start; }
.nt-g--f { gap: var(--space-3); background: none; border: 1px solid var(--line); }
.nt-g--f .nc-input { block-size: 38px; font-size: 14px; }
.nt-g--f .nc-label { margin-block-end: 4px; font-size: 13px; }
.nt-gx { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--ink-muted); }
.nt-gx .nc-input { inline-size: 110px; block-size: 36px; font-size: 14px; background: var(--surface); }
.nt-grid { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: var(--space-6); align-items: start; }
.nt-rail { padding: var(--space-3); display: flex; flex-direction: column; gap: 2px; }
.nt-rail__h { padding: 4px 8px 8px; font-size: 12px; }
.nt-mod { display: flex; align-items: center; gap: 10px; padding: 6px 8px; border: 0; border-radius: 8px; background: none; font: inherit; font-size: 14px; color: var(--ink); text-align: start; cursor: pointer; }
.nt-mod:hover { background: var(--neutral-bg); }
.nt-mod .tp-ic { inline-size: 28px; block-size: 28px; }
.nt-mod > span:nth-child(2) { flex: 1; }
.nt-mod__n { font-size: 12px; color: var(--ink-muted); }
.nt-mod.is-on { background: var(--blue-50); box-shadow: inset 3px 0 0 var(--blue-500); font-weight: 500; color: var(--navy-900); }
.nt-mod.is-on .tp-ic { background: var(--surface); }
.nt-people { display: flex; gap: 8px; margin-block-start: var(--space-3); padding: var(--space-3); border-block-start: 1px solid var(--line-soft); color: var(--ink-muted); }
.nt-people .bv-icon { flex: none; margin-block-start: 2px; }
.nt-people p { margin: 0; font-size: 13px; line-height: 19px; color: var(--ink); }
.nt-people .bv-linkbtn { font-size: 13px; }
.nt-main__h { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-4); margin-block-end: var(--space-3); }
.nt-bulk { display: flex; flex-wrap: wrap; gap: 6px; font-size: 13px; color: var(--ink-faint); }
.nt-bulk .bv-linkbtn { font-size: 13px; }
.nt-row { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr) 72px 72px 72px 72px 190px 140px 44px; align-items: center; gap: var(--space-2); min-block-size: 70px; padding-inline: var(--space-4) var(--space-2); border-block-end: 1px solid var(--line-soft); }
.nt-row:last-child { border: 0; }
.nt-row--h { min-block-size: 48px; font-size: 12.5px; font-weight: 500; color: var(--ink-muted); background: var(--neutral-bg); border-radius: var(--radius-sm) var(--radius-sm) 0 0; }
.nt-row--h .nt-c { flex-direction: column; gap: 2px; font-size: 11.5px; text-align: center; }
.nt-row.is-off .nt-ev__t, .nt-row.is-off .nt-who, .nt-row.is-off .nt-c { opacity: .45; }
.nt-ev { display: flex; align-items: center; gap: var(--space-3); min-inline-size: 0; }
.nt-ev .bv-switch { flex: none; }
.nt-onl { flex: none; display: grid; place-items: center; inline-size: 44px; color: var(--ink-muted); }
.nt-ev__t { min-inline-size: 0; }
.nt-ev__t b { display: block; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.nt-ev__t small { font-size: 13px; color: var(--ink-muted); }
.nt-who { display: flex; flex-wrap: wrap; gap: 4px; }
.nt-chip { padding: 2px 8px; border-radius: 6px; background: var(--neutral-bg); font-size: 12px; color: var(--ink); }
.nt-c { display: flex; justify-content: center; align-items: center; }
.nt-chk { display: grid; place-items: center; inline-size: 26px; block-size: 26px; border: 1.5px solid var(--line); border-radius: 7px; background: var(--surface); color: #fff; cursor: pointer; }
.nt-chk:hover:not(:disabled) { border-color: var(--blue-500); }
.nt-chk.is-on { background: var(--blue-500); border-color: var(--blue-500); }
.nt-chk.is-lock { background: var(--navy-900); border-color: var(--navy-900); cursor: not-allowed; }
.nt-chk:disabled:not(.is-lock) { cursor: not-allowed; }
.nt-sel { inline-size: 100%; block-size: 36px; padding-inline: 8px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); font: inherit; font-size: 13px; color: var(--ink); }
.nt-urg { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; line-height: 16px; color: var(--attention-ink); }
.nt-imm { font-size: 13px; }
.nt-optbtn { display: inline-flex; align-items: center; gap: 5px; padding: 4px 8px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); font: inherit; font-size: 12px; color: var(--ink-muted); cursor: pointer; white-space: nowrap; }
.nt-optbtn.is-on { color: var(--navy-700); border-color: var(--blue-200); background: var(--blue-50); }
.nt-optbtn:disabled { cursor: default; opacity: .7; }
.nt-ed { inline-size: 640px; }
.nt-ed__top { display: flex; align-items: center; justify-content: space-between; }
.nt-ed__top .bv-linkbtn { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; }
.nt-pv { padding: var(--space-4); border-radius: 12px; background: var(--neutral-bg); }
.nt-pv__h { display: flex; align-items: center; justify-content: space-between; margin-block-end: var(--space-3); }
.nt-mail { border: 1px solid var(--line); border-radius: 10px; background: var(--surface); overflow: hidden; }
.nt-mail__h { display: grid; gap: 2px; padding: 12px 16px; border-block-end: 1px solid var(--line-soft); font-size: 13px; }
.nt-mail__h small { color: var(--ink-muted); }
.nt-mail__h span { font-weight: 500; color: var(--ink); }
.nt-mail__b { padding: 18px 20px; font-size: 14px; line-height: 21px; color: var(--ink); }
.nt-mail__b p { margin: 14px 0; }
.nt-mail__btn { display: inline-block; padding: 8px 16px; border-radius: 8px; background: var(--blue-500); color: #fff; font-weight: 500; }
.nt-mail__b small { display: block; margin-block-start: 16px; font-size: 11.5px; color: var(--ink-muted); }
.nt-phone { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 18px; border-radius: 22px; background: linear-gradient(160deg, #1e2a78, #3b5bdb); }
.nt-push { display: flex; gap: 10px; inline-size: 100%; max-inline-size: 360px; padding: 10px 12px; border-radius: 14px; background: rgba(255, 255, 255, .92); }
.nt-push__i { display: grid; place-items: center; flex: none; inline-size: 30px; block-size: 30px; border-radius: 7px; background: var(--navy-900); color: #fff; font-weight: 700; }
.nt-push div { flex: 1; min-inline-size: 0; }
.nt-push b { font-size: 13px; }
.nt-push p { margin: 2px 0 0; font-size: 13px; color: var(--ink); }
.nt-push small { font-size: 11px; color: var(--ink-muted); }
.nt-sms { max-inline-size: 300px; padding: 10px 14px; border-radius: 16px 16px 16px 4px; background: #fff; font-size: 13px; line-height: 19px; }
.nt-phone .ap-muted { color: #cbd5e1; }
.nt-inapp { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); }
.nt-inapp__i { display: grid; place-items: center; flex: none; inline-size: 34px; block-size: 34px; border-radius: 99px; background: var(--blue-50); color: var(--blue-500); }
.nt-inapp div { flex: 1; }
.nt-inapp b { display: block; font-size: 14px; font-weight: 500; }
.nt-inapp small { font-size: 12px; color: var(--ink-muted); }
.nt-inapp > i { inline-size: 8px; block-size: 8px; border-radius: 9px; background: var(--blue-500); }
.nt-gx .nc-input { inline-size: 132px; }
.bv-app .nt-row .nt-optbtn { font-size: 12px; }
.bv-app .nt-row .nt-optbtn .bv-icon { inline-size: 14px; block-size: 14px; }
.bv-app .tp-tok { font-size: 12px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }

/* ---------- Manage minutes as a full page ---------- */
.mm-main .ap-crumb { margin-block-end: var(--space-4); }
.mm-page { position: relative; display: flex; flex-direction: column; inline-size: auto; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); }
.mm-page .nc-head { padding: var(--space-4) var(--space-6); border-radius: 12px 12px 0 0; }
.mm-page .nc-head .mm-h h2 { font-size: 26px; }
.mm-page .nc-head > .bv-ghost-icon:last-child { display: none; }
.mm-page .mm-bar, .mm-page .rv-steps, .mm-page .rv-bar { position: sticky; inset-block-start: 0; z-index: 6; }
.mm-page .nc-body { overflow: visible; padding: var(--space-6); }
.mm-page .mm-body { grid-template-columns: 260px minmax(0, 1fr); gap: var(--space-8); }
.mm-page .mm-nav { inset-block-start: 72px; }
.mm-page .mm-secs { max-inline-size: 980px; }
.mm-page .nc-foot { position: sticky; inset-block-end: 0; z-index: 6; background: var(--surface); border-radius: 0 0 12px 12px; box-shadow: 0 -6px 16px rgba(3, 17, 98, .05); }

/* AI summary in Meeting summary */
.ai-sum { display: grid; gap: 10px; padding: var(--space-4); border: 1px solid var(--violet-line); border-radius: var(--radius-md); background: linear-gradient(180deg, var(--violet-bg), #fff); }
.ai-sum__h { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.ai-sum__h b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.ai-sum__h small { display: inline-flex; align-items: center; gap: 4px; font-size: 12.5px; color: var(--ink-muted); }
.ai-sum__h .bv-ghost-icon { margin-inline-start: auto; inline-size: 30px; block-size: 30px; }
.ai-sum__b { position: relative; max-block-size: 84px; overflow: hidden; font-size: 14.5px; line-height: 22px; color: var(--ink); }
.ai-sum__b::after { content: ""; position: absolute; inset-inline: 0; inset-block-end: 0; block-size: 28px; background: linear-gradient(transparent, #fbfaff); }
.ai-sum__b.is-full { max-block-size: none; }
.ai-sum__b.is-full::after { display: none; }
.ai-sum__b p { margin: 0 0 6px; }
.ai-sum__b ul { margin: 0; padding-inline-start: 20px; }
.ai-sum__more { justify-self: start; font-size: 14px; }
.ai-sum__f { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-3); padding-block-start: 10px; border-block-start: 1px solid var(--violet-line); }
.ai-sum__f .ap-muted { display: inline-flex; align-items: center; gap: 6px; margin-inline-end: auto; font-size: 13px; }
.ai-sum__f .ap-sm { display: inline-flex; align-items: center; gap: 6px; }
.ai-sum.is-used { display: flex; align-items: center; gap: 10px; padding: 10px var(--space-4); background: var(--violet-bg); color: var(--violet-ink); }
.ai-sum.is-used p { flex: 1; margin: 0; font-size: 13.5px; color: var(--ink); }
.ai-sum.is-used b { font-weight: 500; color: var(--navy-900); margin-inline-end: 4px; }
.ai-sum.is-used .bv-linkbtn { font-size: 14px; }
.rv-share__h .ap-muted b { display: inline; }
.rv-share__q { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 14px; font-size: 13px; }
.rv-share__q .bv-linkbtn { font-size: 13px; }
.rv-share__q .ap-muted:last-child { margin-inline-start: auto; font-size: 13px; }

/* ---------- Recordings ---------- */
.rc-list { padding: var(--space-6); }
.rc-list__h { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-4); margin-block-end: var(--space-4); }
.rc-list__a { display: flex; gap: var(--space-3); }
.rc-list__a .bv-btn-primary, .rc-list__a .bv-btn-secondary { display: inline-flex; align-items: center; gap: 8px; }
.rc-live { display: flex; align-items: center; gap: var(--space-4); margin-block-end: var(--space-4); padding: var(--space-3) var(--space-4); border: 1px solid var(--danger-line); border-radius: var(--radius-md); background: var(--danger-bg); }
.rc-live > div { flex: 1; }
.rc-live b { display: block; font-size: 15px; color: var(--danger-ink); font-variant-numeric: tabular-nums; }
.rc-live small { font-size: 13px; color: var(--ink); }
.rc-live__dot { inline-size: 12px; block-size: 12px; border-radius: 99px; background: var(--danger-ink); box-shadow: 0 0 0 4px rgba(200, 30, 30, .15); animation: rcBlink 1.2s infinite; }
@keyframes rcBlink { 50% { opacity: .35; } }
.rc-meter { display: flex; align-items: center; gap: 3px; block-size: 26px; }
.rc-meter i { inline-size: 4px; border-radius: 2px; background: var(--danger-ink); animation: rcLvl .9s infinite ease-in-out; }
.rc-meter i:nth-child(2n) { animation-delay: .2s; } .rc-meter i:nth-child(3n) { animation-delay: .45s; }
@keyframes rcLvl { 0%, 100% { block-size: 6px; } 50% { block-size: 24px; } }
.rc-live .bv-btn-secondary, .rc-live .bv-btn-primary { display: inline-flex; align-items: center; gap: 6px; }
.rc-rows { display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: var(--radius-md); overflow: visible; }
.rc-row { display: grid; grid-template-columns: 120px minmax(0, 1fr) 150px 240px auto; align-items: center; gap: var(--space-4); padding: var(--space-3) var(--space-4); border-block-end: 1px solid var(--line-soft); }
.rc-row:last-of-type { border-block-end: 0; }
.rc-row.is-failed { background: #fffafa; }
.rc-wave { display: flex; align-items: center; gap: 2px; }
.rc-wave i { flex: 1; min-inline-size: 1px; border-radius: 2px; background: var(--blue-200); }
.rc-wave--sm { block-size: 36px; padding: 6px 8px; border-radius: 8px; background: var(--blue-50); }
.rc-row.is-processing .rc-wave--sm i { background: var(--line); }
.rc-row.is-failed .rc-wave--sm { background: var(--danger-bg); } .rc-row.is-failed .rc-wave--sm i { background: var(--danger-line); }
.rc-name { display: flex; flex-direction: column; gap: 2px; min-inline-size: 0; }
.rc-name .lb-open { font-size: 16px; }
.rc-name .lb-open:disabled { color: var(--ink); cursor: default; text-decoration: none; }
.rc-name small { font-size: 13px; color: var(--ink-muted); }
.rc-outs { display: flex; flex-wrap: wrap; gap: 4px 10px; margin-block-start: 4px; }
.rc-outs span { display: inline-flex; align-items: center; gap: 3px; font-size: 12px; color: var(--success-ink); }
.rc-dur { display: flex; flex-direction: column; font-size: 16px; font-weight: 500; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.rc-dur small { font-size: 12px; font-weight: 400; color: var(--ink-muted); }
.rc-proc { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
.rc-proc .at-prog { display: block; inline-size: 160px; }
.rc-proc small { font-size: 12px; color: var(--ink-muted); line-height: 16px; }
.rc-row > .ap-pill { justify-self: start; }
.rc-acts { display: flex; align-items: center; gap: 4px; justify-content: flex-end; }
.rc-acts .bv-btn-secondary { display: inline-flex; align-items: center; gap: 6px; }
.rc-del { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-4); background: var(--danger-bg); color: var(--danger-ink); font-size: 14px; }
.rc-del span { flex: 1; color: var(--ink); }
.rc-del b { color: var(--danger-ink); font-weight: 500; }

.rc-pg .ab-head { margin-block-end: var(--space-4); }
.rc-title { display: flex; align-items: center; gap: 8px; }
.rc-meta { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.rc-meta span { display: inline-flex; align-items: center; gap: 6px; }
.rc-meta .bv-icon { color: var(--blue-500); }
.rc-ren { display: flex; align-items: center; gap: var(--space-2); }
.rc-ren .nc-input { inline-size: 380px; font-size: 20px; font-weight: 700; color: var(--navy-900); }
.rc-pg .ab-head__a .bv-btn-primary, .rc-pg .ab-head__a .bv-btn-secondary { display: inline-flex; align-items: center; gap: 8px; }
.rc-player { position: sticky; inset-block-start: 8px; z-index: 8; display: flex; align-items: center; gap: var(--space-3); margin-block-end: var(--space-6); padding: var(--space-4) var(--space-6); box-shadow: 0 6px 20px rgba(3, 17, 98, .06); }
.rc-play { flex: none; display: grid; place-items: center; inline-size: 52px; block-size: 52px; border: 0; border-radius: 99px; background: var(--blue-500); cursor: pointer; }
.rc-play:hover { background: var(--navy-700); }
.rc-tri { inline-size: 0; block-size: 0; margin-inline-start: 4px; border-block: 9px solid transparent; border-inline-start: 15px solid #fff; }
[dir="rtl"] .rc-tri { transform: scaleX(-1); margin-inline: 0 4px; }
.rc-pause { inline-size: 14px; block-size: 16px; border-inline: 5px solid #fff; }
.rc-skip { flex: none; block-size: 36px; padding-inline: 10px; border: 1px solid var(--line); border-radius: 99px; background: var(--surface); font: inherit; font-size: 13px; font-weight: 500; color: var(--ink); cursor: pointer; }
.rc-speed { flex: none; min-inline-size: 52px; block-size: 36px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); font: inherit; font-size: 14px; font-weight: 500; cursor: pointer; }
.rc-track { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; gap: 6px; }
.rc-now { display: flex; align-items: baseline; gap: var(--space-3); font-size: 13px; color: var(--ink-muted); }
.rc-now b { font-size: 16px; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.rc-now span:nth-child(2) { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rc-tot { font-variant-numeric: tabular-nums; }
.rc-wave--big { position: relative; block-size: 56px; cursor: pointer; outline-offset: 4px; }
.rc-wave__bars { position: absolute; inset: 0; display: flex; align-items: center; gap: 2px; }
.rc-wave--big i { flex: 1; min-inline-size: 1px; border-radius: 2px; background: color-mix(in srgb, var(--sc, var(--blue-500)) 28%, #fff); }
.rc-wave--big::after { content: ""; position: absolute; inset-block: 0; inset-inline-start: 0; inline-size: var(--p); background: linear-gradient(90deg, rgba(47, 84, 235, .10), rgba(47, 84, 235, .14)); border-radius: 4px; pointer-events: none; }
.rc-head { position: absolute; inset-block: -4px; inset-inline-start: var(--p); inline-size: 2px; margin-inline-start: -1px; background: var(--navy-900); border-radius: 2px; }
.rc-head::before { content: ""; position: absolute; inset-block-start: -4px; inset-inline-start: -4px; inline-size: 10px; block-size: 10px; border-radius: 99px; background: var(--navy-900); }
.rc-mark { position: absolute; inset-block-end: -8px; inline-size: 2px; block-size: 6px; background: var(--ink-faint); border-radius: 1px; }
.rc-grid { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: var(--space-6); align-items: start; }
.rc-main { padding-block-start: var(--space-3); }
.rc-tabs { gap: var(--space-6); margin-block-end: var(--space-4); border-block-end: 1px solid var(--line); }
.rc-tabs .cm-tab { gap: 6px; }
.rc-side { position: sticky; inset-block-start: 120px; display: flex; flex-direction: column; gap: var(--space-4); }
.rc-side .ap-card { padding: var(--space-4); }
.rc-side .ap-h2 { font-size: 16px; margin-block-end: var(--space-3); }
.rc-chs { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.rc-ch { display: grid; grid-template-columns: 24px 1fr auto; align-items: center; gap: 10px; inline-size: 100%; padding: 8px; border: 0; border-radius: 8px; background: none; font: inherit; font-size: 14px; color: var(--ink); text-align: start; cursor: pointer; }
.rc-ch:hover { background: var(--neutral-bg); }
.rc-ch.is-on { background: var(--blue-50); color: var(--navy-900); font-weight: 500; }
.rc-ch__n { display: grid; place-items: center; inline-size: 24px; block-size: 24px; border-radius: 99px; background: var(--neutral-bg); font-size: 12px; color: var(--ink-muted); }
.rc-ch.is-on .rc-ch__n { background: var(--blue-500); color: #fff; }
.rc-ch small { font-size: 12px; color: var(--ink-muted); font-variant-numeric: tabular-nums; }
.rc-spk { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.rc-spk li { display: grid; grid-template-columns: 10px minmax(0, 1fr) 70px 34px; align-items: center; gap: 10px; }
.rc-sp { inline-size: 10px; block-size: 10px; border-radius: 99px; background: var(--sc); }
.rc-spk b { display: block; font-size: 13.5px; font-weight: 500; color: var(--ink); }
.rc-spk small { font-size: 12px; color: var(--ink-muted); }
.rc-spbar { block-size: 6px; border-radius: 6px; background: var(--neutral-bg); overflow: hidden; }
.rc-spbar i { display: block; block-size: 100%; border-radius: 6px; }
.rc-spk em { font-style: normal; font-size: 12px; color: var(--ink-muted); text-align: end; }
.rc-ts { display: inline-flex; align-items: center; gap: 4px; padding: 2px 8px; border: 1px solid var(--blue-200); border-radius: 99px; background: var(--surface); font: inherit; font-size: 12px; color: var(--blue-500); font-variant-numeric: tabular-nums; cursor: pointer; white-space: nowrap; direction: ltr; }
.rc-ts:hover { background: var(--blue-50); }
.rc-sumtop, .rc-txtop, .rc-maptop { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-3); margin-block-end: var(--space-4); }
.rc-sumtop .ap-muted { flex: 1; font-size: 13px; }
.rc-sumtop .bv-linkbtn, .rc-txtop .bv-linkbtn { display: inline-flex; align-items: center; gap: 5px; font-size: 14px; }
.rc-sum { display: flex; flex-direction: column; gap: var(--space-6); }
.rc-sum h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 var(--space-2); font-size: 16px; color: var(--navy-900); }
.rc-sum h3 small { padding: 1px 8px; border-radius: 99px; background: var(--neutral-bg); font-size: 12px; font-weight: 500; color: var(--ink-muted); }
.rc-sum h3 .bv-icon { color: var(--blue-500); }
.rc-sum p { margin: 0; font-size: 15px; line-height: 24px; color: var(--ink); }
.rc-sum ul { margin: 0; padding-inline-start: 22px; display: flex; flex-direction: column; gap: 6px; font-size: 15px; line-height: 22px; }
.rc-item { display: flex; align-items: center; gap: var(--space-3); padding: 10px var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); }
.rc-item + .rc-item { margin-block-start: 8px; }
.rc-item > span:first-child { flex: 1; font-size: 15px; line-height: 21px; }
.rc-item > span:first-child small { display: block; font-size: 12.5px; color: var(--ink-muted); }
.rc-item .bv-btn-secondary { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.rc-done { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; color: var(--success-ink); white-space: nowrap; }
.rc-txtop .cm-search { inline-size: 320px; }
.rc-txtop > .ap-muted { flex: 1; font-size: 13px; }
.rc-segs { display: flex; flex-direction: column; }
.rc-seg { display: grid; grid-template-columns: 72px 1fr; gap: var(--space-3); padding: 12px 8px; border-radius: 8px; }
.rc-seg + .rc-seg { border-block-start: 1px solid var(--line-soft); }
.rc-seg.is-cur { background: var(--blue-50); box-shadow: inset 3px 0 0 var(--blue-500); }
.rc-seg .rc-ts { justify-self: start; align-self: start; margin-block-start: 2px; }
.rc-seg__w b { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; font-weight: 500; color: var(--navy-900); }
.rc-seg__w b i { inline-size: 8px; block-size: 8px; border-radius: 99px; background: var(--sc); }
.rc-seg__w b small { font-weight: 400; color: var(--ink-muted); font-size: 12px; }
.rc-seg__w p { margin: 4px 0 0; font-size: 15px; line-height: 24px; color: var(--ink); }
.rc-seg mark { background: #fde68a; border-radius: 2px; padding: 0 1px; }
.rc-maptop .ap-muted { flex: 1; font-size: 13px; }
.rc-zoom { display: inline-flex; align-items: center; gap: 2px; padding: 2px; border: 1px solid var(--line); border-radius: 8px; font-size: 13px; }
.rc-zoom .bv-ghost-icon { inline-size: 30px; block-size: 30px; }
.rc-maptop .ap-sm { display: inline-flex; align-items: center; gap: 6px; }
.rc-map { display: flex; align-items: center; gap: 40px; padding: var(--space-6); border-radius: 12px; background: var(--neutral-bg) radial-gradient(circle, rgba(3, 17, 98, .06) 1px, transparent 1px) 0 0 / 18px 18px; overflow-x: auto; }
.rc-map__root { flex: none; position: relative; padding: 14px 18px; border-radius: 12px; background: var(--navy-900); color: #fff; }
.rc-map__root b { display: block; font-size: 16px; }
.rc-map__root small { font-size: 12px; color: var(--blue-200); }
.rc-map__root::after { content: ""; position: absolute; inset-inline-start: 100%; inset-block-start: 50%; inline-size: 20px; border-block-start: 2px solid var(--line); }
.rc-map ul { list-style: none; margin: 0; padding: 0; }
.rc-map__br { position: relative; display: flex; flex-direction: column; gap: 14px; padding-inline-start: 20px; }
.rc-map__br > li { position: relative; display: flex; align-items: center; gap: 28px; }
.rc-map__br > li::before { content: ""; position: absolute; inset-inline-start: -20px; inset-block: -7px; border-inline-start: 2px solid var(--line); }
.rc-map__br > li:first-child::before { inset-block-start: 50%; }
.rc-map__br > li:last-child::before { inset-block-end: 50%; }
.rc-map__br > li::after { content: ""; position: absolute; inset-inline-start: -20px; inline-size: 20px; inset-block-start: 50%; border-block-start: 2px solid var(--line); }
.rc-map__n { position: relative; flex: none; min-inline-size: 170px; padding: 10px 14px; border: 2px solid var(--mc); border-radius: 10px; background: #fff; font-size: 14px; font-weight: 500; color: var(--mc); }
.rc-map__n::after { content: ""; position: absolute; inset-inline-start: 100%; inset-block-start: 50%; inline-size: 14px; border-block-start: 2px solid var(--line); }
.rc-map__br ul { position: relative; display: flex; flex-direction: column; gap: 6px; padding-inline-start: 14px; }
.rc-map__br ul li { position: relative; }
.rc-map__br ul li::before { content: ""; position: absolute; inset-inline-start: -14px; inset-block: -3px; border-inline-start: 2px solid var(--line); }
.rc-map__br ul li:first-child::before { inset-block-start: 50%; }
.rc-map__br ul li:last-child::before { inset-block-end: 50%; }
.rc-map__br ul li:only-child::before { display: none; }
.rc-map__br ul li::after { content: ""; position: absolute; inset-inline-start: -14px; inline-size: 14px; inset-block-start: 50%; border-block-start: 2px solid var(--line); }
.rc-map__l { display: inline-block; padding: 6px 12px; border-radius: 8px; background: #fff; box-shadow: 0 1px 2px rgba(3, 17, 98, .08); font-size: 13px; color: var(--ink); }
.rc-row { grid-template-columns: 120px minmax(0, 1fr) 150px 240px 150px; }
.rc-wave--sm { overflow: hidden; }

/* ---------- Meeting notes ---------- */
.nb-card { display: flex; flex-direction: column; gap: var(--space-3); }
.nb-tabs { display: grid; grid-template-columns: 1fr 1fr; }
.nb-tabs .cm-seg__btn { justify-content: center; font-size: 14px; }
.nb-bar { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); }
.nb-about { display: inline-flex; align-items: center; gap: 6px; min-inline-size: 0; padding: 0 8px; block-size: 34px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink-muted); }
.nb-about select { min-inline-size: 0; max-inline-size: 150px; border: 0; background: none; font: inherit; font-size: 13px; color: var(--ink); outline: 0; }
.nb-visbtn { display: inline-flex; align-items: center; gap: 6px; block-size: 34px; padding-inline: 10px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); font: inherit; font-size: 13px; font-weight: 500; color: var(--ink); cursor: pointer; white-space: nowrap; }
.nb-visbtn.is-shared { border-color: var(--blue-200); background: var(--blue-50); color: var(--navy-700); }
.nb-vmenu { min-inline-size: 290px; }
.nb-vmenu .ap-menu__i span { flex: 1; }
.nb-vmenu .ap-menu__i b { display: block; font-size: 14px; font-weight: 500; }
.nb-vmenu .ap-menu__i small { font-size: 12px; color: var(--ink-muted); }
.nb-pick { display: flex; flex-wrap: wrap; gap: 6px; }
.nb-chip { display: inline-flex; align-items: center; gap: 4px; padding: 4px 10px; border: 1px solid var(--line); border-radius: 99px; background: var(--surface); font: inherit; font-size: 12.5px; color: var(--ink); cursor: pointer; }
.nb-chip.is-on { border-color: var(--blue-500); background: var(--blue-50); color: var(--navy-700); font-weight: 500; }
.nb-ed .nb-rte { min-block-size: 150px; font-size: 14px; line-height: 21px; }
.nb-ed .nb-rte p { margin: 0 0 6px; }
.nb-ed .nb-rte ul, .nb-ed .nb-rte ol { margin: 0 0 6px; padding-inline-start: 20px; }
.nb-foot { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-2); }
.nb-info { display: inline-flex; align-items: flex-start; gap: 6px; font-size: 12.5px; line-height: 18px; color: var(--ink-muted); }
.nb-info .bv-icon { flex: none; margin-block-start: 2px; }
.nb-info.is-shared { color: var(--navy-700); }
.nb-saved { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; color: var(--success-ink); white-space: nowrap; }
.nb-lead { margin: 0; font-size: 13px; }
.nb-note { display: flex; flex-direction: column; gap: 8px; padding: var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); }
.nb-note.is-me { border-color: var(--blue-200); background: #fafbff; }
.nb-note header { display: flex; align-items: center; gap: 10px; }
.nb-note__w { display: flex; flex-direction: column; min-inline-size: 0; }
.nb-note__w b { font-size: 14px; font-weight: 500; color: var(--navy-900); }
.nb-note__w small { font-size: 12px; color: var(--ink-muted); }
.nb-you { padding: 1px 6px; border-radius: 5px; background: var(--blue-50); color: var(--navy-700); font-size: 11px; font-weight: 500; }
.nb-av { font-size: 10px; flex: none; }
.nb-note__m { display: flex; flex-wrap: wrap; gap: 6px; }
.nb-tag { display: inline-flex; align-items: center; gap: 4px; padding: 2px 8px; border-radius: 6px; background: var(--neutral-bg); font-size: 11.5px; color: var(--ink); }
.nb-note__b { position: relative; max-block-size: 64px; overflow: hidden; font-size: 13.5px; line-height: 20px; color: var(--ink); }
.nb-note__b::after { content: ""; position: absolute; inset-inline: 0; inset-block-end: 0; block-size: 22px; background: linear-gradient(transparent, var(--surface)); }
.nb-note.is-me .nb-note__b::after { background: linear-gradient(transparent, #fafbff); }
.nb-note__b.is-open { max-block-size: none; }
.nb-note__b.is-open::after { display: none; }
.nb-note__b p { margin: 0 0 4px; }
.nb-note__b ul { margin: 0; padding-inline-start: 18px; }
.nb-note footer { display: flex; gap: var(--space-4); }
.nb-note footer .bv-linkbtn { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; }

/* ---------- Meeting activity ---------- */
.ac-list { list-style: none; margin: var(--space-2) 0 0; padding: 0; display: flex; flex-direction: column; }
.ac-day { margin-block: 10px 6px; font-size: 11.5px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-muted); }
.ac-day:first-child { margin-block-start: 0; }
.ac-i { position: relative; display: flex; gap: 10px; padding-block: 6px 10px; }
.ac-i::before { content: ""; position: absolute; inset-inline-start: 13px; inset-block: 34px -2px; border-inline-start: 1.5px solid var(--line-soft); }
.ac-i:has(+ .ac-day)::before, .ac-i:last-child::before { display: none; }
.ac-ic { position: relative; z-index: 1; flex: none; display: grid; place-items: center; inline-size: 28px; block-size: 28px; border-radius: 99px; }
.ac-ic--ok { background: var(--success-bg); color: var(--success-ink); }
.ac-ic--info { background: var(--blue-50); color: var(--blue-500); }
.ac-ic--muted { background: var(--neutral-bg); color: var(--ink-muted); }
.ac-ic--violet { background: var(--violet-bg); color: var(--violet-ink); }
.ac-ic--danger { background: var(--danger-bg); color: var(--danger-ink); }
.ac-b { min-inline-size: 0; flex: 1; }
.ac-b p { margin: 0; font-size: 13.5px; line-height: 20px; color: var(--ink); }
.ac-b p b { font-weight: 500; color: var(--navy-900); }
.ac-obj { padding: 0 6px; border-radius: 5px; background: var(--neutral-bg); font-size: 12.5px; white-space: nowrap; }
.ac-b small { font-size: 12px; color: var(--ink-muted); }
.ac-more { display: inline-flex; align-items: center; gap: 2px; margin-inline-start: 8px; font-size: 12.5px; }
.ac-grp { list-style: none; margin: 6px 0 0; padding: 8px 10px; border-radius: 8px; background: var(--neutral-bg); display: grid; gap: 3px; }
.ac-grp li { display: flex; align-items: center; gap: 6px; font-size: 12.5px; }
.ac-grp li.is-added { color: var(--success-ink); } .ac-grp li.is-removed { color: var(--danger-ink); }
.ac-drawer { inline-size: 560px; }
.ac-tools { display: flex; flex-direction: column; gap: var(--space-3); padding: var(--space-4) var(--space-6); border-block-end: 1px solid var(--line); }
.ac-tools .cm-search { inline-size: 100%; }
.ac-tools .kp-dchips { margin: 0; }
.ac-tools .kp-dchip { block-size: 32px; font-size: 13px; padding-inline: 12px; }
.ac-list--full .ac-b p { font-size: 14px; }
.ac-note { display: flex; align-items: center; gap: 6px; margin: var(--space-4) 0 0; font-size: 12.5px; }
.mt-detail > .ap-col { min-inline-size: 0; }
.mt-detail > .ap-col > * { min-inline-size: 0; max-inline-size: 100%; }
.bv-app .ac-more, .bv-app .nb-note footer .bv-linkbtn { font-size: 12.5px; }
.bv-app .nb-visbtn, .bv-app .nb-chip { font-size: 13px; }
.bv-app .nb-chip { font-size: 12.5px; }
.mt-hacts { display: inline-flex; gap: var(--space-2); align-self: flex-start; }
.mt-hbtn { position: relative; display: grid; place-items: center; inline-size: 40px; block-size: 40px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); color: var(--navy-700); cursor: pointer; }
.mt-hbtn:hover, .mt-hbtn:focus-visible { border-color: var(--blue-500); color: var(--blue-500); background: var(--blue-50); }
.mt-hbtn[title]:hover::after { content: attr(title); position: absolute; inset-block-start: calc(100% + 6px); inset-inline-end: 0; z-index: 30; padding: 4px 8px; border-radius: 6px; background: var(--navy-900); color: #fff; font-size: 12px; white-space: nowrap; pointer-events: none; }
.mm-histbtn { position: relative; display: inline-flex; align-items: center; gap: 4px; block-size: 36px; padding-inline: 10px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); color: var(--navy-700); cursor: pointer; }
.bv-app .mm-histbtn span { font-size: 12px; font-weight: 500; }
.mm-histbtn:hover { border-color: var(--blue-500); color: var(--blue-500); background: var(--blue-50); }
.mm-histbtn[title]:hover::after { content: attr(title); position: absolute; inset-block-start: calc(100% + 6px); inset-inline-end: 0; z-index: 30; padding: 4px 8px; border-radius: 6px; background: var(--navy-900); color: #fff; font-size: 12px; white-space: nowrap; pointer-events: none; }
/* ---------- Meeting content: agenda outline (mc-) ---------- */
.mt-strips { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); margin-block-start: var(--space-4); }
.mt-strips.is-one { grid-template-columns: 1fr; }
.mt-strips > .mm-strip { margin-block-start: 0; padding: var(--space-4) var(--space-5, 20px); min-inline-size: 0; }
.mt-strips .ab-strip__bar { inline-size: 96px; }
.mt-strips .mm-strip__t small { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bv-app .mc-total { margin: 4px 0 0; font-size: 13px; color: var(--ink-muted); }
.mc-panel .mt-ch { align-items: flex-start; }
.mc-views { display: flex; gap: 4px; padding: 4px; margin-block-end: var(--space-4); border-radius: var(--radius-md); background: var(--surface-raised); inline-size: fit-content; max-inline-size: 100%; flex-wrap: wrap; }
.mc-view { display: inline-flex; align-items: center; gap: 8px; block-size: 38px; padding-inline: 10px 12px; border: 0; border-radius: var(--radius-sm); background: transparent; color: var(--ink); cursor: pointer; }
.bv-app .mc-view { font-size: 14px; }
.mc-view:hover { background: var(--surface); }
.mc-view.is-on { background: var(--surface); color: var(--navy-900); font-weight: 500; box-shadow: 0 1px 2px rgba(16,24,40,.08), 0 0 0 1px var(--line); }
.mc-n { min-inline-size: 22px; padding: 0 6px; border-radius: 999px; background: var(--neutral-bg); text-align: center; }
.bv-app .mc-n { font-size: 12px; color: var(--ink-muted); font-weight: 500; }
.mc-view.is-on .mc-n { background: var(--navy-900); color: #fff; }
.mc-ic { display: inline-grid; place-items: center; flex: none; inline-size: 28px; block-size: 28px; border-radius: 8px; }
.mc-view .mc-ic, .mc-grp h4 .mc-ic { inline-size: 24px; block-size: 24px; border-radius: 6px; }
.mc-key .mc-ic { inline-size: 20px; block-size: 20px; border-radius: 5px; }
.mc-ic--agenda { background: var(--navy-900); color: #fff; }
.mc-ic--sub { background: var(--neutral-bg); color: var(--ink-muted); }
.mc-ic--resolution { background: var(--blue-50); color: var(--blue-500); }
.mc-ic--action { background: var(--warning-bg); color: var(--attention-ink); }
.mc-ic--approval { background: var(--violet-bg); color: var(--violet-ink); }
.mc-kind { display: block; text-transform: uppercase; letter-spacing: .06em; }
.bv-app .mc-kind { font-size: 11px; font-weight: 700; line-height: 16px; }
.mc-kind--agenda { color: var(--ink-muted); }
.mc-kind--resolution { color: var(--blue-500); }
.mc-kind--action { color: var(--attention-ink); }
.mc-kind--approval { color: var(--violet-ink); }
.mc-bar { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); flex-wrap: wrap; margin-block-end: var(--space-3); }
.mc-key { display: flex; align-items: center; gap: var(--space-4); flex-wrap: wrap; }
.bv-app .mc-key { font-size: 13px; color: var(--ink-muted); }
.mc-key > span:first-child { font-weight: 500; color: var(--ink); }
.mc-key__i { display: inline-flex; align-items: center; gap: 6px; }
.mc-ag { border: 1px solid var(--line); border-radius: var(--radius-md); margin-block-end: var(--space-3); background: var(--surface); }
.mc-ag.is-open { border-color: var(--blue-200); box-shadow: 0 1px 3px rgba(16,24,40,.06); }
.mc-ag__h { display: flex; align-items: flex-start; gap: 6px; padding: 6px 10px 6px 6px; }
.mc-ag__tog { flex: 1; min-inline-size: 0; display: flex; align-items: flex-start; gap: var(--space-4); padding: 10px; border: 0; border-radius: var(--radius-sm); background: transparent; text-align: start; cursor: pointer; color: inherit; }
.mc-ag__tog:hover { background: var(--surface-raised); }
.mc-no { display: grid; place-items: center; flex: none; inline-size: 36px; block-size: 36px; border-radius: 10px; background: var(--navy-900); color: #fff; }
.bv-app .mc-no { font-size: 16px; font-weight: 700; }
.mc-ag__tt { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; gap: 2px; }
.bv-app .mc-ag__tt > b { font-size: 17px; line-height: 24px; color: var(--navy-900); font-weight: 600; }
.mc-meta { display: flex; flex-wrap: wrap; gap: 4px var(--space-4); margin-block-start: 2px; }
.bv-app .mc-meta .bv-meta { font-size: 13px; }
.mc-meta .bv-icon { color: var(--ink-muted); }
.mc-meta .bv-ink-danger, .mc-meta .bv-ink-danger .bv-icon { color: var(--danger-ink); }
.mc-sum { display: flex; flex-wrap: wrap; gap: 6px; margin-block-start: 8px; }
.mc-chip { display: inline-flex; align-items: center; gap: 5px; padding: 2px 10px 2px 8px; border-radius: 999px; background: var(--neutral-bg); color: var(--ink-muted); }
.bv-app .mc-chip { font-size: 12px; font-weight: 500; }
.mc-chip--resolution { background: var(--blue-50); color: var(--navy-700); }
.mc-chip--resolution .bv-icon { color: var(--blue-500); }
.mc-chip--action { background: var(--warning-bg); color: var(--attention-ink); }
.mc-chip--approval { background: var(--violet-bg); color: var(--violet-ink); }
.mc-chev { flex: none; color: var(--ink-muted); margin-block-start: 8px; transition: rotate .15s; }
.mc-ag__tog[aria-expanded="true"] .mc-chev { rotate: 180deg; }
.mc-ag__b { padding: 0 var(--space-5, 20px) var(--space-5, 20px) 72px; }
.bv-app .mc-desc { margin: 0 0 12px; font-size: 14px; line-height: 21px; color: var(--ink); }
.mc-files { display: flex; flex-wrap: wrap; gap: 8px; margin-block: 8px 4px; }
.mc-file { display: inline-flex; align-items: center; gap: 8px; max-inline-size: 100%; block-size: 34px; padding: 0 10px 0 4px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); color: var(--navy-900); cursor: pointer; }
.bv-app .mc-file { font-size: 13px; }
.mc-file .cm-ftype { inline-size: 26px; block-size: 26px; font-size: 8px; }
.mc-file bdi { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bv-app .mc-file small { font-size: 12px; color: var(--ink-muted); }
.mc-file > .bv-icon { color: var(--ink-muted); }
.mc-file:hover { border-color: var(--blue-500); }
.mc-file:hover > .bv-icon { color: var(--blue-500); }
.mc-grp { margin-block-start: var(--space-4); padding-block-start: var(--space-4); border-block-start: 1px dashed var(--line); }
.mc-grp h4 { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; color: var(--navy-900); }
.bv-app .mc-grp h4 { font-size: 14px; font-weight: 600; }
.mc-grp h4 > .bv-icon { color: var(--success-500, #1f9d55); }
.mc-grp h4 > span:last-child { padding: 0 7px; border-radius: 999px; background: var(--neutral-bg); }
.bv-app .mc-grp h4 > span:last-child { font-size: 12px; color: var(--ink-muted); font-weight: 500; }
.mc-subs { list-style: none; margin: 0; padding: 0 0 0 12px; border-inline-start: 2px solid var(--line); display: flex; flex-direction: column; gap: 2px; }
.mc-subs li { display: flex; align-items: baseline; gap: 12px; padding: 6px 8px; border-radius: 6px; }
.mc-subs li:hover { background: var(--surface-raised); }
.mc-subno { flex: none; min-inline-size: 30px; color: var(--ink-muted); font-variant-numeric: tabular-nums; }
.bv-app .mc-subno { font-size: 13px; font-weight: 600; }
.mc-sub__t { display: flex; flex-direction: column; }
.bv-app .mc-sub__t { font-size: 15px; color: var(--ink); }
.bv-app .mc-sub__t small { font-size: 13px; color: var(--ink-muted); }
.mc-out { display: flex; align-items: flex-start; gap: var(--space-3); padding: 12px 14px; margin-block-end: 8px; border: 1px solid var(--line); border-inline-start-width: 4px; border-radius: var(--radius-sm); background: var(--surface); }
.mc-out--resolution { border-inline-start-color: var(--blue-500); }
.mc-out--action { border-inline-start-color: #e0a100; }
.mc-out--approval { border-inline-start-color: var(--violet-ink); }
.mc-out__b { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; gap: 2px; }
.bv-app .mc-out__t { font-size: 15px; line-height: 22px; color: var(--navy-900); font-weight: 600; }
.mc-ctx { display: inline-flex; align-items: center; gap: 6px; color: var(--ink-muted); }
.bv-app .mc-ctx { font-size: 13px; }
.mc-out__s { flex: none; display: flex; flex-direction: column; align-items: flex-end; gap: 8px; }
.mc-out__a { display: flex; align-items: center; gap: 4px; }
.bv-app .mc-open { font-size: 13px; display: inline-flex; align-items: center; gap: 2px; }
.mc-acts { display: inline-flex; gap: 2px; margin-inline-start: 6px; padding-inline-start: 6px; border-inline-start: 1px solid var(--line); }
.mc-ibtn { position: relative; display: grid; place-items: center; inline-size: 32px; block-size: 32px; flex: none; border: 0; border-radius: var(--radius-sm); background: transparent; color: var(--ink-muted); cursor: pointer; }
.mc-ag__h > .mc-ibtn { margin-block-start: 12px; }
.mc-ibtn:hover, .mc-ibtn:focus-visible { background: var(--blue-50); color: var(--blue-500); }
.mc-ibtn--del:hover, .mc-ibtn--del:focus-visible { background: var(--danger-bg); color: var(--danger-ink); }
.mc-ibtn[title]:hover::after { content: attr(title); position: absolute; inset-block-start: calc(100% + 4px); inset-inline-end: 0; z-index: 30; padding: 4px 8px; border-radius: 6px; background: var(--navy-900); color: #fff; font-size: 12px; white-space: nowrap; pointer-events: none; }
.mc-add { display: flex; align-items: center; justify-content: center; gap: 8px; inline-size: 100%; block-size: 40px; border: 1px dashed var(--blue-200); border-radius: var(--radius-sm); background: transparent; color: var(--blue-500); cursor: pointer; }
.bv-app .mc-add { font-size: 14px; font-weight: 500; }
.mc-add:hover { background: var(--blue-50); border-color: var(--blue-500); }
.bv-app .mc-none, .bv-app .mc-hint { margin: 0 0 10px; font-size: 13px; color: var(--ink-muted); }
.mc-under { padding-block-end: 0; }
@media (max-width: 1100px) { .mt-strips { grid-template-columns: 1fr; } .mc-ag__b { padding-inline-start: 20px; } }
@media (max-width: 640px) { .mc-out { flex-wrap: wrap; } .mc-out__s { flex-direction: row; align-items: center; inline-size: 100%; justify-content: space-between; } .mc-views { inline-size: 100%; } }
.mt-pall { display: flex; margin-block-start: 10px; }
.mt-pall + .bv-linkbtn { margin-block-start: 4px !important; }
.mc-apq { display: flex; flex-direction: column; margin-inline-end: auto; }
.bv-app .mc-apq small { font-size: 12px; font-weight: 400; color: var(--ink-muted); }
/* ---------- Right rail: collapsible Participants and Activity (rl-) ---------- */
.rl-h { display: flex; align-items: flex-start; gap: 4px; margin: -8px -10px 0; }
.rl-card.is-open .rl-h { margin-block-end: var(--space-3); }
.rl-tog { flex: 1; min-inline-size: 0; display: flex; align-items: center; gap: 8px; padding: 8px 10px; border: 0; border-radius: var(--radius-sm); background: transparent; color: inherit; text-align: start; cursor: pointer; }
.rl-tog:hover { background: var(--surface-raised); }
.rl-tt { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; }
.rl-tt .ap-h2 { margin: 0; }
.bv-app .rl-tt small { font-size: 13px; color: var(--ink-muted); }
.bv-app .rl-vh { order: 2; font-size: 13px; color: var(--blue-500); font-weight: 500; white-space: nowrap; }
.rl-chev { order: 3; display: grid; color: var(--blue-500); transition: rotate .15s; }
.rl-tog[aria-expanded="true"] .rl-chev { rotate: 180deg; }
.rl-h > .mc-ibtn { margin-block-start: 8px; }
.bv-app .rl-all { font-size: 14px; margin-block-start: 14px; padding-inline: 6px; white-space: nowrap; }
.rl-sum { display: flex; flex-direction: column; gap: 10px; margin-block-start: 12px; }
.rl-stack { display: flex; }
.rl-stack .bv-avatar { box-shadow: 0 0 0 2px var(--surface); }
.rl-stack .bv-avatar + .bv-avatar { margin-inline-start: -8px; }
.rl-more { background: var(--neutral-bg) !important; color: var(--ink) !important; }
.rl-bar { display: flex; gap: 2px; block-size: 8px; border-radius: 999px; overflow: hidden; }
.rl-bar i { display: block; min-inline-size: 6px; }
.rl-leg { display: flex; flex-wrap: wrap; gap: 4px 14px; }
.bv-app .rl-leg { font-size: 13px; color: var(--ink-muted); }
.rl-leg > span { display: inline-flex; align-items: center; gap: 6px; }
.bv-app .rl-me { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--ink); }
.rl-last { display: flex; gap: 10px; margin: 12px 0 0; align-items: flex-start; }
.bv-app .rl-last { font-size: 14px; line-height: 20px; color: var(--ink); }
.bv-app .rl-last small { display: block; font-size: 12px; color: var(--ink-muted); }
.rl-last b { color: var(--navy-900); font-weight: 500; }
/* My Meetings: whole card opens the meeting; secretary-only Edit / Copy / Delete */
.mt-card--click { position: relative; cursor: pointer; transition: border-color .15s, box-shadow .15s; }
.mt-card--click:hover { border-color: var(--blue-200); box-shadow: 0 4px 14px rgba(16,24,40,.08); }
.mt-card--click:hover .mt-card__link { color: var(--blue-500); }
.mt-card--click:focus-within { box-shadow: 0 0 0 2px var(--blue-500); }
.mt-card__link::after { content: ''; position: absolute; inset: 0; border-radius: inherit; }
.mt-card__link:focus-visible { outline: none; }
.mt-card__more { position: relative; z-index: 2; margin-inline-end: -8px; }
.mt-card__more .ap-menu { inset-inline-end: 0; inset-inline-start: auto; min-inline-size: 180px; }
.ap-menu__i.og-danger, .ap-menu__i.og-danger .bv-icon { color: var(--danger-ink); }
.mt-card__m--1 { grid-template-columns: 1fr; }
.mt-card__f { display: flex; align-items: center; gap: 10px; padding-block-start: var(--space-3); border-block-start: 1px solid var(--line-soft); min-block-size: 44px; }
.bv-app .mt-card__f .ap-muted { font-size: 13px; }
.mt-card__av { display: inline-flex; }
.mt-card__av .bv-avatar { inline-size: 28px; block-size: 28px; font-size: 10px; box-shadow: 0 0 0 2px var(--surface); }
.mt-card__av .bv-avatar + .bv-avatar { margin-inline-start: -8px; }
.mt-card__plus { background: var(--neutral-bg) !important; color: var(--ink) !important; }
.mt-card__hint { display: inline-flex; align-items: center; gap: 4px; margin-inline-start: auto; color: var(--blue-500); }
.bv-app .mt-card__hint { font-size: 13px; font-weight: 500; }
.mt-undo { margin-inline-start: 12px; color: #fff !important; text-decoration: underline; pointer-events: auto; }
.mt-deldlg { position: fixed; z-index: 60; inset-block-start: 50%; inset-inline-start: 50%; translate: -50% -50%; inline-size: min(440px, calc(100vw - 32px)); padding: 24px; display: flex; flex-direction: column; gap: 8px; box-shadow: 0 20px 50px rgba(16,24,40,.25); }
[dir="rtl"] .mt-deldlg { translate: 50% -50%; }
.mt-deldlg .ap-h2 { margin: 4px 0 0; }
.bv-app .mt-deldlg p { margin: 0; font-size: 14px; line-height: 21px; color: var(--ink-muted); }
.mt-deldlg__i { display: grid; place-items: center; inline-size: 44px; block-size: 44px; border-radius: 12px; background: var(--danger-bg); color: var(--danger-ink); }
.mt-deldlg__a { display: flex; justify-content: flex-end; gap: 8px; margin-block-start: 12px; }
.bv-app .mt-delbtn { background: var(--danger-ink, #b42318); border-color: transparent; }
.cm-head .mt-roleswitch { margin-inline-start: auto; align-self: flex-start; }
.cl-bar .rs-chip--add .cm-count { background: var(--blue-500); color: #fff; }
/* My Meetings header in the Library format */
.mt-tabbar { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); margin-block: var(--space-4) var(--space-4); }
.mt-fpanel { inset-inline-end: 0; inset-inline-start: auto; min-inline-size: 300px; max-block-size: 70vh; overflow: auto; padding-block: 6px; }
.mt-fpanel__s + .mt-fpanel__s { border-block-start: 1px solid var(--line-soft); margin-block-start: 6px; padding-block-start: 6px; }
.mt-fpanel__f { display: flex; justify-content: flex-end; padding: 8px 12px 4px; border-block-start: 1px solid var(--line-soft); margin-block-start: 6px; }
/* Icon-only Date range and Filter buttons (My Meetings, Library) */
.bv-iconbtn-o { position: relative; display: inline-grid; place-items: center; inline-size: 40px; block-size: 40px; flex: none; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); color: var(--navy-700); cursor: pointer; }
.bv-iconbtn-o:hover, .bv-iconbtn-o:focus-visible, .bv-iconbtn-o[aria-expanded="true"] { border-color: var(--blue-500); color: var(--blue-500); background: var(--blue-50); }
.bv-iconbtn-o.is-set { border-color: var(--blue-200); color: var(--blue-500); background: var(--blue-50); }
.bv-iconbtn-o[title]:hover::after { content: attr(title); position: absolute; inset-block-start: calc(100% + 6px); inset-inline-end: 0; z-index: 30; padding: 4px 8px; border-radius: 6px; background: var(--navy-900); color: #fff; font-size: 12px; font-weight: 400; white-space: nowrap; pointer-events: none; }
.bv-iconbtn-o[aria-expanded="true"]::after { display: none; }
.bv-iconbtn-o__n { position: absolute; inset-block-start: -7px; inset-inline-end: -7px; min-inline-size: 18px; block-size: 18px; padding: 0 5px; border-radius: 999px; background: var(--blue-500); color: #fff; font-size: 11px; font-weight: 700; line-height: 18px; text-align: center; box-shadow: 0 0 0 2px var(--surface); }
.bv-iconbtn-o__dot { position: absolute; inset-block-start: 6px; inset-inline-end: 6px; inline-size: 8px; block-size: 8px; border-radius: 999px; background: var(--blue-500); box-shadow: 0 0 0 2px var(--blue-50); }
.bv-dpop { inset-inline-end: 0; inset-inline-start: auto; min-inline-size: 320px; padding: 8px 12px 12px; }
.bv-dpop__r { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.bv-dpop__r .nc-field { margin: 0; }
.bv-dpop__r .nc-input { block-size: 38px; padding-inline: 8px; }
.bv-dpop__f { display: flex; justify-content: space-between; align-items: center; margin-block-start: 12px; }
/* Meeting Details > Approvals panel (ma2-) */
.ma2-h { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.ma2-h .ap-h2 { margin: 0; }
.bv-app .ma2-h small { display: block; font-size: 13px; color: var(--ink-muted); margin-block-start: 2px; }
.bv-app .ma2-sum { font-size: 13px; color: var(--ink-muted); white-space: nowrap; margin-block-start: 4px; }
.bv-app .ma2-sum b { font-size: 18px; color: var(--success-ink); }
.ma2-bar { display: flex; gap: 2px; block-size: 6px; margin-block: 12px 12px; border-radius: 999px; overflow: hidden; background: var(--neutral-bg); }
.ma2-seg { display: block; min-inline-size: 6px; }
.ma2-seg--signed { background: var(--chart-positive, #1f9d55); }
.ma2-seg--waiting { background: var(--chart-pending, #e0a100); }
.ma2-seg--rejected { background: var(--chart-negative, #d92d20); }
.ma2-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-block-end: 10px; }
.ma2-chip { display: inline-flex; align-items: center; gap: 6px; block-size: 30px; padding: 0 10px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--ink); cursor: pointer; }
.bv-app .ma2-chip { font-size: 13px; }
.ma2-chip span { min-inline-size: 18px; padding: 0 5px; border-radius: 999px; background: var(--neutral-bg); text-align: center; }
.bv-app .ma2-chip span { font-size: 11px; font-weight: 600; color: var(--ink-muted); }
.ma2-chip:hover { border-color: var(--ink-muted); }
.ma2-chip.is-on { border-color: var(--navy-900); background: var(--navy-900); color: #fff; }
.ma2-chip.is-on span { background: rgba(255,255,255,.2); color: #fff; }
.ma2-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.ma2-r { padding: 12px; border: 1px solid var(--line); border-inline-start: 3px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); display: flex; flex-direction: column; gap: 10px; }
.ma2-r--waiting { border-inline-start-color: var(--chart-pending, #e0a100); }
.ma2-r--signed { border-inline-start-color: var(--chart-positive, #1f9d55); }
.ma2-r--rejected { border-inline-start-color: var(--chart-negative, #d92d20); }
.ma2-r.is-mine { background: var(--warning-bg); border-color: color-mix(in srgb, var(--chart-pending, #e0a100) 40%, var(--line)); border-inline-start-color: var(--chart-pending, #e0a100); }
.ma2-r__h { display: flex; align-items: flex-start; gap: 10px; }
.ma2-doc { inline-size: 32px !important; block-size: 36px !important; font-size: 9px !important; border-radius: 6px; }
.ma2-r__t { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; gap: 4px; }
.ma2-r__t b { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color: var(--navy-900); font-weight: 600; }
.bv-app .ma2-r__t b { font-size: 14px; line-height: 20px; }
.ma2-tag { display: inline-flex; align-items: center; gap: 4px; align-self: flex-start; padding: 1px 8px; border-radius: 999px; background: var(--blue-50); color: var(--navy-700); }
.bv-app .ma2-tag { font-size: 11px; font-weight: 600; }
.ma2-r__h .ap-pill { flex: none; white-space: nowrap; }
.ma2-r__s { display: flex; align-items: center; gap: 10px; }
.bv-app .ma2-r__s small { font-size: 12px; line-height: 17px; color: var(--ink-muted); }
.ma2-r__s small b { color: var(--attention-ink); }
.ma2-avs { display: inline-flex; flex: none; }
.ma2-av { position: relative; display: inline-flex; }
.ma2-av + .ma2-av, .ma2-avs .ma2-more { margin-inline-start: -6px; }
.ma2-av .bv-avatar { inline-size: 26px; block-size: 26px; font-size: 10px; box-shadow: 0 0 0 2px var(--surface); }
.ma2-av.is-wait .bv-avatar { opacity: .55; }
.ma2-av i { position: absolute; inset-block-end: -2px; inset-inline-end: -3px; display: grid; place-items: center; inline-size: 13px; block-size: 13px; border-radius: 999px; color: #fff; box-shadow: 0 0 0 1.5px var(--surface); }
.ma2-av.is-done i { background: var(--chart-positive, #1f9d55); }
.ma2-av.is-wait i { background: var(--chart-pending, #e0a100); }
.ma2-more { inline-size: 26px; block-size: 26px; font-size: 10px; background: var(--neutral-bg) !important; color: var(--ink) !important; box-shadow: 0 0 0 2px var(--surface); }
.ma2-r__a { display: flex; align-items: center; justify-content: flex-end; gap: 14px; padding-block-start: 8px; border-block-start: 1px solid var(--line-soft); }
.ma2-r__a .bv-linkbtn { display: inline-flex; align-items: center; gap: 4px; }
.bv-app .ma2-r__a .bv-linkbtn { font-size: 13px; }
.ma2-r__a .bv-btn-primary.ap-sm { margin-inline-end: auto; block-size: 32px; }
.ma2-sent { display: inline-flex; align-items: center; gap: 4px; color: var(--success-ink); }
.bv-app .ma2-sent { font-size: 13px; }
.ma2-empty { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 20px 8px; text-align: center; color: var(--ink-muted); }
.ma2-empty b { color: var(--navy-900); }
.bv-app .ma2-empty small { font-size: 13px; }
.ma2-avs { gap: 6px; }
.ma2-av + .ma2-av, .ma2-avs .ma2-more { margin-inline-start: 0; }
.ma2-av .bv-avatar { box-shadow: none; }
/* Agenda builder outline: show full titles (wrap instead of ...) */
.ab-row__t b { white-space: normal; overflow: visible; text-overflow: clip; overflow-wrap: anywhere; }
.ab-row__t small { display: flex; flex-wrap: wrap; }
.ab-subs span { white-space: normal; overflow: visible; text-overflow: clip; overflow-wrap: anywhere; }
.ab-row__st { display: flex; margin-block-start: 6px; }
.ab-row__st:empty { display: none; }
/* Request signature - step 1 (rq1-) */
.ap-stepper .is-todo { color: var(--ink-muted); }
.ap-stepper .is-todo span { inline-size: 24px; block-size: 24px; border-radius: var(--radius-pill); background: var(--neutral-bg); color: var(--ink); display: grid; place-items: center; font-size: 13px; }
.ap-stepper__line.is-todo { background: var(--line); }
.ap-step-back { display: inline-flex; align-items: center; gap: 6px; padding: 0; border: 0; background: none; color: inherit; cursor: pointer; }
.ap-step-back:hover { color: var(--blue-500); text-decoration: underline; }
.rq1 { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: var(--space-6); align-items: start; }
.rq1-card { padding: var(--space-6); display: flex; flex-direction: column; gap: var(--space-5, 20px); overflow: visible; }
.rq1-f { display: flex; flex-direction: column; gap: 8px; min-inline-size: 0; }
.rq1-f .nc-label b { color: var(--danger-ink); }
.rq1-segs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; padding: 4px; border-radius: var(--radius-md); background: var(--neutral-bg); }
.rq1-seg { block-size: 44px; border: 0; border-radius: var(--radius-sm); background: transparent; color: var(--ink); cursor: pointer; }
.bv-app .rq1-seg { font-size: 15px; }
.rq1-seg:hover { background: rgba(255,255,255,.6); }
.rq1-seg.is-on { background: var(--surface); color: var(--navy-900); font-weight: 600; box-shadow: 0 1px 3px rgba(16,24,40,.1); }
.rq1-2 { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); align-items: start; }
.rq1-2 .nc-input { block-size: 56px; }
.rq1-file { display: flex; align-items: center; gap: 12px; min-block-size: 56px; padding: 8px 14px; border: 1px solid var(--success-line, #a6e3c4); border-radius: var(--radius-sm); background: color-mix(in srgb, var(--success-bg) 45%, var(--surface)); }
.rq1-file .cm-ftype { inline-size: 36px; block-size: 36px; font-size: 10px; }
.rq1-file__t { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; }
.rq1-file__t b { color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bv-app .rq1-file__t b { font-size: 15px; font-weight: 600; }
.bv-app .rq1-file__t small { font-size: 13px; color: var(--ink-muted); }
.bv-app .rq1-file .bv-linkbtn { font-size: 15px; font-weight: 600; }
.rq1-drop { min-block-size: 56px; padding: 12px; }
.rq1-drop.is-error { border-color: var(--danger-ink); }
.rq1-pick { display: flex; gap: 8px; }
.rq1-q { flex: 1; min-inline-size: 0; }
.rq1-q .cm-search { inline-size: 100%; }
.rq1-q .cm-search.is-error { border-color: var(--danger-ink); }
.rq1-sugg { inset-inline-start: 0; inset-inline-end: auto; inline-size: 100%; max-block-size: 340px; overflow: auto; }
.rq1-cmenu { inset-inline-end: 0; inset-inline-start: auto; min-inline-size: 300px; }
.rq1-sugg .bv-avatar { inline-size: 30px; block-size: 30px; font-size: 11px; }
.rq1-sugg__t { display: flex; flex-direction: column; text-align: start; }
.bv-app .rq1-sugg__t small { font-size: 12px; color: var(--ink-muted); }
.bv-app .rq1-none { margin: 0; padding: 10px 12px; font-size: 13px; color: var(--ink-muted); }
.rq1-list { list-style: none; margin: 4px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.rq1-sg, .rq1-only { display: flex; align-items: center; gap: 14px; padding: 12px 16px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); }
.rq1-sg[draggable="true"] { cursor: grab; }
.rq1-sg.is-drag { opacity: .4; }
.rq1-sg.is-over { box-shadow: inset 0 3px 0 var(--blue-500); }
.rq1-grip { color: var(--ink-muted); display: grid; margin-inline-end: -6px; }
.rq1-no { min-inline-size: 16px; text-align: center; color: var(--ink-muted); font-variant-numeric: tabular-nums; }
.bv-app .rq1-no { font-size: 15px; font-weight: 500; }
.rq1-sg .bv-avatar, .rq1-only .bv-avatar { inline-size: 36px; block-size: 36px; }
.rq1-sg__t { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; }
.bv-app .rq1-sg__t b { font-size: 15px; font-weight: 600; color: var(--navy-900); }
.bv-app .rq1-sg__t small { font-size: 13px; color: var(--ink-muted); }
.rq1-move { display: inline-flex; gap: 2px; }
.rq1-move .bv-ghost-icon:disabled { opacity: .3; cursor: default; }
.rq1-only { background: var(--surface-raised); }
.rq1-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-block-start: 8px; }
.rq1-row > span { display: flex; flex-direction: column; }
.bv-app .rq1-row b { font-size: 15px; color: var(--navy-900); font-weight: 600; }
.bv-app .rq1-row small { font-size: 13px; color: var(--ink-muted); }
.rq1-more { border: 1px solid var(--line); border-radius: var(--radius-sm); }
.rq1-more__h { display: flex; align-items: center; justify-content: space-between; inline-size: 100%; padding: 14px 16px; border: 0; background: none; color: var(--ink-muted); text-align: start; cursor: pointer; }
.bv-app .rq1-more__h { font-size: 15px; }
.rq1-more__h b { color: var(--navy-900); font-weight: 600; }
.rq1-more.is-open .rq1-more__h .bv-icon { rotate: 180deg; }
.rq1-more__b { padding: 0 16px 16px; display: flex; flex-direction: column; gap: 12px; }
.rq1-prev { position: sticky; inset-block-start: 16px; display: flex; flex-direction: column; gap: 10px; }
.rq1-sheet { padding: 24px 32px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface-raised); }
.rq1-page { aspect-ratio: 1 / 1.38; padding: 28px 24px; background: #fff; box-shadow: 0 2px 10px rgba(16,24,40,.1); display: flex; flex-direction: column; gap: 9px; }
.rq1-page b { margin-block-end: 10px; color: var(--ink); font-weight: 400; overflow-wrap: anywhere; }
.bv-app .rq1-page b { font-size: 20px; }
.rq1-page i { display: block; block-size: 5px; border-radius: 3px; background: var(--line); }
.rq1-page.is-empty { align-items: center; justify-content: center; color: var(--ink-muted); }
.ap-v-upload .ap-bottom .ap-muted { flex: 1; }
@media (max-width: 1200px) { .rq1 { grid-template-columns: 1fr; } .rq1-prev { display: none; } }
@media (max-width: 700px) { .rq1-2 { grid-template-columns: 1fr; } .rq1-pick { flex-direction: column; } }
.rq1-more__b .nc-help { display: flex; align-items: flex-start; gap: 6px; margin: 0; }
.rq1-comm { inline-size: 100%; }
.rq1-comm select { block-size: 48px; }
.rq1-sugg__h { display: flex; align-items: center; justify-content: space-between; padding-inline-end: 10px; }
.bv-app .rq1-sugg__h .bv-linkbtn { font-size: 13px; }
.rq1-sugg .ap-menu__i .mt-cb { flex: none; }
.rq1-sugg__f { display: flex; justify-content: flex-end; padding: 8px 10px 4px; border-block-start: 1px solid var(--line-soft); margin-block-start: 4px; }
.rq1-f > .nc-help { margin: 0; }
/* Request signature step 1 v2: multiple documents, signing order, signer / reviewer */
.rq1-lab { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.bv-app .rq1-lab small { font-size: 13px; color: var(--ink-muted); }
.rq1-files { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.rq1-files .rq1-file { min-block-size: 60px; }
.rq1-drop.is-small { min-block-size: 0; padding: 12px; flex-direction: row; gap: 10px; flex-wrap: wrap; justify-content: center; }
.rq1-drop.is-small small { flex-basis: 100%; text-align: center; }
.rq1-order { padding: 16px 18px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface-raised); display: flex; flex-direction: column; gap: 8px; margin-block: 4px 4px; }
.rq1-order__h { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.bv-app .rq1-order__h .nc-label { font-size: 15px; font-weight: 600; color: var(--navy-900); }
.rq1-tgl { display: inline-flex; padding: 4px; gap: 4px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); }
.rq1-tgl button { display: inline-flex; align-items: center; gap: 8px; block-size: 38px; padding: 0 16px; border: 0; border-radius: var(--radius-sm); background: transparent; color: var(--ink); cursor: pointer; }
.bv-app .rq1-tgl button { font-size: 15px; }
.rq1-tgl button:hover { background: var(--surface-raised); }
.rq1-tgl button.is-on { background: var(--navy-900); color: #fff; font-weight: 600; }
.bv-app .rq1-order__d { margin: 0; font-size: 13px; color: var(--ink-muted); }
.rq1-flow { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; margin-block-start: 4px; }
.rq1-flow__p { position: relative; display: inline-flex; }
.rq1-flow__p .bv-avatar { inline-size: 30px; block-size: 30px; font-size: 11px; box-shadow: 0 0 0 2px var(--surface-raised); }
.rq1-flow__p i { position: absolute; inset-block-start: -6px; inset-inline-start: -6px; display: grid; place-items: center; inline-size: 16px; block-size: 16px; border-radius: 999px; background: var(--navy-900); color: #fff; font-size: 10px; font-style: normal; font-weight: 700; z-index: 1; }
.rq1-flow__arr { color: var(--ink-muted); display: grid; }
.rq1-sg { align-items: flex-start; }
.rq1-sg > .bv-avatar, .rq1-sg > .rq1-step, .rq1-sg > .rq1-grip { margin-block-start: 4px; }
.rq1-step { display: grid; place-items: center; flex: none; inline-size: 28px; block-size: 28px; border-radius: 999px; background: var(--navy-900); color: #fff; }
.bv-app .rq1-step { font-size: 13px; font-weight: 700; }
.rq1-sg__t { gap: 2px; }
.rq1-kind { display: inline-flex; align-items: center; gap: 6px; margin-block-start: 6px; flex-wrap: wrap; }
.rq1-kind > .bv-icon { flex: none; }
.bv-app .rq1-kind { font-size: 12px; font-weight: 600; }
.rq1-kind--signer { color: var(--blue-500); }
.rq1-kind--reviewer { color: var(--violet-ink); }
.rq1-kind em { font-style: normal; font-weight: 400; color: var(--ink-muted); }
.rq1-kind::before { content: none; }
.rq1-kindsel { flex: none; inline-size: 150px; margin-block-start: 2px; }
.rq1-kindsel select { block-size: 40px; }
.rq1-sq { inline-size: 36px; block-size: 36px; margin-block-start: 2px; }
.rq1-sq:disabled { opacity: .35; cursor: default; }
.rq1-move { gap: 6px; }
.rq1-del { color: var(--danger-ink); }
.rq1-del:hover, .rq1-del:focus-visible { border-color: var(--danger-line); background: var(--danger-bg); color: var(--danger-ink); }
.rq1-sg--reviewer { background: color-mix(in srgb, var(--violet-bg) 35%, var(--surface)); }
.rq1-empty { display: flex; align-items: center; gap: 8px; padding: 14px 16px !important; border: 1px dashed var(--line); border-radius: var(--radius-sm); }
.rq1-sheet.is-stack { position: relative; }
.rq1-sheet.is-stack .rq1-page { box-shadow: 6px 6px 0 -1px #fff, 6px 6px 0 0 var(--line), 0 2px 10px rgba(16,24,40,.1); }
@media (max-width: 760px) { .rq1-sg { flex-wrap: wrap; } .rq1-kindsel { inline-size: 100%; order: 5; } }
.rq1-kind--cc { color: var(--success-ink); }
.rq1-sg--cc { background: color-mix(in srgb, var(--success-bg) 35%, var(--surface)); }
/* Create Meeting: Head office / Virtual choice */
.cm-mode { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.cm-mode.is-error .cm-mode__o { border-color: var(--danger-ink); }
.cm-mode__o { position: relative; display: flex; align-items: center; gap: 12px; padding: 14px; border: 1.5px solid var(--line); border-radius: var(--radius-md); background: var(--surface); color: var(--ink); text-align: start; cursor: pointer; transition: border-color .15s, background .15s; }
.cm-mode__o:hover { border-color: var(--blue-200); background: var(--surface-raised); }
.cm-mode__o:focus-visible { outline: 2px solid var(--blue-500); outline-offset: 2px; }
.cm-mode__o.is-on { border-color: var(--blue-500); background: var(--blue-50); box-shadow: 0 0 0 1px var(--blue-500); }
.cm-mode__i { display: grid; place-items: center; flex: none; inline-size: 40px; block-size: 40px; border-radius: 10px; background: var(--neutral-bg); color: var(--navy-700); }
.cm-mode__o.is-on .cm-mode__i { background: var(--blue-500); color: #fff; }
.cm-mode__t { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; }
.bv-app .cm-mode__t b { font-size: 15px; font-weight: 600; color: var(--navy-900); }
.bv-app .cm-mode__t small { font-size: 12px; color: var(--ink-muted); }
.cm-mode__r { display: grid; place-items: center; flex: none; inline-size: 20px; block-size: 20px; border: 1.5px solid var(--line); border-radius: 999px; background: var(--surface); }
.cm-mode__o.is-on .cm-mode__r { border-color: var(--blue-500); background: var(--blue-500); color: #fff; }
.cm-mode__note { display: flex; align-items: center; gap: 6px; margin: -4px 0 0; }
.cm-parts-err .nc-aud { border-color: var(--danger-ink); }
@media (max-width: 480px) { .cm-mode { grid-template-columns: 1fr; } }
/* Create Meeting: Head office / Virtual pills under Location */
.cm-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-block-start: 10px; }
.cm-pill { display: inline-flex; align-items: center; gap: 8px; block-size: 36px; padding: 0 16px 0 8px; border: 1.5px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--ink); cursor: pointer; transition: border-color .15s, background .15s; }
.bv-app .cm-pill { font-size: 14px; font-weight: 500; }
.cm-pill:hover { border-color: var(--blue-200); }
.cm-pill:focus-visible { outline: 2px solid var(--blue-500); outline-offset: 2px; }
.cm-pill__dot { inline-size: 20px; block-size: 20px; border-radius: 999px; border: 1.5px solid var(--line); background: var(--surface); flex: none; }
.cm-pill.is-on { border-color: var(--blue-500); background: var(--blue-50); color: var(--navy-900); }
.cm-pill.is-on .cm-pill__dot { border-color: var(--blue-500); background: var(--blue-500); }
.cm-pills.is-error .cm-pill { border-color: var(--danger-ink); }
/* Request signature step 1 - Signers panel v3 (rq2-) */
.rq2-h { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; }
.rq2-h > div { display: flex; flex-direction: column; gap: 2px; }
.bv-app .rq2-h small { font-size: 13px; color: var(--ink-muted); }
.rq2-counts { display: inline-flex; gap: 6px; flex-wrap: wrap; }
.rq2-c { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border-radius: 999px; }
.bv-app .rq2-c { font-size: 12px; font-weight: 600; }
.rq2-c--signer { background: var(--blue-50); color: var(--blue-500); }
.rq2-c--reviewer { background: var(--violet-bg); color: var(--violet-ink); }
.rq2 { border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); overflow: visible; }
.rq2.is-error { border-color: var(--danger-ink); }
.rq2-tools { padding: 12px; border-block-end: 1px solid var(--line-soft); background: var(--surface-raised); border-start-start-radius: var(--radius-md); border-start-end-radius: var(--radius-md); }
.rq2-tools .rq1-pick .cm-search, .rq2-tools .rq1-pick .bv-btn-secondary { background: var(--surface); }
.rq2-order { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 12px 16px; border-block-end: 1px solid var(--line-soft); }
.rq2-order > div:first-child { display: flex; flex-direction: column; }
.bv-app .rq2-order b { font-size: 14px; font-weight: 600; color: var(--navy-900); }
.bv-app .rq2-order small { font-size: 12px; color: var(--ink-muted); }
.rq2-tgl { padding: 3px; }
.rq2-tgl button { block-size: 32px; padding: 0 12px; }
.bv-app .rq2-tgl button { font-size: 13px; }
.rq2-list { list-style: none; margin: 0; padding: 4px 0; }
.rq2-r { position: relative; display: flex; align-items: center; gap: 12px; padding: 10px 16px; }
.rq2-r + .rq2-r { border-block-start: 1px solid var(--line-soft); }
.rq2-r:hover { background: var(--surface-raised); }
.rq2-r.is-over { box-shadow: inset 0 3px 0 var(--blue-500); }
.rq2-list.is-seq .rq2-r[draggable="true"] { cursor: grab; }
.rq2-step { position: relative; align-self: stretch; display: flex; align-items: center; flex: none; inline-size: 26px; }
.rq2-step b { position: relative; z-index: 1; display: grid; place-items: center; inline-size: 26px; block-size: 26px; border-radius: 999px; background: var(--navy-900); color: #fff; }
.bv-app .rq2-step b { font-size: 12px; font-weight: 700; }
.rq2-step::after { content: ''; position: absolute; inset-inline-start: 12px; inset-block: 50% -11px; inline-size: 2px; background: var(--line); }
.rq2-step.is-last::after { display: none; }
.rq2-av { position: relative; display: inline-flex; flex: none; }
.rq2-av .bv-avatar { inline-size: 38px; block-size: 38px; font-size: 12px; }
.rq2-av__k { position: absolute; inset-block-end: -3px; inset-inline-end: -4px; display: grid; place-items: center; inline-size: 18px; block-size: 18px; border-radius: 999px; color: #fff; box-shadow: 0 0 0 2px var(--surface); }
.rq2-r--signer .rq2-av__k { background: var(--blue-500); }
.rq2-r--reviewer .rq2-av__k { background: var(--violet-ink); }
.rq2-t { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; }
.rq2-t b { display: inline-flex; align-items: center; gap: 6px; color: var(--navy-900); font-weight: 600; }
.bv-app .rq2-t b { font-size: 15px; }
.rq2-t b em { padding: 0 6px; border-radius: 4px; background: var(--neutral-bg); color: var(--ink); font-style: normal; }
.bv-app .rq2-t b em { font-size: 11px; font-weight: 600; }
.bv-app .rq2-t small { font-size: 13px; color: var(--ink-muted); }
.rq2-kind { display: inline-flex; flex: none; padding: 3px; gap: 2px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); }
.rq2-kind__o { display: inline-flex; align-items: center; gap: 5px; block-size: 30px; padding: 0 12px; border: 0; border-radius: 999px; background: transparent; color: var(--ink-muted); cursor: pointer; }
.bv-app .rq2-kind__o { font-size: 13px; font-weight: 500; }
.rq2-kind__o:hover { color: var(--ink); background: var(--surface-raised); }
.rq2-kind__o--signer.is-on { background: var(--blue-500); color: #fff; }
.rq2-kind__o--reviewer.is-on { background: var(--violet-ink); color: #fff; }
.rq2-acts { display: inline-flex; align-items: center; gap: 2px; flex: none; }
.rq2-acts .bv-ghost-icon:disabled { opacity: .3; cursor: default; }
.rq2-del:hover, .rq2-del:focus-visible { color: var(--danger-ink); background: var(--danger-bg); }
.rq2-legend { display: flex; flex-wrap: wrap; gap: 6px 18px; padding: 10px 16px; border-block-start: 1px solid var(--line-soft); background: var(--surface-raised); border-end-start-radius: var(--radius-md); border-end-end-radius: var(--radius-md); }
.rq2-legend span { display: inline-flex; align-items: center; gap: 5px; color: var(--ink-muted); }
.bv-app .rq2-legend span { font-size: 12px; }
.rq2-legend b { color: var(--ink); font-weight: 600; }
.rq2-empty { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 28px 16px; text-align: center; color: var(--ink-muted); }
.rq2-empty b { color: var(--navy-900); }
.bv-app .rq2-empty small { font-size: 13px; }
/* step 2 */
.ap-signer__ok { color: var(--success-ink); display: grid; }
.ap-signer small .bv-icon { vertical-align: -2px; margin-inline-end: 3px; }
.ap-signer--rev { --sc: var(--violet-ink); opacity: .9; }
.ap-signer--rev small { color: var(--violet-ink) !important; }
@media (max-width: 760px) { .rq2-r { flex-wrap: wrap; } .rq2-kind { order: 5; margin-inline-start: 50px; } }
.ap-signer > span:not(.ap-signer__bar):not(.ap-signer__ok) small { display: flex; align-items: center; gap: 4px; }
.ap-signer small .bv-icon { margin: 0; flex: none; }
.cm-pill.is-on .cm-pill__dot { display: grid; place-items: center; }
.cm-pill.is-on .cm-pill__dot::after { content: ''; inline-size: 9px; block-size: 5px; border-inline-start: 2px solid #fff; border-block-end: 2px solid #fff; transform: translateY(-1px) rotate(-45deg); }
.cm-hybrid { display: flex; align-items: center; gap: 6px; margin: 8px 0 0; }
/* Step 1: multiple committees */
.rq4-comms { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-block-size: 48px; padding: 6px 8px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); }
.rq4-comms.is-error { border-color: var(--danger-ink); }
.rq4-chip { display: inline-flex; align-items: center; gap: 6px; block-size: 34px; padding: 0 4px 0 12px; border-radius: 999px; background: var(--blue-50); border: 1px solid var(--blue-200); color: var(--navy-900); }
.bv-app .rq4-chip { font-size: 14px; font-weight: 500; }
.rq4-chip small { padding: 0 6px; border-radius: 999px; background: var(--surface); color: var(--ink-muted); }
.bv-app .rq4-chip small { font-size: 11px; font-weight: 600; }
.rq4-chip button { display: grid; place-items: center; inline-size: 26px; block-size: 26px; border: 0; border-radius: 999px; background: none; color: var(--ink-muted); cursor: pointer; }
.rq4-chip button:hover { background: var(--blue-200); color: var(--navy-900); }
.rq4-add { display: inline-flex; align-items: center; gap: 6px; block-size: 34px; padding: 0 12px; border: 1px dashed var(--blue-200); border-radius: 999px; background: none; color: var(--blue-500); cursor: pointer; }
.bv-app .rq4-add { font-size: 14px; font-weight: 500; }
.rq4-add:hover { background: var(--blue-50); border-color: var(--blue-500); }
.rq1-cmenu { inset-inline-start: 0; inset-inline-end: auto; }
/* Step 2: documents, pages, active signer, all pages */
.rq3-docs { display: flex; gap: 8px; padding: 10px 12px; overflow-x: auto; background: var(--surface); border-block-end: 1px solid var(--line); }
.rq3-doc { display: flex; align-items: center; gap: 10px; min-inline-size: 200px; max-inline-size: 280px; padding: 8px 12px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); text-align: start; cursor: pointer; }
.rq3-doc:hover { border-color: var(--blue-200); }
.rq3-doc.is-on { border-color: var(--blue-500); background: var(--blue-50); box-shadow: inset 0 -3px 0 var(--blue-500); }
.rq3-doc .cm-ftype { inline-size: 28px; block-size: 28px; font-size: 8px; }
.rq3-doc__t { min-inline-size: 0; display: flex; flex-direction: column; }
.rq3-doc__t b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--navy-900); font-weight: 600; }
.bv-app .rq3-doc__t b { font-size: 13px; }
.bv-app .rq3-doc__t small { font-size: 12px; color: var(--ink-muted); }
.rq3-dnav { display: inline-flex; align-items: center; gap: 4px; margin-inline-start: 12px; color: var(--ink-muted); }
.bv-app .rq3-dnav { font-size: 13px; }
.rq3-flip .bv-icon { transform: scaleX(-1); }
.ap-viewer__bar .bv-ghost-icon:disabled { opacity: .3; cursor: default; }
.rq3-hint { display: flex; align-items: center; gap: 8px; padding: 8px 16px; background: color-mix(in srgb, var(--sc) 10%, var(--surface)); color: var(--sc); border-block-end: 1px solid var(--line); }
.bv-app .rq3-hint { font-size: 13px; }
.rq3-hint b { font-weight: 700; }
.rq3-thumbs { max-block-size: 640px; overflow: auto; padding: 2px; }
.rq3-th { position: relative; display: flex; align-items: flex-end; justify-content: center; inline-size: 56px; block-size: 72px; padding-block-end: 4px; border: 1px solid var(--line); border-radius: 4px; background: var(--surface); color: var(--ink-muted); cursor: pointer; }
.bv-app .rq3-th { font-size: 11px; }
.rq3-th.is-on { border: 2px solid var(--blue-500); color: var(--blue-500); font-weight: 700; }
.rq3-th__m { position: absolute; inset-block-start: 36px; inset-inline: 8px; display: flex; gap: 3px; }
.rq3-th__m i { flex: 1; block-size: 6px; border-radius: 2px; }
.rq3-area { cursor: crosshair; border-radius: 6px; outline: 1px dashed transparent; transition: outline-color .15s; }
.rq3-area:hover { outline-color: var(--line); background: repeating-linear-gradient(45deg, transparent 0 8px, rgba(3,17,98,.02) 8px 16px); }
.rq3-filler { display: flex; flex-direction: column; gap: 10px; margin-block-end: 24px; }
.rq3-filler b { margin-block-end: 8px; color: var(--navy-900); }
.rq3-filler i { display: block; block-size: 6px; border-radius: 3px; background: var(--line); }
.ap-box.is-active { box-shadow: 0 0 0 3px color-mix(in srgb, var(--sc) 25%, transparent); }
.ap-box.is-all { border-style: dashed; }
.rq3-all { display: inline-flex; align-items: center; gap: 6px; margin-block-start: 6px; padding: 2px 8px 2px 4px; border-radius: 999px; background: #fff; border: 1px solid color-mix(in srgb, var(--sc) 40%, var(--line)); color: var(--sc); cursor: pointer; }
.bv-app .rq3-all { font-size: 11px; font-weight: 600; }
.rq3-all input { margin: 0; accent-color: var(--sc); inline-size: 14px; block-size: 14px; }
.ap-box { cursor: default; }
.rq3-sg { padding: 0; align-items: stretch; gap: 0; }
.rq3-sg__pick { flex: 1; min-inline-size: 0; display: flex; align-items: center; gap: 12px; padding: 12px; border: 0; background: none; text-align: start; cursor: pointer; border-radius: var(--radius-md) 0 0 var(--radius-md); }
.rq3-sg__t { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; }
.rq3-sg > .bv-linkbtn { padding-inline: 12px; flex: none; }
.rq3-sg.is-active { border-color: var(--sc); box-shadow: 0 0 0 1px var(--sc); background: color-mix(in srgb, var(--sc) 6%, var(--surface)); }
.rq3-sel { padding: 1px 8px; border-radius: 999px; background: var(--sc); color: #fff; }
.bv-app .rq3-sel { font-size: 11px; font-weight: 600; }
.rq3-sg + .rq3-sg, .ap-signer + .ap-signer { margin-block-start: 8px; }
.rq3-thumbs .rq3-th__m { position: absolute; inset-block-start: 36px; inset-inline: 8px; inline-size: auto; block-size: auto; border: 0; border-radius: 0; background: none; padding: 0; display: flex; gap: 3px; align-items: center; justify-content: flex-start; }
.rq3-thumbs .rq3-th__m i { position: static; flex: 1; block-size: 6px; inline-size: auto; }
.rq3-sg__t small { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.rq3-sg__t small .bv-icon { flex: none; }
.bv-app .rq3-sg__t b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.rq3-sg .ap-signer__bar { align-self: stretch; }
/* Approvals: message from the sender */
.ap-doc__msg { display: flex; align-items: flex-start; gap: 6px; max-inline-size: 520px; margin-block-start: 6px; padding: 4px 10px; border: 0; border-radius: 8px; background: var(--surface-raised); color: var(--ink); text-align: start; cursor: pointer; }
.ap-doc__msg:hover { background: var(--blue-50); }
.ap-doc__msg .bv-icon { flex: none; margin-block-start: 2px; color: var(--blue-500); }
.ap-doc__msg span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bv-app .ap-doc__msg span { font-size: 13px; }
.ap-doc__msg b { font-weight: 600; color: var(--navy-900); }
.ap-msgcard .ap-h2 { display: flex; align-items: center; gap: 8px; }
.ap-msgcard .ap-h2 .bv-icon { color: var(--blue-500); }
.ap-msg { display: flex; gap: 12px; align-items: flex-start; }
.ap-msg > div { flex: 1; min-inline-size: 0; padding: 12px 14px; border-radius: 4px 14px 14px 14px; background: var(--blue-50); }
.ap-msg__h { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.ap-msg__h b { color: var(--navy-900); }
.bv-app .ap-msg__h small { font-size: 12px; color: var(--ink-muted); }
.bv-app .ap-msg p { margin: 6px 0 0; font-size: 15px; line-height: 22px; color: var(--ink); white-space: pre-line; }
.bv-app .ap-msg__none { margin: 0; font-size: 14px; }
.ap-sg__msg { display: flex; align-items: flex-start; gap: 12px; margin-block: 0 12px; padding: 12px 14px; border: 1px solid var(--blue-200); border-radius: var(--radius-md); background: var(--blue-50); }
.ap-sg__msg > div { flex: 1; min-inline-size: 0; }
.ap-sg__msg b { color: var(--navy-900); }
.bv-app .ap-sg__msg p { margin: 4px 0 0; font-size: 14px; line-height: 21px; color: var(--ink); }
/* Configuration > Notifications, simplified (nt2-) */
.nt2-gen { padding: 14px 18px; margin-block-end: var(--space-5, 20px); }
.nt2-gen__row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 32px; }
.nt2-g { display: flex; align-items: center; gap: 12px; }
.nt2-g > span { display: flex; flex-direction: column; }
.bv-app .nt2-g b { font-size: 14px; font-weight: 600; color: var(--navy-900); }
.bv-app .nt2-g small { font-size: 12px; color: var(--ink-muted); }
.nt2-more { margin-inline-start: auto; display: inline-flex; align-items: center; gap: 4px; }
.bv-app .nt2-more { font-size: 14px; }
.nt2-gen__more { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 12px 16px; margin-block-start: 14px; padding-block-start: 14px; border-block-start: 1px solid var(--line-soft); align-items: end; }
.nt2-gen__more .nc-field { margin: 0; }
.nt2-gen__more .nc-help { grid-column: 1 / -1; margin: 0; }
.nt2-areas { display: flex; flex-wrap: wrap; gap: 8px; margin-block-end: 12px; }
.nt2-area { display: inline-flex; align-items: center; gap: 8px; block-size: 38px; padding: 0 14px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--ink); cursor: pointer; }
.bv-app .nt2-area { font-size: 14px; font-weight: 500; }
.nt2-area span { padding: 0 7px; border-radius: 999px; background: var(--neutral-bg); }
.bv-app .nt2-area span { font-size: 12px; color: var(--ink-muted); }
.nt2-area:hover { border-color: var(--blue-200); }
.nt2-area.is-on { background: var(--navy-900); border-color: var(--navy-900); color: #fff; }
.nt2-area.is-on span { background: rgba(255,255,255,.18); color: #fff; }
.nt2-list { padding: 0; overflow: visible; }
.nt2-list__h { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 14px 18px; border-block-end: 1px solid var(--line); }
.nt2-list__h .ap-h2 { margin: 0; display: flex; align-items: center; gap: 8px; }
.nt2-list__h .ap-h2 small { padding: 0 8px; border-radius: 999px; background: var(--neutral-bg); color: var(--ink-muted); font-size: 12px; font-weight: 500; }
.nt2-legend { display: flex; flex-wrap: wrap; gap: 6px 16px; }
.nt2-legend span { display: inline-flex; align-items: center; gap: 5px; color: var(--ink-muted); }
.bv-app .nt2-legend span { font-size: 12px; }
.nt2-rows { list-style: none; margin: 0; padding: 0; }
.nt2-r { display: flex; align-items: center; gap: 16px; padding: 14px 18px; }
.nt2-r + .nt2-r { border-block-start: 1px solid var(--line-soft); }
.nt2-r:hover { background: var(--surface-raised); }
.nt2-r.is-off .nt2-t { opacity: .55; }
.nt2-lock { display: grid; place-items: center; inline-size: 44px; color: var(--ink-muted); flex: none; }
.nt2-t { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; gap: 2px; }
.nt2-t b { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; color: var(--navy-900); font-weight: 600; }
.bv-app .nt2-t b { font-size: 15px; }
.nt2-t em { font-style: normal; padding: 1px 8px; border-radius: 999px; background: var(--neutral-bg); color: var(--ink); }
.bv-app .nt2-t em { font-size: 11px; font-weight: 600; }
.nt2-t em.is-urg { background: var(--warning-bg); color: var(--attention-ink); }
.bv-app .nt2-t small { font-size: 13px; color: var(--ink-muted); }
.nt2-tim { flex: none; block-size: 34px; padding: 0 8px; border: 1px solid var(--line); border-radius: var(--radius-sm); background: var(--surface); color: var(--ink); font: inherit; }
.bv-app .nt2-tim { font-size: 13px; }
.nt2-chs { display: inline-flex; gap: 6px; flex: none; }
.nt2-ch { position: relative; display: grid; place-items: center; inline-size: 36px; block-size: 36px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); color: var(--ink-muted); cursor: pointer; }
.nt2-ch:hover:not(:disabled) { border-color: var(--blue-500); color: var(--blue-500); }
.nt2-ch.is-on { background: var(--blue-500); border-color: var(--blue-500); color: #fff; }
.nt2-ch.is-lock { background: var(--navy-900); border-color: var(--navy-900); color: #fff; cursor: default; }
.nt2-ch:disabled:not(.is-lock) { opacity: .4; cursor: default; }
.nt2-ch[title]:hover::after { content: attr(title); position: absolute; inset-block-start: calc(100% + 6px); inset-inline-end: 0; z-index: 30; padding: 4px 8px; border-radius: 6px; background: var(--navy-900); color: #fff; font-size: 12px; white-space: nowrap; pointer-events: none; }
.nt2-r .ap-more .ap-menu { inset-inline-end: 0; inset-inline-start: auto; min-inline-size: 240px; }
.nt2-foot { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; margin-block-start: 12px; }
@media (max-width: 900px) { .nt2-r { flex-wrap: wrap; } .nt2-t { flex-basis: calc(100% - 60px); } .nt2-chs { margin-inline-start: 60px; } }
/* Configuration > Reports, redesigned (rp-) */
.rp-top { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin-block-end: var(--space-4); }
.rp-per { margin: 0; }
.rp-scope { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px; color: var(--ink-muted); }
.bv-app .rp-scope { font-size: 13px; }
.rp-scope .bv-icon { color: var(--blue-500); }
.rp-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); margin-block-end: var(--space-5, 20px); }
.rp-tile { position: relative; display: flex; align-items: flex-start; gap: 14px; padding: 18px 20px; }
.rp-ic { display: grid; place-items: center; flex: none; inline-size: 40px; block-size: 40px; border-radius: 10px; background: var(--blue-50); color: var(--blue-500); }
.rp-tile__b { flex: 1; min-inline-size: 0; display: flex; flex-direction: column; gap: 2px; }
.bv-app .rp-tile__b small { font-size: 13px; color: var(--ink-muted); font-weight: 500; }
.rp-tile__b b { color: var(--navy-900); font-weight: 700; font-variant-numeric: tabular-nums; line-height: 1.1; }
.bv-app .rp-tile__b b { font-size: 30px; }
.bv-app .rp-sub { font-size: 12px; color: var(--ink-muted); }
.rp-delta { position: absolute; inset-block-start: 16px; inset-inline-end: 16px; display: inline-flex; align-items: center; gap: 2px; padding: 2px 8px 2px 6px; border-radius: 999px; }
.bv-app .rp-delta { font-size: 12px; font-weight: 600; }
.rp-delta--up { background: var(--success-bg); color: var(--success-ink); }
.rp-delta--down { background: var(--danger-bg); color: var(--danger-ink); }
.rp-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); margin-block-end: var(--space-5, 20px); }
.rp-card { padding: 20px 22px 14px; display: flex; flex-direction: column; gap: 14px; }
.rp-card__h { display: flex; align-items: flex-start; gap: 12px; }
.rp-card__h > div { flex: 1; min-inline-size: 0; }
.rp-card__h .ap-h2 { margin: 0; }
.bv-app .rp-card__h small { font-size: 13px; color: var(--ink-muted); }
.rp-tot { display: flex; flex-direction: column; align-items: flex-end; color: var(--ink-muted); }
.bv-app .rp-tot { font-size: 12px; }
.rp-tot b { color: var(--navy-900); font-variant-numeric: tabular-nums; }
.bv-app .rp-tot b { font-size: 22px; font-weight: 700; }
.rp-bar { display: flex; gap: 2px; block-size: 12px; border-radius: 999px; overflow: hidden; background: var(--neutral-bg); }
.rp-bar i { display: block; min-inline-size: 4px; }
.rp-legend { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.rp-legend li { display: grid; grid-template-columns: 12px minmax(90px, 140px) 1fr 64px 44px; align-items: center; gap: 10px; }
.bv-app .rp-legend li { font-size: 14px; }
.rp-legend b { text-align: end; color: var(--navy-900); font-weight: 500; font-variant-numeric: tabular-nums; }
.bv-app .rp-legend small { text-align: end; font-size: 12px; color: var(--ink-muted); font-variant-numeric: tabular-nums; }
.rp-mini { display: block; block-size: 6px; border-radius: 999px; background: var(--neutral-bg); overflow: hidden; }
.rp-mini i { display: block; block-size: 100%; border-radius: 999px; }
.rp-card__f { margin-block-start: auto; padding-block-start: 10px; border-block-start: 1px solid var(--line-soft); display: flex; justify-content: flex-end; }
.rp-card__f .bv-linkbtn { display: inline-flex; align-items: center; gap: 2px; }
.bv-app .rp-card__f .bv-linkbtn { font-size: 13px; }
.rp-tbl { padding: 0; overflow: hidden; }
.rp-tbl__h { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 20px; border-block-end: 1px solid var(--line); }
.rp-tbl__h .ap-h2 { margin: 0; }
.bv-app .rp-tbl__h small { font-size: 13px; color: var(--ink-muted); }
.rp-tbl__h .bv-linkbtn { display: inline-flex; align-items: center; gap: 6px; }
.rp-tbl__s { overflow-x: auto; }
.rp-tbl table { inline-size: 100%; border-collapse: collapse; min-inline-size: 760px; }
.rp-tbl th { padding: 10px 20px; text-align: start; background: var(--surface-raised); color: var(--ink-muted); font-weight: 600; text-transform: uppercase; letter-spacing: .04em; border-block-end: 1px solid var(--line); }
.bv-app .rp-tbl th { font-size: 11px; }
.rp-tbl td { padding: 12px 20px; border-block-end: 1px solid var(--line-soft); color: var(--ink); }
.bv-app .rp-tbl td { font-size: 14px; }
.rp-tbl tr:last-child td { border-block-end: 0; }
.rp-tbl tbody tr:hover { background: var(--surface-raised); }
.rp-tbl td b { color: var(--navy-900); font-weight: 500; }
.rp-tbl .num { text-align: end; font-variant-numeric: tabular-nums; }
.rp-att { display: inline-flex; align-items: center; gap: 8px; font-variant-numeric: tabular-nums; }
.rp-att .rp-mini { inline-size: 90px; }
.rp-cmenu { inset-inline-end: 0; inset-inline-start: auto; min-inline-size: 260px; }
@media (max-width: 1200px) { .rp-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) { .rp-grid { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .rp-tiles { grid-template-columns: 1fr; } .rp-legend li { grid-template-columns: 12px 1fr 56px 40px; } .rp-legend .rp-mini { display: none; } }

/* ---------- Capture decisions: full page (cp-) ---------- */
.cp-main-pg { background: var(--canvas, var(--surface-raised)); }
.cp-main-pg .ap-crumb { margin-block-end: var(--space-4); }
.cp-head { margin-block-end: var(--space-6); }
.cp-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: var(--space-6); align-items: start; max-inline-size: 1240px; }
.cp-main { display: grid; gap: var(--space-5, 20px); min-inline-size: 0; }
.cp-card { padding: var(--space-6); overflow: visible; transition: opacity .15s; }
.cp-card__h { display: flex; align-items: flex-start; gap: var(--space-3); }
.cp-card__h > div { flex: 1; min-inline-size: 0; }
.cp-card__h .mc-ic { inline-size: 36px; block-size: 36px; border-radius: 10px; }
.cp-card__h .ap-h2 { margin: 0; font-size: 17px; }
.cp-card__h small { display: block; margin-block-start: 2px; font-size: 13px; color: var(--ink-muted); }
.cp-card .cp-grid, .cp-card .cp-agsel { margin-block-start: var(--space-5, 20px); }
.cp-req { flex: none; font-size: 12px; font-weight: 600; color: var(--blue-500); background: var(--blue-50); border-radius: var(--radius-pill); padding: 3px 10px; }
.cp-sw { flex: none; display: inline-flex; align-items: center; gap: var(--space-2); font-size: 13px; font-weight: 500; color: var(--ink-muted); cursor: pointer; }
.cp-card.is-off { background: var(--surface-raised); border-style: dashed; }
.cp-card.is-off .cp-card__h .mc-ic { filter: grayscale(1); opacity: .6; }
.cp-off { margin: var(--space-3) 0 0; padding-inline-start: 48px; font-size: 14px; color: var(--ink-muted); }
.cp-card--ag { padding-block: var(--space-5, 20px); border-inline-start: 4px solid var(--navy-900); }
.cp-agsel select { font-weight: 600; color: var(--navy-900); }
.cp-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5, 20px) var(--space-4); }
.cp-full { grid-column: 1 / -1; }
.cp-vote { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); min-block-size: 44px; padding: 6px var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); }
.cp-vote b { display: block; font-size: 14px; color: var(--navy-900); }
.cp-vote small { display: block; font-size: 12px; color: var(--ink-muted); }
.cp-drop { inline-size: 100%; padding-block: 22px; }
.cp-drop small { font-size: 12px; }
.cp-files { list-style: none; margin: var(--space-3) 0 0; padding: 0; display: grid; gap: var(--space-2); }
.cp-files li { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-2) var(--space-3); border: 1px solid var(--line); border-radius: var(--radius-md); font-size: 14px; color: var(--navy-900); }
.cp-files .cm-ftype { inline-size: 28px; block-size: 28px; }
.cp-pri { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.cp-pri__o { position: relative; display: inline-flex; align-items: center; gap: var(--space-2); block-size: 40px; padding-inline: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-pill); font-size: 14px; font-weight: 500; color: var(--navy-900); cursor: pointer; background: var(--surface); }
.cp-pri__o input { position: absolute; opacity: 0; inline-size: 1px; block-size: 1px; }
.cp-pri__o i { inline-size: 10px; block-size: 10px; border-radius: 50%; background: currentColor; }
.cp-pri__o--hi i { background: var(--danger-ink); } .cp-pri__o--md i { background: var(--attention-ink); } .cp-pri__o--lo i { background: var(--ink-muted); }
.cp-pri__o:hover { border-color: var(--blue-500); }
.cp-pri__o.is-on, .cp-pri__o:has(input:checked) { border-color: var(--blue-500); background: var(--blue-50); color: var(--blue-500); box-shadow: inset 0 0 0 1px var(--blue-500); }
.cp-pri__o:has(input:focus-visible) { outline: 2px solid var(--blue-500); outline-offset: 2px; }
.cp-pri.is-error .cp-pri__o { border-color: var(--danger-ink); }
.cp-side { position: sticky; inset-block-start: var(--space-6); display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-4); min-inline-size: 0; }
.cp-sum { padding: var(--space-5, 20px); }
.cp-sum ul { list-style: none; margin: var(--space-3) 0 0; padding: 0; display: grid; grid-template-columns: minmax(0, 1fr); }
.cp-sum__r { display: flex; align-items: center; gap: var(--space-3); padding-block: var(--space-3); border-block-end: 1px solid var(--line); }
.cp-sum__r > span:nth-child(2) { flex: 1; min-inline-size: 0; }
.cp-sum__r b { display: block; font-size: 14px; color: var(--navy-900); }
.cp-sum__r small { display: block; font-size: 12px; color: var(--ink-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cp-sum__r.is-off { opacity: .55; }
.cp-ok { color: var(--success-ink, #1f7a4a); display: inline-flex; }
.cp-miss { flex: none; font-size: 12px; font-weight: 600; color: var(--attention-ink); background: var(--warning-bg); border-radius: var(--radius-pill); padding: 2px 8px; }
.cp-skip { flex: none; font-size: 12px; color: var(--ink-muted); }
.cp-sum__ag { display: flex; align-items: flex-start; gap: var(--space-2); margin-block-start: var(--space-4); font-size: 13px; color: var(--ink-muted); }
.cp-sum__ag svg { flex: none; margin-block-start: 2px; }
.cp-sum__ag b { color: var(--navy-900); font-weight: 600; }
.cp-tip { display: flex; gap: var(--space-2); margin: 0; padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); background: var(--blue-50); color: var(--navy-900); font-size: 13px; line-height: 1.45; }
.cp-tip svg { flex: none; color: var(--blue-500); margin-block-start: 2px; }
.cp-foot { z-index: 3; }
@media (max-width: 1100px) {
  .cp-layout { grid-template-columns: minmax(0, 1fr); }
  .cp-side { position: static; order: -1; }
  .cp-sum ul { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); }
  .cp-sum__r { border: 1px solid var(--line); border-radius: var(--radius-md); padding: var(--space-3); }
  .cp-tip { display: none; }
}
@media (max-width: 640px) {
  .cp-grid { grid-template-columns: minmax(0, 1fr); }
  .cp-sum ul { grid-template-columns: minmax(0, 1fr); }
  .cp-off { padding-inline-start: 0; }
}
.cp-agsel.is-none select { color: var(--ink-muted); font-weight: 500; }
.cp-none { display: flex; align-items: center; gap: var(--space-2); margin: var(--space-3) 0 0; padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); background: var(--warning-bg); color: var(--attention-ink); font-size: 13px; font-weight: 500; }

/* Meeting content: decisions not linked to an agenda item */
.mc-gen { margin-block-start: var(--space-4); border: 1px dashed var(--line); border-radius: var(--radius-md); background: var(--surface-raised); }
.mc-gen__h { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-4); }
.mc-gen__h b { font-size: 15px; color: var(--navy-900); }
.mc-gen__h span:last-child { font-size: 13px; color: var(--ink-muted); }
.mc-gen__b { padding: 0 var(--space-4) var(--space-4); display: grid; gap: var(--space-2); }
.cp-main-pg .cp-layout { min-block-size: calc(100vh - 360px); }

/* ---------- Add participants drawer (pa-) ---------- */
.pa-drawer .mm-h { flex: 1; }
.pa-body { gap: var(--space-5, 20px); }
.pa-combo { position: relative; }
.pa-combo__btn { inline-size: 100%; background: var(--surface); font: inherit; font-size: 15px; cursor: pointer; text-align: start; }
.pa-combo__btn span { flex: 1; }
.pa-combo.is-open .pa-combo__btn, .pa-combo__btn:hover { border-color: var(--blue-500); }
.pa-pop { position: absolute; inset-inline: 0; inset-block-start: calc(100% + 6px); z-index: 5; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-pop); display: flex; flex-direction: column; max-block-size: 380px; }
.pa-q { margin: var(--space-3); inline-size: auto; }
.pa-opts { overflow-y: auto; padding: 0 var(--space-2) var(--space-2); }
.pa-opt { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); cursor: pointer; }
.pa-opt:hover { background: var(--surface-raised); }
.pa-opt.is-on { background: var(--blue-50); }
.pa-opt input, .pa-qopt input, .pa-mom input { accent-color: var(--blue-500); inline-size: 18px; block-size: 18px; margin: 0; flex: none; }
.pa-opt .bv-avatar { inline-size: 32px; block-size: 32px; font-size: 12px; }
.pa-opt__n { flex: 1; min-inline-size: 0; }
.pa-opt__n b { display: block; font-size: 14px; color: var(--navy-900); font-weight: 500; }
.pa-opt__n small { font-size: 12px; color: var(--ink-muted); }
.pa-opt__ok { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 600; color: var(--blue-500); }
.pa-none { margin: 0; padding: var(--space-3) var(--space-4); font-size: 14px; color: var(--ink-muted); }
.pa-pop__f { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding: var(--space-3) var(--space-4); border-block-start: 1px solid var(--line); font-size: 13px; }
.pa-quick { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.pa-qopt { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); cursor: pointer; background: var(--surface); }
.pa-qopt:hover { border-color: var(--blue-500); }
.pa-qopt.is-on { border-color: var(--blue-500); background: var(--blue-50); box-shadow: inset 0 0 0 1px var(--blue-500); }
.pa-qopt__ic { display: grid; place-items: center; inline-size: 34px; block-size: 34px; border-radius: 10px; background: var(--neutral-bg); color: var(--navy-900); flex: none; }
.pa-qopt.is-on .pa-qopt__ic { background: var(--blue-500); color: #fff; }
.pa-qopt b { display: block; font-size: 14px; color: var(--navy-900); }
.pa-qopt small { display: block; font-size: 12px; color: var(--ink-muted); }
.pa-guest { padding: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface-raised); }
.pa-guest__f { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; gap: var(--space-3); align-items: end; }
.pa-guest .bv-btn-primary { block-size: 44px; }
.pa-guest .nc-err, .pa-guest .nc-help { margin-block-end: 0; }
.pa-listh { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding-block-start: var(--space-4); border-block-start: 1px solid var(--line); margin-block-end: calc(var(--space-3) * -1); }
.pa-listh b { display: inline-flex; align-items: center; gap: var(--space-2); font-size: 15px; color: var(--navy-900); }
.pa-listh .ap-muted { font-size: 13px; }
.pa-list { list-style: none; margin: 0; padding: 0; display: grid; }
.pa-row { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-2); border-block-end: 1px solid var(--line); }
.pa-row.is-new { background: linear-gradient(90deg, var(--blue-50), transparent 60%); border-radius: var(--radius-md); }
.pa-row .bv-avatar { inline-size: 40px; block-size: 40px; }
.pa-row__n { flex: 1; min-inline-size: 0; display: grid; gap: 2px; justify-items: start; }
.pa-row__n b { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 15px; font-weight: 600; color: var(--navy-900); }
.pa-row__n small { font-size: 12px; color: var(--ink-muted); }
.pa-tag { font-size: 11px; font-weight: 600; padding: 1px 8px; border-radius: var(--radius-pill); background: var(--blue-50); color: var(--blue-500); }
.pa-tag--guest { background: var(--violet-bg); color: var(--violet-ink); }
.pa-role { position: relative; display: inline-flex; align-items: center; gap: 2px; color: var(--ink-muted); font-size: 13px; }
.pa-role select { appearance: none; border: 0; background: transparent; font: inherit; color: var(--ink-muted); padding: 2px 18px 2px 0; cursor: pointer; }
.pa-role .bv-icon, .pa-role svg { position: absolute; inset-inline-end: 0; pointer-events: none; }
.pa-role:hover select { color: var(--navy-900); }
.pa-mom { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--ink-muted); cursor: pointer; flex: none; }
.pa-x { flex: none; }
.pa-key { display: flex; gap: var(--space-2); margin: 0; font-size: 12px; color: var(--ink-muted); line-height: 1.45; }
.pa-key svg { flex: none; margin-block-start: 1px; }
@media (max-width: 560px) {
  .pa-quick, .pa-guest__f { grid-template-columns: minmax(0, 1fr); }
  .pa-row { flex-wrap: wrap; }
  .pa-row__n { flex-basis: calc(100% - 100px); }
}
.pa-opt[hidden], .pa-none[hidden] { display: none; }
.pa-role select { field-sizing: content; } .pa-combo__btn span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pa-qopt { position: relative; }
.pa-qopt .pa-qopt__cb { position: absolute; opacity: 0; inline-size: 1px; block-size: 1px; pointer-events: none; }
.pa-qopt:has(.pa-qopt__cb:focus-visible) { outline: 2px solid var(--blue-500); outline-offset: 2px; }

/* ---------- Meeting content: clickable cards ---------- */
.mc-chevbtn { margin-block-start: 10px; }
.mc-chevbtn .mc-chev { margin: 0; }
.mc-chevbtn[aria-expanded="true"] .mc-chev { rotate: 180deg; }
.mc-chevbtn:hover { background: var(--surface-raised); color: var(--navy-900); }
.mc-sub__b { flex: 1; display: flex; align-items: baseline; gap: 12px; padding: 0; border: 0; background: transparent; font: inherit; color: inherit; text-align: start; cursor: pointer; }
.mc-sub__b > svg { margin-inline-start: auto; align-self: center; color: var(--ink-muted); opacity: 0; transition: opacity .15s; }
.mc-subs li:hover .mc-sub__b > svg, .mc-sub__b:focus-visible > svg { opacity: 1; }
.mc-sub__b:hover .mc-sub__t { color: var(--blue-500); }
.mc-out--click { cursor: pointer; transition: border-color .15s, box-shadow .15s; }
.mc-out--click:hover { border-color: var(--blue-200); box-shadow: 0 2px 8px rgba(16,24,40,.06); }
button.mc-out__t { display: block; padding: 0; border: 0; background: transparent; font: inherit; font-weight: 700; color: var(--navy-900); text-align: start; cursor: pointer; }
button.mc-out__t:hover { color: var(--blue-500); text-decoration: underline; text-underline-offset: 3px; }

/* ---------- View drawers (mv-) ---------- */
.mv-drawer { inline-size: 640px; }
.mv-head { align-items: flex-start; padding-block: var(--space-5, 20px); }
.mv-head__t { flex: 1; min-inline-size: 0; display: grid; gap: 4px; }
.mv-head__t .mc-kind { font-size: 12px; font-weight: 600; }
.mv-head__t h2 { margin: 0; font-size: 20px; line-height: 1.3; font-weight: 700; color: var(--navy-900); outline: none; }
.mv-drawer--agenda .mc-kind { color: var(--navy-900); } .mv-drawer--sub .mc-kind { color: var(--ink-muted); } .mv-drawer--resolution .mc-kind { color: var(--blue-500); } .mv-drawer--action .mc-kind { color: var(--attention-ink); }
.mv-drawer--agenda .mv-head { border-block-start: 4px solid var(--navy-900); } .mv-drawer--sub .mv-head { border-block-start: 4px solid var(--line); } .mv-drawer--resolution .mv-head { border-block-start: 4px solid var(--blue-500); } .mv-drawer--action .mv-head { border-block-start: 4px solid #e0a100; }
.mv-body { gap: var(--space-5, 20px); }
.mv-crumb { align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; max-inline-size: 100%; margin-block-end: calc(var(--space-2) * -1); padding: 4px 10px 4px 4px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); font: inherit; font-size: 13px; color: var(--ink-muted); cursor: pointer; }
.mv-crumb bdi { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--navy-900); font-weight: 500; }
.mv-crumb .mc-ic { inline-size: 22px; block-size: 22px; border-radius: 6px; }
.mv-crumb:hover { border-color: var(--blue-500); }
.mv-crumb.is-static { cursor: default; padding-inline-start: 10px; }
.mv-meta { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: var(--space-4); margin: 0; padding: var(--space-4); border-radius: var(--radius-md); background: var(--surface-raised); border: 1px solid var(--line); }
.mv-meta dt { font-size: 12px; font-weight: 500; color: var(--ink-muted); margin-block-end: 6px; }
.mv-meta dd { margin: 0; min-inline-size: 0; }
.mv-big { display: flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; color: var(--navy-900); }
.mv-big svg { color: var(--ink-muted); flex: none; }
.mv-ppl { display: flex; align-items: center; gap: var(--space-2); min-inline-size: 0; }
.mv-stack { display: flex; flex: none; }
.mv-more { --av: var(--ink-muted); }
.mv-ppl__t { font-size: 13px; font-weight: 500; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-sec h3 { display: flex; align-items: center; gap: var(--space-2); margin: 0 0 var(--space-3); font-size: 15px; font-weight: 700; color: var(--navy-900); }
.mv-h3sub { margin-inline-start: auto; font-size: 13px; font-weight: 400; color: var(--ink-muted); }
.mv-p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--ink); }
.mv-empty { margin: 0; font-size: 14px; color: var(--ink-muted); }
.mv-list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-2); }
.mv-row { inline-size: 100%; display: flex; align-items: center; gap: var(--space-3); padding: 10px 12px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); font: inherit; text-align: start; cursor: pointer; color: var(--navy-900); }
.mv-row:hover { border-color: var(--blue-200); background: var(--surface-raised); }
.mv-row > svg { color: var(--ink-muted); flex: none; }
.mv-row--resolution { border-inline-start: 4px solid var(--blue-500); } .mv-row--action { border-inline-start: 4px solid #e0a100; }
.mv-row__t { flex: 1; min-inline-size: 0; display: grid; gap: 2px; }
.mv-row__t b { font-size: 14px; font-weight: 600; }
.mv-row__t small { font-size: 12px; color: var(--ink-muted); }
.mv-plist { list-style: none; margin: 0; padding: 0; display: grid; }
.mv-plist li { display: flex; align-items: center; gap: var(--space-3); padding-block: 8px; border-block-end: 1px solid var(--line-soft, var(--line)); }
.mv-plist li:last-child { border-block-end: 0; }
.mv-plist .bv-avatar { inline-size: 32px; block-size: 32px; font-size: 12px; }
.mv-plist b { flex: 1; font-size: 14px; font-weight: 500; color: var(--navy-900); }
.mv-pri { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; color: var(--navy-900); }
.mv-pri i { inline-size: 10px; block-size: 10px; border-radius: 50%; }
.mv-pri--high i { background: var(--danger-ink); } .mv-pri--medium i { background: var(--attention-ink); } .mv-pri--low i { background: var(--ink-muted); }
.mv-cmts { padding-block-start: var(--space-5, 20px); border-block-start: 1px solid var(--line); }
.mv-clist { list-style: none; margin: 0 0 var(--space-4); padding: 0; display: grid; gap: var(--space-4); }
.mv-clist li { display: flex; gap: var(--space-3); }
.mv-clist .bv-avatar { inline-size: 32px; block-size: 32px; font-size: 12px; flex: none; }
.mv-clist li > div { flex: 1; min-inline-size: 0; padding: 10px 12px; border-radius: 0 var(--radius-md) var(--radius-md) var(--radius-md); background: var(--surface-raised); }
.mv-c__h { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--space-2); margin: 0 0 4px; }
.mv-c__h b { font-size: 14px; color: var(--navy-900); }
.mv-c__h small { font-size: 12px; color: var(--ink-muted); }
.mv-c__x { margin: 0; font-size: 14px; line-height: 1.5; color: var(--ink); }
.mv-cmts .mv-empty { margin-block-end: var(--space-3); }
.mv-cbox { display: flex; gap: var(--space-2); }
.mv-cbox .nc-input { flex: 1; }
.mv-send { inline-size: 44px; block-size: 44px; padding: 0; justify-content: center; flex: none; }
.mv-crumb { white-space: nowrap; }

/* View drawers v2: people, vote bar, progress steps, side / full screen */
.mv-drawer:not(.is-full) .mv-col { display: contents; }
.mv-drawer:not(.is-full) .mv-crumb { order: -2; }
.mv-drawer:not(.is-full) .mv-meta { order: -1; }
.mv-stack { display: flex; flex: none; }
.mv-stack > span { display: flex; }
.mv-stack .bv-avatar { inline-size: 30px; block-size: 30px; font-size: 11px; font-weight: 600; letter-spacing: -.02em; box-shadow: 0 0 0 2px var(--surface-raised); }
.mv-stack > * + * { margin-inline-start: -6px; }
.mv-more { --av: var(--navy-700); background: var(--neutral-bg) !important; color: var(--navy-900) !important; }
.mv-ppl--btn { display: inline-flex; align-items: center; gap: var(--space-2); max-inline-size: 100%; padding: 4px 10px 4px 4px; margin: -4px 0 0 -4px; border: 1px solid transparent; border-radius: var(--radius-pill); background: transparent; font: inherit; cursor: pointer; color: var(--ink-muted); }
.mv-ppl--btn:hover, .mv-ppl--btn[aria-expanded="true"] { border-color: var(--line); background: var(--surface); }
.mv-meta__wide { grid-column: 1 / -1; }
.mv-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mv-vflist { list-style: none; margin: var(--space-3) 0 0; padding: var(--space-2); display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 4px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); max-block-size: 220px; overflow-y: auto; }
.mv-vflist li { display: flex; align-items: center; gap: var(--space-2); padding: 6px; border-radius: var(--radius-sm); }
.mv-vflist .bv-avatar { inline-size: 28px; block-size: 28px; font-size: 11px; }
.mv-vflist b { display: block; font-size: 13px; font-weight: 500; color: var(--navy-900); }
.mv-vflist small { display: block; font-size: 11px; color: var(--ink-muted); }
/* vote */
.mv-vote { padding: var(--space-5, 20px); border: 1px solid var(--line); border-radius: var(--radius-md); display: grid; gap: var(--space-4); }
.mv-vote__h { display: flex; align-items: center; gap: var(--space-3); }
.mv-vote__h > div { flex: 1; min-inline-size: 0; }
.mv-vote__h b { display: block; font-size: 16px; color: var(--navy-900); }
.mv-vote__h small { display: block; font-size: 13px; color: var(--ink-muted); }
.mv-verdict { display: grid; place-items: center; inline-size: 40px; block-size: 40px; border-radius: 12px; flex: none; }
.mv-verdict--ok { background: var(--success-bg); color: var(--success-ink); }
.mv-verdict--bad { background: var(--danger-bg); color: var(--danger-ink); }
.mv-verdict--wait { background: var(--blue-50); color: var(--blue-500); }
.mv-vote__n { font-size: 13px; color: var(--ink-muted); white-space: nowrap; }
.mv-vote__n b { font-size: 22px; font-weight: 700; color: var(--navy-900); }
.mv-bar { position: relative; display: flex; gap: 2px; block-size: 14px; margin-block: 18px 2px; border-radius: 4px; background: var(--surface); }
.mv-bar__s { display: block; background: var(--c); min-inline-size: 6px; }
.mv-bar__s:first-child { border-start-start-radius: 4px; border-end-start-radius: 4px; }
.mv-bar__s:last-of-type { border-start-end-radius: 4px; border-end-end-radius: 4px; }
.mv-bar__m { position: absolute; inset-block: -6px; inline-size: 0; border-inline-start: 2px dashed var(--navy-900); }
.mv-bar__m span { position: absolute; inset-block-end: calc(100% + 2px); inset-inline-start: 0; translate: -50% 0; font-size: 11px; font-weight: 600; color: var(--navy-900); white-space: nowrap; }
.mv-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-2); }
.mv-tile { display: grid; gap: 2px; padding: 10px 12px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); font: inherit; text-align: start; cursor: pointer; }
.mv-tile:hover { border-color: var(--blue-200); }
.mv-tile.is-on { border-color: var(--blue-500); box-shadow: inset 0 0 0 1px var(--blue-500); background: var(--blue-50); }
.mv-tile.is-zero { opacity: .55; }
.mv-tile__l { display: flex; align-items: center; gap: 6px; font-size: 12px; color: var(--ink-muted); }
.mv-tile__l i { inline-size: 10px; block-size: 10px; border-radius: 3px; background: var(--c); flex: none; }
.mv-tile__l i[style*="--line"] { box-shadow: inset 0 0 0 1px var(--ink-faint, var(--ink-muted)); }
.mv-tile b { font-size: 22px; line-height: 1.1; font-weight: 700; color: var(--navy-900); }
.mv-tile small { font-size: 12px; color: var(--ink-muted); }
/* action progress */
.mv-prog { padding: var(--space-5, 20px); border: 1px solid var(--line); border-radius: var(--radius-md); }
.mv-prog h3 { margin-block-end: var(--space-4); }
.mv-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); }
.mv-steps li { position: relative; display: grid; justify-items: center; gap: 6px; font-size: 13px; color: var(--ink-muted); text-align: center; }
.mv-steps li::before { content: ""; position: absolute; inset-block-start: 13px; inset-inline: -50% 50%; block-size: 3px; background: var(--line); z-index: 0; }
.mv-steps li:first-child::before { display: none; }
.mv-steps li.is-done::before, .mv-steps li.is-now::before, .mv-steps li.is-bad::before { background: var(--chart-positive); }
.mv-steps__d { position: relative; z-index: 1; display: grid; place-items: center; inline-size: 28px; block-size: 28px; border-radius: 50%; background: var(--surface); border: 2px solid var(--line); font-size: 12px; font-weight: 700; color: var(--ink-muted); }
.mv-steps li.is-done .mv-steps__d { background: var(--chart-positive); border-color: var(--chart-positive); color: #fff; }
.mv-steps li.is-now .mv-steps__d { border-color: var(--blue-500); color: var(--blue-500); box-shadow: 0 0 0 4px var(--blue-50); }
.mv-steps li.is-bad .mv-steps__d { background: var(--danger-bg); border-color: var(--danger-ink); color: var(--danger-ink); }
.mv-steps li.is-done, .mv-steps li.is-now { color: var(--navy-900); font-weight: 600; }
.mv-steps li.is-bad { color: var(--danger-ink); font-weight: 600; }
.mv-due { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; margin: var(--space-5, 20px) 0 0; padding: 10px 12px; border-radius: var(--radius-md); background: var(--surface-raised); font-size: 13px; color: var(--ink-muted); }
.mv-due b { color: var(--navy-900); font-size: 14px; }
.mv-due svg { color: var(--blue-500); }
.mv-due.is-late { background: var(--danger-bg); }
.mv-due.is-late b, .mv-due.is-late svg { color: var(--danger-ink); }
/* full screen */
.mv-drawer { transition: inline-size .2s ease; }
.mv-drawer.is-full { inline-size: 100%; }
.mv-drawer.is-full .mv-head { padding-inline: max(var(--space-6), calc((100% - 1180px) / 2)); }
.mv-drawer.is-full .mv-head__t h2 { font-size: 26px; }
.mv-drawer.is-full .mv-body { display: grid; grid-template-columns: minmax(0, 1fr) 380px; align-items: start; gap: var(--space-8); padding: var(--space-8) max(var(--space-6), calc((100% - 1180px) / 2)); }
.mv-drawer.is-full .mv-col { display: flex; flex-direction: column; gap: var(--space-6); min-inline-size: 0; }
.mv-drawer.is-full .mv-col--side { position: sticky; inset-block-start: 0; }
.mv-drawer.is-full .mv-meta { grid-template-columns: minmax(0, 1fr); background: var(--surface); }
.mv-drawer.is-full .mv-vflist { grid-template-columns: minmax(0, 1fr); }
.mv-drawer.is-full .mv-cmts { padding: var(--space-5, 20px); border: 1px solid var(--line); border-radius: var(--radius-md); }
.mv-drawer.is-full .mv-p { font-size: 16px; max-inline-size: 68ch; }
.mv-drawer.is-full .mv-plist { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--space-6); }
.mv-drawer.is-full .mv-plist li:nth-last-child(2):nth-child(odd) { border-block-end: 0; }
@media (max-width: 900px) {
  .mv-drawer.is-full .mv-body { grid-template-columns: minmax(0, 1fr); }
  .mv-drawer.is-full .mv-col--side { position: static; }
}
@media (max-width: 560px) {
  .mv-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mv-meta, .mv-drawer.is-full .mv-plist { grid-template-columns: minmax(0, 1fr); }
}
.mv-drawer--action:not(.is-full) .mv-meta { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 560px) { .mv-drawer--action:not(.is-full) .mv-meta { grid-template-columns: minmax(0, 1fr); } }
.mv-stack .bv-avatar { border: 0; font-size: 10.5px; letter-spacing: 0; }
.mv-stack > * + * { margin-inline-start: -3px; }
.mv-vflist .bv-avatar, .mv-plist .bv-avatar, .mv-clist .bv-avatar { border: 0; }

/* ---------- Standalone resolutions / actions in the agenda order ---------- */
.mc-top { align-items: center; padding: 14px 16px 14px 12px; margin-block-end: var(--space-3); border-radius: var(--radius-md); }
.mc-top .mc-out__b { min-inline-size: 0; }
.mc-no--resolution { background: var(--blue-500); }
.mc-no--action { background: #b07a00; }
.mc-top > .mc-no { inline-size: 32px; block-size: 32px; font-weight: 700; }
.mc-top__k { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.mc-solo { font-size: 11px; font-weight: 500; color: var(--ink-muted); padding: 1px 8px; border-radius: var(--radius-pill); background: var(--neutral-bg); }
.ab-add2 { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin: 0 6px 6px; }
.ab-add2 .ab-add { inline-size: auto; margin: 0; padding: 10px; font-size: 14px; justify-content: center; }
.ab-add--res { color: var(--blue-500); }
.ab-add--act { color: var(--attention-ink); }
.ab-add--act:hover { border-color: #e0a100; background: var(--warning-bg); }
.ab-add2__h { display: flex; gap: 6px; margin: 0 10px 10px; font-size: 12px; line-height: 1.4; color: var(--ink-muted); }
.ab-add2__h svg { flex: none; margin-block-start: 1px; }
.ab-type { display: inline-flex; align-items: center; gap: 4px; inline-size: fit-content; padding: 1px 8px; border-radius: var(--radius-pill); font-size: 11px; font-weight: 700; letter-spacing: .02em; text-transform: uppercase; }
.ab-type--resolution { background: var(--blue-50); color: var(--blue-500); }
.ab-type--action { background: var(--warning-bg); color: var(--attention-ink); }
.ab-row__t .ab-type { margin-block-end: 3px; }
.ab-row--resolution, .ab-row--action { border-inline-start: 3px solid var(--blue-500); }
.ab-row--action { border-inline-start-color: #e0a100; }
.ab-row--resolution .ab-no { background: var(--blue-50); color: var(--blue-500); }
.ab-row--action .ab-no { background: var(--warning-bg); color: var(--attention-ink); }
.ab-editor--resolution .ab-no--lg { background: var(--blue-500); color: #fff; }
.ab-editor--action .ab-no--lg { background: #b07a00; color: #fff; }
.ab-ed__h .ab-type { font-size: 12px; padding: 2px 10px; }
.ab-vote { margin: 0; }
.ab-drop--sm { grid-auto-flow: row; padding: 14px; }
.ab-drop--sm + .ab-file, .ab-file + .ab-drop--sm { margin-block-start: 8px; }
.cp-pri.is-warn .cp-pri__o { border-color: #e0a100; }
button.cp-pri__o { font: inherit; font-size: 14px; font-weight: 500; }

/* ---------- Agenda purpose, viewers, linked resolutions/actions, rich sub-points ---------- */
.ab-purp, .mc-purp { display: inline-flex; align-items: center; gap: 5px; inline-size: fit-content; padding: 1px 8px; border-radius: var(--radius-pill); font-size: 11px; font-weight: 600; line-height: 18px; letter-spacing: 0; text-transform: none; }
.ab-purp::before, .mc-purp::before { content: ""; inline-size: 6px; block-size: 6px; border-radius: 50%; background: currentColor; }
.ab-purp--info, .mc-purp--info { background: var(--neutral-bg); color: var(--ink-muted); }
.ab-purp--discussion, .mc-purp--discussion { background: var(--violet-bg); color: var(--violet-ink); }
.ab-purp--decision, .mc-purp--decision { background: var(--blue-50); color: var(--blue-500); }
.ab-row__t .ab-purp { margin-block-end: 3px; }
.ab-ocnt { display: flex; flex-wrap: wrap; gap: 6px; margin-block-start: 4px; }
.ab-ocnt span { display: inline-flex; align-items: center; gap: 3px; font-size: 11px; font-weight: 600; }
.ab-ocnt--resolution { color: var(--blue-500); } .ab-ocnt--action { color: var(--attention-ink); }
.mc-ag__k { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
/* viewers */
.ab-vwrap { position: relative; }
.ab-vbtn { inline-size: 100%; display: flex; align-items: center; gap: var(--space-3); padding: 8px 12px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); font: inherit; text-align: start; cursor: pointer; color: var(--ink-muted); }
.ab-vbtn:hover, .ab-vbtn[aria-expanded="true"] { border-color: var(--blue-500); }
.ab-vbtn.is-limited { background: var(--surface-raised); }
.ab-vbtn .mv-stack .bv-avatar { box-shadow: 0 0 0 2px var(--surface); }
.ab-vbtn__t { flex: 1; min-inline-size: 0; }
.ab-vbtn__t b { display: block; font-size: 14px; color: var(--navy-900); }
.ab-vbtn__t small { display: block; font-size: 12px; color: var(--ink-muted); }
.ab-vpop { position: absolute; z-index: 6; inset-inline: 0; inset-block-start: calc(100% + 6px); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-pop); display: flex; flex-direction: column; max-block-size: 380px; }
.ab-vlist { overflow-y: auto; padding: 4px 8px 8px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px; }
.ab-vopt { display: flex; align-items: center; gap: 10px; padding: 8px; border-radius: var(--radius-sm); cursor: pointer; }
.ab-vopt:hover { background: var(--surface-raised); }
.ab-vopt input { accent-color: var(--blue-500); inline-size: 17px; block-size: 17px; margin: 0; flex: none; }
.ab-vopt .bv-avatar { inline-size: 28px; block-size: 28px; font-size: 10.5px; border: 0; }
.ab-vopt b { display: block; font-size: 13px; font-weight: 500; color: var(--navy-900); }
.ab-vopt small { display: block; font-size: 11px; color: var(--ink-muted); }
.ab-vopt--all { margin: 8px 8px 4px; padding: 10px; border-bottom: 1px solid var(--line); border-radius: var(--radius-sm) var(--radius-sm) 0 0; }
.ab-vopt--all b { font-size: 14px; font-weight: 600; }
.ab-vpop__f { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding: 10px 12px; border-block-start: 1px solid var(--line); font-size: 13px; }
/* linked outcomes */
.ab-outs { display: grid; gap: 8px; }
.ab-outs--item { padding: 0; }
.ab-outs--item > .nc-label { margin: 0; }
.ab-out { display: flex; gap: var(--space-3); padding: 10px 12px; border: 1px solid var(--line); border-inline-start: 4px solid var(--blue-500); border-radius: var(--radius-md); background: var(--surface); }
.ab-out--action { border-inline-start-color: #e0a100; }
.ab-out > .mc-ic { margin-block-start: 2px; }
.ab-out__b { flex: 1; min-inline-size: 0; display: grid; gap: 8px; }
.ab-out__h { display: flex; align-items: center; justify-content: space-between; margin-block: -4px -2px; }
.ab-out .nc-input { block-size: 38px; font-size: 14px; }
.ab-out__f { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px 14px; }
.ab-out__fld { display: grid; gap: 4px; font-size: 12px; color: var(--ink-muted); }
.ab-out__fld .nc-select { block-size: 38px; min-inline-size: 170px; }
.ab-out__fld .nc-select select { font-size: 14px; }
.ab-out__sw { display: inline-flex; align-items: center; gap: 8px; block-size: 38px; font-size: 13px; color: var(--navy-900); font-weight: 500; }
.ab-opri { display: inline-flex; gap: 4px; }
.ab-opri__o { display: inline-flex; align-items: center; gap: 5px; block-size: 34px; padding-inline: 10px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); font: inherit; font-size: 13px; color: var(--navy-900); cursor: pointer; }
.ab-opri__o i { inline-size: 8px; block-size: 8px; border-radius: 50%; }
.ab-opri__o--high i { background: var(--danger-ink); } .ab-opri__o--medium i { background: var(--attention-ink); } .ab-opri__o--low i { background: var(--ink-muted); }
.ab-opri__o.is-on { border-color: var(--blue-500); background: var(--blue-50); color: var(--blue-500); box-shadow: inset 0 0 0 1px var(--blue-500); }
.ab-outs__a { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.ab-oadd { display: inline-flex; align-items: center; gap: 6px; block-size: 34px; padding-inline: 12px; border: 1px dashed var(--line); border-radius: var(--radius-pill); background: var(--surface); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.ab-oadd--res { color: var(--blue-500); } .ab-oadd--res:hover { border-color: var(--blue-500); background: var(--blue-50); }
.ab-oadd--act { color: var(--attention-ink); } .ab-oadd--act:hover { border-color: #e0a100; background: var(--warning-bg); }
.ab-oadd__h { font-size: 12px; color: var(--ink-muted); }
/* sub-point cards */
.ab-subsec { display: grid; gap: var(--space-3); }
.ab-subsec > .nc-label { margin: 0; }
.ab-subc { display: grid; gap: var(--space-3); padding: var(--space-4); border: 1px solid var(--line); border-inline-start: 3px solid var(--line); border-radius: var(--radius-md); }
.ab-subc:focus-within { border-inline-start-color: var(--blue-500); }
.ab-subc__h { display: flex; align-items: center; gap: 10px; }
.ab-subc__h .nc-input { flex: 1; font-weight: 600; }
.ab-subc__g { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.ab-subc .nc-label { font-size: 13px; }
.ab-subc__v { display: flex; align-items: center; gap: 6px; block-size: 44px; padding-inline: 12px; border-radius: var(--radius-md); background: var(--surface-raised); font-size: 13px; color: var(--ink-muted); }
.ab-subc .ab-outs { padding-block-start: var(--space-3); border-block-start: 1px dashed var(--line); }
.ab-drop--row { display: flex; align-items: center; justify-content: flex-start; gap: 8px; padding: 12px 14px; text-align: start; }
.ab-drop--row small { color: var(--ink-muted); }
.ab-file + .ab-drop--row, .ab-file + .ab-file { margin-block-start: 8px; }
.ab-toc__o { color: var(--ink-muted); }
.ab-toc__o--resolution::first-letter { color: var(--blue-500); }
@media (max-width: 640px) { .ab-subc__g, .ab-vlist { grid-template-columns: minmax(0, 1fr); } }
/* meeting content */
.mc-subref { display: inline-flex; align-items: center; gap: 4px; inline-size: fit-content; margin-block: 2px; padding: 1px 8px 1px 4px; border-radius: var(--radius-pill); background: var(--neutral-bg); font-size: 12px; color: var(--ink-muted); }
.mc-subref bdi { color: var(--navy-900); font-weight: 500; }
.mc-sub__m { display: flex !important; align-items: center; gap: 4px 10px; flex-wrap: wrap; margin-block-start: 2px; }
.mc-sub__m svg { margin-inline-end: -6px; }
.mc-preq { display: flex; align-items: center; gap: var(--space-3); margin-block-end: var(--space-4); padding: var(--space-3) var(--space-4); border: 1px solid #f0c36d; border-radius: var(--radius-md); background: var(--warning-bg); color: var(--attention-ink); }
.mc-preq > div { flex: 1; min-inline-size: 0; }
.mc-preq b { display: block; font-size: 14px; color: var(--navy-900); }
.mc-preq small { display: block; font-size: 13px; color: var(--ink-muted); }
.mc-preq.is-done { border-color: var(--success-line, var(--line)); background: var(--success-bg); color: var(--success-ink); }
.mc-paperwait { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-block: 8px; padding: 8px 12px; border-radius: var(--radius-md); background: var(--warning-bg); font-size: 13px; color: var(--attention-ink); }
.mc-paperwait span { flex: 1; color: var(--ink); }
.mc-paperwait b { color: var(--attention-ink); }
.mv-same { display: flex; align-items: center; gap: 4px; margin-block-start: 6px; font-size: 12px; color: var(--ink-muted); }
.ab-paper__crumb { margin-block-end: var(--space-4); }
/* ---------- View items as a centred pop-up ---------- */
.mv-modal:not(.is-full) { position: fixed; inset: 50% auto auto 50%; translate: -50% -50%; inline-size: min(780px, calc(100vw - 32px)); max-block-size: min(86vh, calc(100vh - 32px)); border-radius: 16px; overflow: hidden; box-shadow: 0 24px 64px rgba(16, 24, 40, .28); }
.mv-modal.is-enter { animation: mv-pop .18s ease-out; }
.mv-modal.is-full { position: fixed; inset: 16px; inline-size: auto; border-radius: 16px; overflow: hidden; box-shadow: 0 24px 64px rgba(16, 24, 40, .28); }
.mv-modal .mv-head { border-radius: 16px 16px 0 0; }
.mv-modal .nc-foot { border-radius: 0 0 16px 16px; }
.mv-scrim { position: fixed; }
@keyframes mv-pop { from { opacity: 0; scale: .97; } to { opacity: 1; scale: 1; } }
@media (prefers-reduced-motion: reduce) { .mv-modal { animation: none !important; } }
@media (max-width: 560px) { .mv-modal:not(.is-full), .mv-modal.is-full { inset: auto 0 0 0; translate: none; inline-size: 100%; max-block-size: 92vh; border-radius: 16px 16px 0 0; } }
/* sub-point description on Meeting Details */
.mc-sub__t { gap: 2px; min-inline-size: 0; }
.mc-sub__tt { font-weight: 500; color: var(--navy-900); }
.mc-sub__d { display: block; font-size: 14px; line-height: 1.45; color: var(--ink); opacity: .8; white-space: normal; }
.mc-subs li { padding-block: 8px; }
/* Upload paper as a pop-up */
.pr-modal:not(.is-full) { inline-size: min(620px, calc(100vw - 32px)); }
.pr-modal { overflow-y: auto; }
.pr-x { position: absolute; inset-block-start: 14px; inset-inline-end: 14px; z-index: 2; }
.pr-body .ab-paper { display: block; padding: 0; }
.pr-body .ab-paper__card { max-inline-size: none; margin: 0; border: 0; border-radius: 0; box-shadow: none; padding: 28px 28px 24px; }
.pr-body .ab-paper__a { position: sticky; inset-block-end: -24px; margin-block-end: -24px; padding-block: 16px 24px; background: var(--surface); border-block-start: 1px solid var(--line); }
.mt-preq { margin-block: 0 var(--space-5, 20px); } .mt-preq small + small { margin-block-start: 2px; }
.mt-preq { margin-block-start: var(--space-5, 20px); }
/* View agenda item: one-line facts, everything expanded */
.mv-drawer:not(.is-full) .mv-meta--row { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: var(--space-4) var(--space-6); }
.mv-drawer:not(.is-full) .mv-meta--row > div { flex: none; }
.mv-meta--row .mv-ppl__t { white-space: nowrap; overflow: visible; text-overflow: clip; }
.mv-meta--row .mv-ppl--btn { max-inline-size: none; }
.mv-vflist { flex: none; }
.mv-drawer:not(.is-full) .mv-meta--row + .mv-vflist { order: -1; margin-block-start: -12px; }
.mv-subs { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-3); }
.mv-sub { border: 1px solid var(--line); border-inline-start: 3px solid var(--ink-faint, var(--line)); border-radius: var(--radius-md); background: var(--surface); }
.mv-sub__h { display: flex; align-items: center; gap: 10px; padding: 12px 14px 0; }
.mv-sub__h b { flex: 1; min-inline-size: 0; font-size: 15px; color: var(--navy-900); }
.mv-sub__b { display: grid; gap: 8px; padding: 6px 14px 14px 54px; }
.mv-sub__d, .mv-oc__d { margin: 0; font-size: 14px; line-height: 1.5; color: var(--ink); }
.mv-outs { display: grid; gap: 8px; }
.mv-oc { display: grid; gap: 8px; padding: 12px 14px; border: 1px solid var(--line); border-inline-start: 4px solid var(--blue-500); border-radius: var(--radius-md); background: var(--surface); }
.mv-oc--action { border-inline-start-color: #e0a100; }
.mv-sub .mv-oc { background: var(--surface-raised); }
.mv-oc__h { display: flex; align-items: flex-start; gap: 10px; }
.mv-oc__t { flex: 1; min-inline-size: 0; display: grid; gap: 1px; }
.mv-oc__t small { font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--blue-500); }
.mv-oc--action .mv-oc__t small { color: var(--attention-ink); }
.mv-oc__t b { font-size: 14px; color: var(--navy-900); }
.mv-oc__vote { display: grid; gap: 6px; }
.mv-oc__vote .mv-bar { block-size: 8px; margin: 2px 0 0; }
.mv-oc__leg { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 12px; color: var(--ink-muted); }
.mv-oc__leg span { display: inline-flex; align-items: center; gap: 5px; }
.mv-oc__leg i { inline-size: 8px; block-size: 8px; border-radius: 2px; background: var(--c); }
.mv-oc__go { justify-self: start; display: inline-flex; align-items: center; gap: 2px; font-size: 13px; }
.mv-sub__h .mv-oc__go { flex: none; }
.mv-modal .mv-body { overflow-y: auto; overscroll-behavior: contain; }
@media (max-width: 640px) { .mv-drawer:not(.is-full) .mv-meta--row { justify-content: flex-start; } .mv-sub__b { padding-inline-start: 14px; } }
/* Meeting card: sub-points expanded */
.mc-subs li { flex-direction: column; align-items: stretch; gap: 8px; }
.mc-sub__x { display: grid; gap: 8px; padding-inline-start: 42px; }
.mc-sub__x .mc-out { margin-block-end: 0; }
.mc-sub__x .mc-subref { display: none; }
/* View for: avatars only */
.mv-vf { display: inline-flex; align-items: center; gap: 6px; padding: 3px 6px 3px 3px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); cursor: pointer; }
.mv-vf:hover, .mv-vf[aria-expanded="true"] { border-color: var(--blue-500); box-shadow: 0 0 0 3px var(--blue-50); }
.mv-vf__stack { display: flex; }
.mv-vf__stack > span { display: flex; }
.mv-vf__stack > * + * { margin-inline-start: -2px; }
.mv-vf__stack .bv-avatar { inline-size: 28px; block-size: 28px; font-size: 10px; border: 0; box-shadow: 0 0 0 2px var(--surface); }
.mv-vf__more { display: grid; place-items: center; min-inline-size: 28px; block-size: 28px; padding-inline: 6px; border-radius: var(--radius-pill); background: var(--blue-50); color: var(--blue-500); font-size: 11px; font-weight: 700; box-shadow: 0 0 0 2px var(--surface); }
.mv-vf__chev { display: grid; place-items: center; inline-size: 20px; color: var(--ink-muted); }
/* ---------- Full screen v2: use the whole width ---------- */
.mv-drawer.is-full .mv-head { padding-inline: var(--space-8); }
.mv-drawer.is-full .mv-body { grid-template-columns: minmax(0, 1fr) clamp(320px, 26vw, 420px); row-gap: 0; column-gap: var(--space-8); padding: var(--space-6) var(--space-8) var(--space-8); align-items: start; }
.mv-drawer.is-full .mv-col--side { display: contents; }
.mv-drawer.is-full .mv-meta { grid-column: 1 / -1; grid-row: 1; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); align-items: start; gap: var(--space-4) var(--space-8); margin: 0 0 var(--space-6); padding: var(--space-4) var(--space-6); background: var(--surface-raised); }
.mv-drawer.is-full .mv-meta > div { flex: none; }
.mv-drawer.is-full .mv-meta + .mv-vflist { grid-column: 1 / -1; grid-row: 2; margin: 0 0 var(--space-6); max-block-size: none; overflow: visible; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
.mv-drawer.is-full .mv-col--main { grid-column: 1; grid-row: 3; }
.mv-drawer.is-full .mv-cmts { grid-column: 2; grid-row: 3; position: sticky; inset-block-start: 0; }
.mv-drawer.is-full .mv-p { max-inline-size: none; }
.mv-drawer.is-full .mv-col--main > .mv-sec > .mv-outs { grid-template-columns: repeat(auto-fill, minmax(min(100%, 440px), 1fr)); align-items: start; }
.mv-drawer.is-full .mv-sub__b { grid-template-columns: minmax(0, 1fr); }
.mv-drawer.is-full .mv-ppl__t { white-space: nowrap; overflow: visible; }
@media (max-width: 900px) {
  .mv-drawer.is-full .mv-body { grid-template-columns: minmax(0, 1fr); }
  .mv-drawer.is-full .mv-cmts { grid-column: 1; grid-row: 4; position: static; }
}
.mv-drawer:not(.is-full) .mv-meta--start { justify-content: flex-start; column-gap: var(--space-10, 48px); }
/* ---------- Action progress journey ---------- */
.mv-pills { display: inline-flex; flex-wrap: wrap; gap: 6px; }
.ap-pill--muted { background: var(--neutral-bg); color: var(--ink-muted); }
.mv-due2 { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; font-weight: 600; color: var(--navy-900); }
.mv-due2 svg { color: var(--blue-500); }
.mv-due2.is-late, .mv-due2.is-late svg { color: var(--danger-ink); }
.mv-upd { padding: var(--space-5, 20px); border: 1.5px solid var(--blue-200); border-radius: var(--radius-md); background: linear-gradient(180deg, var(--blue-50), var(--surface) 70%); display: grid; gap: var(--space-3); }
.mv-upd h3 { margin: 0; gap: 8px; }
.mv-upd h3 svg { color: var(--blue-500); }
.mv-upd__sub { margin: -6px 0 0; font-size: 13px; color: var(--ink-muted); }
.mv-pseg { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.mv-pseg__o { display: flex; align-items: center; justify-content: center; gap: 8px; block-size: 44px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); font: inherit; font-size: 14px; font-weight: 600; color: var(--navy-900); cursor: pointer; }
.mv-pseg__o:hover { border-color: var(--blue-500); }
.mv-pseg__o--progress.is-on { border-color: var(--blue-500); background: var(--blue-50); color: var(--blue-500); box-shadow: inset 0 0 0 1px var(--blue-500); }
.mv-pseg__o--done.is-on { border-color: var(--success-ink); background: var(--success-bg); color: var(--success-ink); box-shadow: inset 0 0 0 1px var(--success-ink); }
.mv-pseg__o--notdone.is-on { border-color: var(--danger-ink); background: var(--danger-bg); color: var(--danger-ink); box-shadow: inset 0 0 0 1px var(--danger-ink); }
.mv-upd__f { display: grid; gap: var(--space-3); padding-block-start: var(--space-3); border-block-start: 1px dashed var(--line); }
.mv-upd__f .nc-label { font-size: 13px; }
.mv-upd__a { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 12px; }
.mv-upd__h { display: inline-flex; align-items: center; gap: 6px; margin-inline-end: auto; font-size: 12px; color: var(--ink-muted); }
.mv-upd__done { background: var(--success-ink, #1f7a4a); border-color: var(--success-ink, #1f7a4a); }
.mv-upd__bad { color: var(--danger-ink); border-color: var(--danger-ink); }
.mv-pfiles { display: grid; gap: 8px; margin-block-end: 8px; }
.mv-quote { margin: 8px 0 0; padding: 10px 14px; border-inline-start: 3px solid var(--success-ink, #1f7a4a); border-radius: 0 var(--radius-md) var(--radius-md) 0; background: var(--success-bg); font-size: 14px; color: var(--ink); }
.mv-quote cite { display: block; margin-block-start: 4px; font-size: 12px; font-style: normal; color: var(--ink-muted); }
.mv-tl { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
.mv-tl li { position: relative; display: flex; gap: 12px; padding-block-end: 14px; }
.mv-tl li:not(:last-child)::before { content: ""; position: absolute; inset-inline-start: 13px; inset-block: 30px 0; inline-size: 2px; background: var(--line); }
.mv-tl .bv-avatar { inline-size: 28px; block-size: 28px; font-size: 10px; border: 0; flex: none; }
.mv-tl p { margin: 0; font-size: 14px; color: var(--ink); }
.mv-tl p b { color: var(--navy-900); }
.mv-tl small { margin-inline-start: 6px; font-size: 12px; color: var(--ink-muted); }
.mv-tl__n { margin-block-start: 4px !important; padding: 6px 10px; border-radius: var(--radius-sm); background: var(--surface-raised); font-size: 13px !important; }
.mv-tl__f { display: flex; align-items: center; gap: 5px; margin-block-start: 4px !important; font-size: 12px !important; color: var(--ink-muted) !important; }
.mc-open--mine { font-weight: 700; }
@media (max-width: 560px) { .mv-pseg { grid-template-columns: minmax(0, 1fr); } }
.mv-drawer.is-full .mv-body { align-content: start; }
.mv-drawer.is-full .mv-col--main > .mv-crumb:first-child { margin-block-end: 0; }
.mv-drawer.is-full .mv-meta { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
/* ---------- Persona: member edit mode ---------- */
.pp-ebanner { display: flex; align-items: flex-start; gap: var(--space-3); margin-block-end: var(--space-6); padding: var(--space-3) var(--space-4); border: 1px solid var(--blue-200); border-radius: var(--radius-md); background: var(--blue-50); font-size: 14px; color: var(--ink); }
.pp-ebanner svg { flex: none; color: var(--blue-500); margin-block-start: 1px; }
.pp-ebanner b { color: var(--navy-900); }
.pp-layout.is-editing { padding-block-end: 88px; }
.pp-efield { display: grid; gap: 6px; }
.pp-efield .pp-text { min-block-size: 168px; line-height: 1.55; }
.pp-efield__f { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-3); font-size: 12px; color: var(--ink-muted); }
.pp-efield__f > span { display: inline-flex; gap: 5px; }
.pp-efield__f svg { flex: none; margin-block-start: 1px; }
.pp-count { font-weight: 500; color: var(--ink-muted); white-space: nowrap; }
.pp-card--edit { border-color: var(--blue-200); }
.pp-tag--x { display: inline-flex; align-items: center; gap: 4px; padding-inline-end: 4px; }
.pp-tag--x button { display: grid; place-items: center; inline-size: 20px; block-size: 20px; border: 0; border-radius: 50%; background: transparent; color: inherit; cursor: pointer; }
.pp-tag--x button:hover { background: rgba(0, 0, 0, .08); }
.pp-skadd { display: flex; gap: 8px; margin-block-start: var(--space-3); }
.pp-skadd .nc-input { flex: 1; block-size: 40px; }
.pp-skadd .bv-btn-secondary { block-size: 40px; }
.ma-persona__a { display: inline-flex; align-items: center; gap: 8px; flex: none; }
.pp-ebanner { margin: var(--space-4) 0 0; }
/* Minutes template preview: separate A4 pages */
.tp-paper { display: block; }
.tp-pages { display: flex; flex-direction: column; align-items: center; gap: 6px; padding-block: 4px 12px; }
.tp-pglab { align-self: center; margin-block-start: 10px; font-size: 12px; font-weight: 600; color: var(--ink-muted); letter-spacing: .02em; }
.tp-pglab:first-child { margin-block-start: 0; }
.tp-page { padding-block-end: 72px; }
.tp-runhead { display: flex; justify-content: space-between; gap: 12px; font-size: 10.5px; color: #6b7280; }
.tp-page--cont .tp-wm { z-index: 0; }
/* Minutes template: uploaded header, footer and logo */
.tp-brand { display: grid; gap: 10px; }
.tp-up { display: grid; gap: 10px; padding: 12px 14px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); }
.tp-up.is-set { border-color: var(--blue-200); }
.tp-up--in { padding: 10px 0 0; border: 0; border-block-start: 1px dashed var(--line); border-radius: 0; }
.tp-up__h b { display: block; font-size: 14px; color: var(--navy-900); }
.tp-up__h small { display: block; font-size: 12px; color: var(--ink-muted); }
.tp-up__drop { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border: 1.5px dashed var(--line); border-radius: var(--radius-md); cursor: pointer; color: var(--blue-500); }
.tp-up__drop:hover { border-color: var(--blue-500); background: var(--blue-50); }
.tp-up__drop b { display: block; font-size: 14px; }
.tp-up__drop small { display: block; font-size: 12px; color: var(--ink-muted); }
.tp-up__f { display: flex; align-items: center; gap: 10px; }
.tp-up__th { display: grid; place-items: center; flex: none; inline-size: 72px; block-size: 44px; padding: 4px; border: 1px solid var(--line); border-radius: 6px; background: repeating-conic-gradient(#f3f4f6 0 25%, #fff 0 50%) 0 0 / 12px 12px; overflow: hidden; }
.tp-up__th--hdr, .tp-up__th--ftr { inline-size: 132px; }
.tp-up__th img { max-inline-size: 100%; max-block-size: 100%; object-fit: contain; }
.tp-up__n { flex: 1; min-inline-size: 0; }
.tp-up__n b { display: block; font-size: 13px; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tp-up__n small { font-size: 12px; color: var(--ink-muted); }
.tp-up__o { display: grid; gap: 6px; }
.tp-up__o .nc-label { font-size: 12px; margin: 0; }
.tp-hdrimg { margin: -44px -48px 18px; }
.tp-hdrimg img, .tp-ftrimg img { display: block; inline-size: 100%; block-size: auto; }
.tp-page--cont .tp-hdrimg { margin-block-end: 12px; }
.tp-foot--img { inset-inline: 0; inset-block-end: 0; flex-wrap: wrap; padding: 8px 48px 0; border: 0; }
.tp-foot--img > span:not(.tp-ftrimg) { padding-block-end: 8px; }
.tp-ftrimg { flex: 0 0 100%; margin-inline: -48px; inline-size: calc(100% + 96px); }
.tp-logo--s { block-size: 30px; } .tp-logo--m { block-size: 44px; } .tp-logo--l { block-size: 64px; }
.tp-hl--center { align-items: center; } .tp-hl--end { align-items: flex-end; }
.tp-top--c { flex-direction: column; align-items: center; gap: 10px; }
.tp-top--c .mp-issued { text-align: center; }
.tp-foot--img { padding: 8px 0 0; }
.tp-foot--img > span:first-child { padding-inline-start: 48px; }
.tp-foot--img > span:nth-child(2) { padding-inline-end: 48px; }
.tp-foot--img .tp-ftrimg { flex: 0 0 100%; margin: 0; inline-size: 100%; }
/* KPI builder: committees and members with Select all */
.kp-pick { display: grid; gap: 10px; padding: var(--space-4); border: 1px solid var(--line); border-radius: var(--radius-md); margin-block-end: var(--space-4); }
.kp-pick__h { display: flex; align-items: center; gap: 10px; }
.kp-pick__h > b { font-size: 15px; color: var(--navy-900); }
.kp-pick__h .ap-muted { font-size: 13px; }
.kp-sa { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--blue-500); cursor: pointer; }
.kp-sa input, .kp-copt input, .kp-mopt input { accent-color: var(--blue-500); inline-size: 16px; block-size: 16px; margin: 0; flex: none; }
.kp-sa--h { margin-inline-start: auto; padding: 4px 10px; border: 1px solid var(--blue-200); border-radius: var(--radius-pill); background: var(--blue-50); }
.kp-cgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; }
.kp-copt { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--radius-md); cursor: pointer; }
.kp-copt:hover { border-color: var(--blue-200); }
.kp-copt.is-on { border-color: var(--blue-500); background: var(--blue-50); }
.kp-copt b { display: block; font-size: 13px; color: var(--navy-900); font-weight: 600; }
.kp-copt small { display: block; font-size: 12px; color: var(--ink-muted); }
.kp-mq { inline-size: 100%; }
.kp-mgrps { display: grid; gap: 10px; max-block-size: 360px; overflow-y: auto; padding-inline-end: 4px; }
.kp-mgrp { border: 1px solid var(--line-soft, var(--line)); border-radius: var(--radius-md); }
.kp-mgrp__h { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 12px; background: var(--surface-raised); border-radius: var(--radius-md) var(--radius-md) 0 0; }
.kp-mgrp__h b { font-size: 13px; color: var(--navy-900); }
.kp-mlist { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 2px; padding: 6px; }
.kp-mopt { display: flex; align-items: center; gap: 8px; padding: 6px 8px; border-radius: var(--radius-sm); cursor: pointer; font-size: 13px; color: var(--navy-900); }
.kp-mopt:hover { background: var(--surface-raised); }
.kp-mopt .bv-avatar { inline-size: 24px; block-size: 24px; font-size: 9.5px; border: 0; }
.kp-sub2 { margin: 0 0 6px; font-size: 13px; font-weight: 600; color: var(--navy-900); }
.kp-pick .tp-hint { display: flex; align-items: center; gap: 6px; }

/* ---------- Home (renders the layout published in Configuration › Home screen) ---------- */
.hm-main--noside { grid-template-columns: minmax(0, 1fr); }
.hm-head { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--space-4); flex-wrap: wrap; }
.hm-head__end { display: flex; flex-direction: column; align-items: flex-end; gap: var(--space-3); }
.hm-head__row { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; justify-content: flex-end; }
.hm-head .mt-roleswitch { margin-inline-start: 0; }
.hm-hbtn { block-size: 38px; }
.hm-rng { position: relative; }
.hm-rng__m { position: absolute; inset-block-start: calc(100% + 6px); inset-inline-end: 0; z-index: 20; min-inline-size: 180px; display: grid; padding: 6px; background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-lg, 0 8px 24px rgba(3, 17, 98, .12)); }
.hm-rng__m button { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); padding: 9px 12px; border: 0; border-radius: var(--radius-sm); background: none; font: inherit; font-size: 15px; color: var(--ink); cursor: pointer; text-align: start; }
.hm-rng__m button:hover, .hm-rng__m [aria-selected="true"] { background: var(--blue-50); color: var(--navy-900); }
.hm-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); align-items: stretch; }
.hm-w { position: relative; min-inline-size: 0; }
.hm-w.is-full, .hm-empty.is-full { grid-column: 1 / -1; }
.hm-w > .bv-card { block-size: 100%; }
.hm-n { display: inline-grid; place-items: center; min-inline-size: 24px; block-size: 24px; padding-inline: 7px; margin-inline-start: 6px; border-radius: var(--radius-pill); background: var(--blue-50); color: var(--navy-900); font-size: 13px; font-weight: 500; vertical-align: 3px; }
button.bv-link { background: none; border: 0; padding: 0; font: inherit; font-size: 15px; color: var(--ink-muted); cursor: pointer; }
button.bv-link:hover { color: var(--blue-500); text-decoration: underline; }
.hm-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-6); }
.hm-w:not(.is-full) .hm-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.hm-stat { font: inherit; text-align: start; cursor: pointer; inline-size: 100%; }
.hm-stat > span:last-child { display: grid; }
.hm-stat:hover { border-color: var(--blue-200); box-shadow: 0 2px 10px rgba(3, 17, 98, .06); }
.hm-w:not(.is-full) .bv-stat__label { font-size: 17px; }
.hm-pct { font-weight: 500; color: var(--ink-muted); margin-inline-start: 4px; font-size: 14px; }
.hm-sec__h { display: flex; justify-content: space-between; align-items: baseline; margin-block-end: var(--space-4); }
.hm-res { display: grid; grid-template-columns: repeat(var(--n, 3), minmax(0, 1fr)); gap: var(--space-6); }
.hm-res .bv-res { justify-content: space-between; }
.hm-res .bv-btn-outline { min-inline-size: 0; padding-inline: var(--space-5, 20px); }
.hm-mt { display: grid; gap: 8px; padding: var(--space-4) var(--space-6); }
.hm-mt__f { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); }
.hm-sub { font-size: 13px; color: var(--ink-muted); margin-inline-start: 6px; }
.hm-btn { min-inline-size: 0; padding: 5px var(--space-4); font-size: 14px; flex: none; }
.hm-chip--late { color: var(--danger-ink); border-color: var(--danger-line); background: var(--danger-bg); }
.hm-prow > div { flex: 1; min-inline-size: 0; }
.hm-prow .hm-sub { margin-inline-start: 0; display: block; }
.hm-bar { display: block; block-size: 6px; margin-block-start: 8px; border-radius: var(--radius-pill); background: var(--neutral-bg, #eef0f5); overflow: hidden; }
.hm-bar i { display: block; block-size: 100%; border-radius: inherit; background: var(--navy-900); }
.hm-bar--ok i { background: var(--success-ink); }
.hm-bar--warn i { background: var(--warning-ink); }
.hm-bar--danger i { background: var(--danger-ink); }
.hm-ok { color: var(--success-ink); display: grid; }
.hm-kpi { padding: 0 var(--space-6) var(--space-6); display: grid; grid-template-columns: 1fr auto; gap: var(--space-3) var(--space-4); align-items: start; }
.hm-kpi__v { display: grid; gap: 2px; }
.hm-kpi__v b { font-size: 36px; line-height: 40px; font-weight: 700; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.hm-kpi__v span { font-size: 14px; color: var(--ink-muted); }
.hm-kpi__m { grid-column: 1 / -1; display: flex; justify-content: space-between; font-size: 13px; color: var(--ink-muted); }
.hm-kpi__m b { color: var(--ink); font-weight: 500; }
.hm-spark { grid-column: 1 / -1; position: relative; display: flex; align-items: flex-end; gap: 8px; block-size: 64px; }
.hm-spark i { flex: 1; border-radius: 4px 4px 0 0; background: var(--blue-200); }
.hm-spark i.is-now { background: var(--navy-900); }
.hm-spark s { position: absolute; inset-inline: 0; border-block-start: 1.5px dashed var(--success-ink); }
.hm-side { display: flex; flex-direction: column; }
.hm-side__s { position: relative; }
.hm-side__s + .hm-side__s { border-block-start: 1px solid var(--line); }
.hm-side__h { display: flex; justify-content: space-between; align-items: baseline; padding: var(--space-6) var(--space-6) var(--space-2); }
.hm-mbtns { grid-column: 1 / -1; display: flex; gap: var(--space-2); }
.hm-li { display: flex; gap: var(--space-3); align-items: flex-start; padding: var(--space-3) var(--space-6); }
.hm-li__i { inline-size: 36px; block-size: 36px; flex: none; display: grid; place-items: center; border-radius: var(--radius-md); background: var(--blue-50); color: var(--navy-900); }
.hm-li > span:last-child { display: grid; gap: 2px; min-inline-size: 0; }
.hm-li b { font-weight: 500; font-size: 15px; color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hm-li small { font-size: 13px; color: var(--ink-muted); }
.hm-empty { display: grid; justify-items: center; gap: var(--space-2); padding: 56px var(--space-6); text-align: center; color: var(--ink-muted); }
.hm-empty b { color: var(--ink); font-size: 17px; font-weight: 500; }
.hm-note { display: flex; align-items: center; gap: var(--space-2); font-size: 14px; color: var(--ink-muted); margin-block-start: calc(var(--space-2) * -1); }
.hm-note .bv-linkbtn { font-size: 14px; }
.hm-editbar { display: grid; grid-template-columns: auto 1fr auto; gap: var(--space-4); align-items: start; padding: var(--space-4) var(--space-5, 20px); border: 1px solid var(--blue-200); border-radius: var(--radius-md); background: var(--blue-50); }
.hm-editbar__i { inline-size: 36px; block-size: 36px; display: grid; place-items: center; border-radius: var(--radius-pill); background: var(--surface); color: var(--navy-900); }
.hm-editbar b { display: block; font-size: 16px; font-weight: 500; color: var(--navy-900); }
.hm-editbar small { display: block; font-size: 14px; color: var(--ink-muted); margin-block-start: 2px; }
.hm-editbar__a { display: flex; align-items: center; gap: var(--space-4); }
.hm-hidden { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); margin-block-start: var(--space-3); font-size: 14px; }
.hm-hidden__l { font-size: 12px; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; color: var(--ink-muted); }
.hm-chipbtn { display: inline-flex; align-items: center; gap: 4px; padding: 4px 12px 4px 8px; border: 1px dashed var(--blue-400); border-radius: var(--radius-pill); background: var(--surface); color: var(--navy-900); font: inherit; font-size: 14px; cursor: pointer; }
.hm-chipbtn:hover { border-style: solid; }
.hm-w.is-edit, .hm-side__s.is-edit { outline: 2px dashed var(--blue-200); outline-offset: 4px; border-radius: var(--radius-sm); }
.hm-tools { position: absolute; z-index: 5; inset-block-start: -14px; inset-inline-end: 10px; display: flex; align-items: center; gap: 2px; padding: 2px 4px 2px 10px; border: 1px solid var(--blue-200); border-radius: var(--radius-pill); background: var(--surface-raised); box-shadow: 0 2px 8px rgba(3, 17, 98, .1); font-size: 13px; }
.hm-tools .bv-ghost-icon { padding: 4px; }
.hm-tools .bv-ghost-icon:disabled { opacity: .3; cursor: default; }
.hm-tools__n { display: inline-flex; align-items: center; gap: 4px; color: var(--ink-muted); margin-inline-end: 4px; }
.hm-tools__hide { display: inline-flex; align-items: center; gap: 4px; padding: 4px 10px; border: 0; border-radius: var(--radius-pill); background: var(--danger-bg); color: var(--danger-ink); font: inherit; font-size: 13px; font-weight: 500; cursor: pointer; }
.hm-side__s .hm-tools { inset-block-start: 6px; }
.hm-side__s.is-edit { padding-block-start: 34px; }

/* ---------- Resolutions: deadline timeline ---------- */
.rs-lay { display: inline-flex; gap: 2px; padding: 3px; border-radius: var(--radius-pill); background: var(--neutral-bg); }
.rs-lay button { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border: 0; border-radius: var(--radius-pill); background: none; font: inherit; font-size: 14px; color: var(--ink-muted); cursor: pointer; }
.rs-lay button.is-on { background: var(--surface); color: var(--navy-900); font-weight: 500; box-shadow: 0 1px 2px rgba(3, 17, 98, .1); }
.rs-tl { --tl-x: 11px; position: relative; display: grid; gap: var(--space-8); padding-inline-start: 36px; }
.rs-tl::before { content: ""; position: absolute; inset-block: 12px 12px; inset-inline-start: var(--tl-x); inline-size: 2px; background: var(--line); border-radius: 2px; }
.rs-tl__g { --tc: var(--ink-muted); --tb: var(--neutral-bg); position: relative; }
.rs-tl__g--over { --tc: var(--danger-ink); --tb: var(--danger-bg); }
.rs-tl__g--today { --tc: var(--attention-ink); --tb: var(--warning-bg); }
.rs-tl__g--week { --tc: var(--blue-500); --tb: var(--blue-50); }
.rs-tl__g--later { --tc: var(--navy-700); --tb: var(--blue-50); }
.rs-tl__g--closed { --tc: var(--success-ink); --tb: var(--success-bg); }
.rs-tl__gh { position: relative; display: flex; align-items: baseline; gap: var(--space-3); flex-wrap: wrap; margin-block-end: var(--space-3); }
.rs-tl__node { position: absolute; inset-inline-start: calc(-36px + var(--tl-x) - 7px); inset-block-start: 6px; inline-size: 16px; block-size: 16px; border-radius: var(--radius-pill); background: var(--tb); border: 3px solid var(--tc); box-sizing: border-box; }
.rs-tl__gh h2 { margin: 0; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--tc); }
.rs-tl__n { display: inline-grid; place-items: center; min-inline-size: 22px; block-size: 22px; padding-inline: 6px; border-radius: var(--radius-pill); background: var(--tb); color: var(--tc); font-size: 12px; font-weight: 700; }
.rs-tl__gh small { font-size: 14px; color: var(--ink-muted); }
.rs-tl__gh small b { color: var(--attention-ink); font-weight: 500; }
.rs-tl__list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-2); }
.rs-tl__row { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 200px 150px 240px; align-items: center; gap: var(--space-6); padding: var(--space-4) var(--space-5, 20px); background: var(--surface-raised); border: 1px solid var(--line); border-radius: var(--radius-md); }
.rs-tl__row:hover { border-color: var(--blue-200); }
.rs-tl__row.is-need { border-inline-start: 3px solid var(--attention-ink); }
.rs-tl__dot { position: absolute; inset-inline-start: calc(-36px + var(--tl-x) - 4px); inset-block-start: 50%; translate: 0 -50%; inline-size: 10px; block-size: 10px; border-radius: var(--radius-pill); border: 2px solid var(--tc); background: var(--surface); box-sizing: border-box; }
.rs-tl__row.is-need .rs-tl__dot { background: var(--tc); }
[dir="rtl"] .rs-tl__dot { translate: 0 -50%; }
.rs-tl__main { min-inline-size: 0; display: grid; gap: 6px; }
.rs-tl__t { justify-self: start; max-inline-size: 100%; padding: 0; border: 0; background: none; font: inherit; font-size: 16px; font-weight: 500; line-height: 22px; color: var(--navy-900); text-align: start; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rs-tl__t:hover { text-decoration: underline; }
.rs-tl__meta { display: flex; align-items: center; gap: var(--space-3); min-inline-size: 0; }
.rs-tl__meta .bv-meta { font-size: 13px; }
.rs-tl__prog .rs-bar { margin-block: 6px 0; }
.rs-tl__ph { display: flex; justify-content: space-between; font-size: 13px; color: var(--ink-muted); }
.rs-tl__ph b { color: var(--ink); font-weight: 500; }
.rs-tl__when { justify-self: start; }
.rs-tl__act { display: flex; align-items: center; justify-content: flex-end; gap: var(--space-3); }
.rs-tl__st { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: var(--radius-md); font-size: 14px; font-weight: 500; white-space: nowrap; }
.rs-tl__st--need { color: var(--attention-ink); background: var(--warning-bg); }
.rs-tl__st--na { color: var(--ink-muted); background: var(--neutral-bg); }
.rs-tl__btn { block-size: 36px; padding-inline: var(--space-5, 20px); }
.rs-tl__chg { font-size: 14px; min-inline-size: 52px; justify-content: center; }
@media (max-width: 1200px) { .rs-tl__row { grid-template-columns: minmax(0, 1fr) 150px; } .rs-tl__prog { grid-column: 1; } .rs-tl__when { grid-column: 2; grid-row: 1; justify-self: end; } .rs-tl__act { grid-column: 2; grid-row: 2; } }

/* ---------- Action Tracker: completed after the due date ---------- */
.at-due--donelate { background: var(--danger-bg); color: var(--danger-ink); }
.at-tr__due, .at-dd-due { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.at-latebar--done { background: var(--warning-bg); color: var(--attention-ink); }

/* Left / right moves in the Home grid (chevron mirrored for the start side; flips in RTL) */
.bv-dir-start svg { transform: scaleX(-1); }
[dir="rtl"] .bv-dir-start svg { transform: none; }
[dir="rtl"] .bv-dir-end svg { transform: scaleX(-1); }
.hs-w__a { flex-wrap: wrap; justify-content: flex-end; }

/* ---------- Notifications: Celebrations ---------- */
.nt-mail__hero { display: flex; align-items: center; gap: 10px; margin-block-start: 16px; padding: 14px 16px; border-radius: 10px; background: var(--blue-50); color: var(--navy-900); }
.nt-mail__hero b { font-size: 18px; font-weight: 500; }
.nt-mail__hero .bv-icon { color: var(--blue-500); flex: none; }
.nt2-cel { display: flex; gap: 8px; align-items: flex-start; margin: 0; padding: 12px var(--space-6); border-block-start: 1px solid var(--line-soft); font-size: 13px; color: var(--ink-muted); }
.nt2-cel .bv-icon { flex: none; color: var(--blue-500); margin-block-start: 1px; }

/* ---------- Minutes templates: library and committee assignment ---------- */
.tl-lead { margin-block-end: var(--space-4); }
.tl-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(390px, 1fr)); gap: var(--space-4); margin-block-end: var(--space-6); }
.tl-card { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: var(--space-4); padding: var(--space-4); background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); }
.tl-card.is-def { border-color: var(--blue-200); box-shadow: inset 0 0 0 1px var(--blue-200); }
.tl-card__b { display: flex; flex-direction: column; gap: 6px; min-inline-size: 0; }
.tl-card__tags { display: flex; gap: 6px; flex-wrap: wrap; }
.tl-card__t { margin: 2px 0 0; font-size: 17px; font-weight: 500; color: var(--navy-900); }
.tl-card__k, .tl-card__u { display: flex; align-items: flex-start; gap: 6px; margin: 0; font-size: 13px; color: var(--ink-muted); }
.tl-card__k { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: block; }
.tl-card__k svg, .tl-card__k .bv-icon { display: inline-block; vertical-align: -2px; margin-inline-end: 4px; }
.tl-card__u { color: var(--ink); font-size: 14px; }
.tl-card__u .bv-icon { flex: none; margin-block-start: 2px; color: var(--blue-500); }
.tl-card__f { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); margin-block-start: auto; padding-block-start: 8px; font-size: 12px; }
.tl-card__f > .ap-muted { min-inline-size: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tl-card__a { display: inline-flex; align-items: center; gap: 4px; }
.tl-thumb { position: relative; display: flex; flex-direction: column; gap: 5px; block-size: 132px; padding: 10px 9px; border: 1px solid var(--line); border-radius: 6px; background: #fff; box-shadow: 0 1px 3px rgba(3, 17, 98, .08); overflow: hidden; }
.tl-thumb__top { block-size: 6px; inline-size: 40%; border-radius: 2px; background: var(--acc); }
.tl-thumb__lh { display: flex; align-items: center; gap: 4px; margin: -10px -9px 2px; padding: 6px 8px; background: var(--acc); }
.tl-thumb__lh b { font-size: 8px; color: #fff; letter-spacing: .04em; }
.tl-thumb__t { block-size: 5px; inline-size: 70%; border-radius: 2px; background: #1e2a78; opacity: .7; }
.tl-thumb span { block-size: 3px; border-radius: 2px; background: #d7dbe6; }
.tl-thumb span.s { inline-size: 60%; background: var(--acc); opacity: .35; block-size: 5px; }
.tl-thumb em { position: absolute; inset-inline: 9px; inset-block-end: 8px; block-size: 3px; background: #e4e7ef; }
.tl-new { display: grid; place-content: center; justify-items: center; gap: 4px; min-block-size: 162px; padding: var(--space-4); border: 1.5px dashed var(--blue-200); border-radius: var(--radius-md); background: var(--surface); color: var(--blue-500); font: inherit; cursor: pointer; text-align: center; }
.tl-new:hover { background: var(--blue-50); }
.tl-new b { font-size: 15px; font-weight: 500; }
.tl-new small { color: var(--ink-muted); font-size: 13px; }
.tl-comms { overflow: visible; }
.tl-comms__h { padding: var(--space-4) var(--space-6); border-block-end: 1px solid var(--line-soft); }
.tl-tr { display: grid; grid-template-columns: 40px minmax(0, 1fr) 320px 160px; align-items: center; gap: var(--space-4); padding: 10px var(--space-6); border-block-start: 1px solid var(--line-soft); }
.tl-tr.is-sel { background: var(--blue-50); }
.tl-th { font-size: 13px; font-weight: 500; color: var(--ink-muted); background: var(--neutral-bg); border-block-start: 0; }
.tl-cb { display: grid; place-items: center; }
.tl-cb input { inline-size: 18px; block-size: 18px; accent-color: var(--blue-500); }
.tl-tr__n { display: grid; justify-items: start; font-size: 15px; color: var(--ink); }
.tl-tr__n small { font-size: 12px; color: var(--ink-muted); }
.tl-tsel { block-size: 38px; }
.tl-tsel select { font-size: 14px; }
.tl-bulk { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; padding: 10px var(--space-6); background: var(--navy-900); color: #fff; }
.tl-bulk b { font-weight: 500; }
.tl-bulk .tl-tsel { background: var(--surface); color: var(--ink); min-inline-size: 260px; }
.tl-bulk .bv-linkbtn { color: #fff; }
.tl-crumb { flex-wrap: wrap; }
.tl-crumb > b { color: var(--ink); font-weight: 500; }
.tl-usedby { display: inline-flex; align-items: center; gap: 6px; margin-inline-start: auto; padding: 6px 12px; border: 1px solid var(--line); border-radius: var(--radius-pill); background: var(--surface); font: inherit; font-size: 14px; color: var(--navy-700); cursor: pointer; }
.tl-usedby:hover { border-color: var(--blue-200); background: var(--blue-50); }
.tl-radio { display: grid; gap: 8px; }
.tl-ro { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); font: inherit; text-align: start; cursor: pointer; }
.tl-ro span:last-child { display: grid; }
.tl-ro b { font-weight: 500; font-size: 15px; color: var(--ink); }
.tl-ro small { font-size: 13px; color: var(--ink-muted); }
.tl-ro.is-on { border-color: var(--blue-500); box-shadow: inset 0 0 0 1px var(--blue-500); background: var(--blue-50); }
.tl-ro.is-on .rs-radio { border-color: var(--blue-500); box-shadow: inset 0 0 0 4px var(--blue-500); }
.tl-pick { display: grid; border: 1px solid var(--line); border-radius: var(--radius-md); max-block-size: 340px; overflow: auto; margin-block-start: -6px; }
.tl-pick .kp-chk { padding: 10px 14px; border-block-start: 1px solid var(--line-soft); align-items: flex-start; }
.tl-pick .kp-chk input { margin-block-start: 3px; }
.tl-pick__all { position: sticky; inset-block-start: 0; z-index: 1; background: var(--neutral-bg); border-block-start: 0 !important; align-items: center !important; }
.tl-pick__all .ap-muted { margin-inline-start: auto; font-size: 13px; }
.tl-pick__r > span { display: grid; justify-items: start; }
.tl-pick__r small span, .tl-pick__r small bdi { display: inline; }
.tl-pick__r small { font-size: 12px; color: var(--ink-muted); }
.tl-upf { margin-block-end: var(--space-4); }

.tl-card__a { flex: none; }
.tl-new { min-block-size: 0; }
.tl-dlg { position: fixed; }
.nc-scrim:has(+ .tl-dlg) { position: fixed; }
.tl-dlg .nc-body { overflow: auto; }

/* ---------- Template by committee (redesign) ---------- */
.tl-comms__h { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--space-4); flex-wrap: wrap; padding: var(--space-5, 20px) var(--space-6); border-block-end: 1px solid var(--line-soft); }
.tl-comms__ti h2 { margin: 0; }
.tl-comms__ti p { margin: 4px 0 0; font-size: 14px; }
.tl-comms__ti p b { color: var(--ink); font-weight: 500; }
.tl-comms__tools { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; }
.tl-search { inline-size: 240px; block-size: 38px; }
.tl-flt .cm-seg__btn { white-space: nowrap; }
.tl-n { display: inline-grid; place-items: center; min-inline-size: 20px; block-size: 20px; padding-inline: 5px; margin-inline-start: 4px; border-radius: var(--radius-pill); background: var(--neutral-bg); font-size: 12px; font-weight: 500; color: var(--ink-muted); }
.cm-seg__btn.is-active .tl-n { background: var(--blue-50); color: var(--navy-900); }
.tl-row { display: grid; grid-template-columns: 44px minmax(0, 1fr) minmax(300px, 380px) 220px; align-items: center; gap: var(--space-4); padding: 10px var(--space-6); border-block-start: 1px solid var(--line-soft); transition: background .12s; }
.tl-row:hover { background: #fafbfd; }
.tl-row.is-sel { background: var(--blue-50); }
.tl-head { padding-block: 8px; background: var(--neutral-bg); border-block-start: 0; font-size: 12px; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; color: var(--ink-muted); }
.tl-head:hover { background: var(--neutral-bg); }
.tl-com { display: flex; align-items: center; gap: 12px; min-inline-size: 0; }
.tl-com__av { inline-size: 36px; block-size: 36px; flex: none; display: grid; place-items: center; border-radius: 10px; background: color-mix(in srgb, var(--c) 14%, white); color: var(--c); font-size: 13px; font-weight: 700; }
.tl-com__t { display: grid; justify-items: start; min-inline-size: 0; }
.tl-com__t bdi { font-size: 15px; font-weight: 500; color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-inline-size: 100%; }
.tl-com__t small { font-size: 12px; color: var(--ink-muted); }
.tl-com__t em { font-style: normal; color: var(--attention-ink); }
.tl-pwrap { display: block; }
.tl-pick { display: flex; align-items: center; gap: 10px; inline-size: 100%; padding: 6px 10px 6px 8px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); font: inherit; text-align: start; cursor: pointer; }
.tl-pick:hover { border-color: var(--blue-200); }
.tl-pick[aria-expanded="true"] { border-color: var(--blue-500); box-shadow: 0 0 0 3px var(--blue-50); }
.tl-pick.is-own { border-color: var(--blue-200); background: #fbfcff; }
.tl-pick > .bv-icon, .tl-pick > svg { margin-inline-start: auto; color: var(--ink-muted); flex: none; }
.tl-pick__t { display: grid; min-inline-size: 0; }
.tl-pick__t b { font-size: 14px; font-weight: 500; color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tl-pick__t small { font-size: 12px; color: var(--ink-muted); }
.tl-pick.is-own .tl-pick__t small { color: var(--blue-500); }
.tl-sw { flex: none; inline-size: 22px; block-size: 28px; border-radius: 3px; border: 1px solid var(--line); background: linear-gradient(var(--acc) 0 4px, #fff 4px 8px, #d7dbe6 8px 10px, #fff 10px 13px, #d7dbe6 13px 15px, #fff 15px); }
.tl-sw--lh { background: linear-gradient(var(--acc) 0 7px, #fff 7px 10px, #d7dbe6 10px 12px, #fff 12px 15px, #d7dbe6 15px 17px, #fff 17px); }
.tl-pmenu { inset-inline-start: 0; inset-inline-end: auto; inline-size: 100%; min-inline-size: 300px; }
.tl-po { display: flex; align-items: center; gap: 10px; }
.tl-po > span:not(.tl-po__d) { display: grid; flex: 1; min-inline-size: 0; }
.tl-po small { font-size: 12px; color: var(--ink-muted); font-weight: 400; }
.tl-po b { font-weight: 500; }
.tl-po.is-on { background: var(--blue-50); }
.tl-po__d { inline-size: 22px; block-size: 28px; flex: none; display: grid; place-items: center; border-radius: 3px; background: var(--blue-50); color: var(--blue-500); }
.tl-chg { display: flex; align-items: center; gap: 6px; font-size: 13px; color: var(--ink); min-inline-size: 0; }
.tl-chg > svg, .tl-chg > .bv-icon { flex: none; color: var(--ink-muted); }
.tl-chg span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tl-empty { padding: var(--space-6); text-align: center; }
.tl-bulk { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; margin: var(--space-3) var(--space-6); padding: 8px 8px 8px 16px; border-radius: var(--radius-md); background: var(--navy-900); color: #fff; box-shadow: 0 6px 18px rgba(3, 17, 98, .18); }
.tl-bulk__n { display: inline-flex; align-items: center; gap: 6px; font-weight: 500; }
.tl-bulk .tl-tsel { block-size: 36px; min-inline-size: 260px; background: var(--surface); color: var(--ink); border-radius: var(--radius-md); }
.tl-bulk__go { block-size: 36px; }
.tl-bulk__go:disabled { background: rgba(255, 255, 255, .18); color: rgba(255, 255, 255, .7); }
.tl-bulk__x { display: inline-flex; align-items: center; gap: 4px; margin-inline-start: auto; padding: 6px 10px; border: 0; border-radius: var(--radius-md); background: none; color: #fff; font: inherit; font-size: 14px; cursor: pointer; }
.tl-bulk__x:hover { background: rgba(255, 255, 255, .12); }

/* ---------- KPI: upload from Excel ---------- */
.kc-src--excel { background: #e6f4ea; color: #1d6b3a; }
.kx-dlg { position: fixed; inline-size: 820px; }
.nc-scrim:has(+ .kx-dlg) { position: fixed; }
.kx-dlg .nc-body { overflow: auto; display: flex; flex-direction: column; gap: var(--space-4); }
.kx-steps { display: flex; gap: var(--space-5, 20px); margin: 10px 0 0; padding: 0; list-style: none; font-size: 13px; color: var(--ink-muted); }
.kx-step { display: inline-flex; align-items: center; gap: 8px; }
.kx-step span { inline-size: 22px; block-size: 22px; display: grid; place-items: center; border-radius: var(--radius-pill); border: 1.5px solid var(--line); font-size: 12px; font-weight: 600; }
.kx-step.is-cur { color: var(--navy-900); font-weight: 500; }
.kx-step.is-cur span { border-color: var(--blue-500); background: var(--blue-500); color: #fff; }
.kx-step.is-done span { border-color: var(--success-ink); background: var(--success-bg); color: var(--success-ink); }
.kx-lead { margin: 0; font-size: 14px; }
.kx-drop { padding: 30px; }
.kx-tpl { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding: 12px 16px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--neutral-bg); }
.kx-tpl b { display: block; font-weight: 500; font-size: 14px; }
.kx-tpl small { font-size: 13px; color: var(--ink-muted); }
.kx-sheet { overflow-x: auto; border: 1px solid #1f2933; border-radius: 4px; }
.kx-sheet table { inline-size: 100%; border-collapse: collapse; font-family: var(--font-arabic, 'IBM Plex Sans Arabic'), sans-serif; font-size: 13px; }
.kx-sheet th { padding: 10px 8px; background: #234a63; color: #fff; font-weight: 600; text-align: center; border: 1px solid #1f2933; line-height: 1.35; min-inline-size: 70px; }
.kx-sheet td { padding: 7px 8px; border: 1px solid #1f2933; text-align: center; color: var(--ink); block-size: 22px; line-height: 1.4; }
.kx-sheet td[dir="ltr"] { white-space: nowrap; }
.kx-sheet td[dir="ltr"] { font-family: var(--font-sans, Roboto), sans-serif; font-size: 12px; }
.kx-dir { display: inline-block; padding: 1px 8px; border-radius: var(--radius-pill); font-size: 12px; font-weight: 600; }
.kx-dir--in { background: var(--blue-50); color: var(--navy-700); }
.kx-dir--out { background: var(--success-bg); color: var(--success-ink); }
.kx-ok { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border-radius: var(--radius-md); background: var(--success-bg); color: var(--success-ink); }
.kx-ok p { margin: 0; display: grid; gap: 2px; font-size: 14px; }
.kx-ok span { color: var(--ink); font-size: 13px; }
.kx-map { display: grid; border: 1px solid var(--line); border-radius: var(--radius-md); }
.kx-map__r { display: grid; grid-template-columns: 190px 20px minmax(0, 1fr) 190px; align-items: center; gap: 12px; padding: 8px 14px; border-block-start: 1px solid var(--line-soft); }
.kx-map__r:first-child { border-block-start: 0; }
.kx-map__f { display: grid; }
.kx-map__f b { font-size: 14px; font-weight: 500; }
.kx-map__f em { font-style: normal; font-size: 12px; color: var(--attention-ink); }
.kx-map__f small { font-size: 12px; color: var(--ink-muted); }
.kx-arrow { color: var(--ink-faint, #9aa0ad); }
.kx-sel { block-size: 36px; }
.kx-sel select { font-family: var(--font-arabic, 'IBM Plex Sans Arabic'), sans-serif; }
.kx-map__s { justify-self: start; }
.kx-outs { display: grid; gap: 8px; }
.kx-out { display: grid; grid-template-columns: 20px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 12px 16px; border: 1px solid var(--line); border-radius: var(--radius-md); cursor: pointer; }
.kx-out input { inline-size: 18px; block-size: 18px; accent-color: var(--blue-500); }
.kx-out.is-on { border-color: var(--blue-500); background: #fbfcff; box-shadow: inset 0 0 0 1px var(--blue-500); }
.kx-out__b { display: grid; gap: 2px; }
.kx-out__h { display: flex; align-items: center; gap: 8px; }
.kx-out__h b { font-weight: 500; font-size: 15px; }
.kx-out__b small { font-size: 13px; color: var(--ink-muted); }
.kx-tag { font-style: normal; padding: 1px 8px; border-radius: 6px; font-size: 11px; font-weight: 600; letter-spacing: .03em; }
.kx-tag--kpi { background: var(--blue-50); color: var(--navy-700); }
.kx-tag--metric { background: var(--neutral-bg); color: var(--ink-muted); }
.kx-out__v { display: grid; justify-items: end; }
.kx-out__v b { font-size: 20px; font-weight: 700; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.kx-out__v small { font-size: 12px; color: var(--ink-muted); }
.kx-upd { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border-radius: var(--radius-md); background: var(--blue-50); color: var(--navy-700); }
.kx-upd p { margin: 0; font-size: 13px; color: var(--ink); }
.kx-upd p > b:first-child { display: block; color: var(--navy-900); font-size: 14px; margin-block-end: 2px; }
.km .kc-src { margin-block-end: 6px; align-self: flex-start; }

/* ---------- My Account: tabs by visibility, personal KPIs ---------- */
.ma-asbtn { align-self: flex-start; }
.ma-asbanner { display: flex; align-items: center; gap: 10px; margin-block-start: var(--space-4); padding: 12px 16px; border-radius: var(--radius-md); background: var(--navy-900); color: #fff; font-size: 14px; }
.ma-tabs { display: flex; gap: 4px; margin-block: var(--space-5, 20px) var(--space-4); border-block-end: 1px solid var(--line); overflow-x: auto; }
.ma-tab { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-block-end: 2px solid transparent; margin-block-end: -1px; background: none; font: inherit; font-size: 15px; color: var(--ink-muted); cursor: pointer; white-space: nowrap; }
.ma-tab:hover { color: var(--ink); }
.ma-tab.is-on { color: var(--navy-900); font-weight: 500; border-block-end-color: var(--blue-500); }
.ma-tab__lock, .ma-tab__sec { display: inline-grid; place-items: center; inline-size: 20px; block-size: 20px; border-radius: var(--radius-pill); }
.ma-tab__lock { background: var(--neutral-bg); color: var(--ink); }
.ma-tab__sec { background: var(--blue-50); color: var(--blue-500); }
.ma-vis { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-block-end: var(--space-4); padding: 10px 14px; border-radius: var(--radius-md); background: var(--neutral-bg); font-size: 13px; }
.ma-vis__l { display: inline-flex; align-items: center; gap: 6px; color: var(--ink-muted); margin-inline-end: 4px; }
.ma-who { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border-radius: var(--radius-pill); background: var(--surface); border: 1px solid var(--line); color: var(--ink); font-weight: 500; }
.ma-who.is-me { background: var(--navy-900); border-color: var(--navy-900); color: #fff; }
.ma-vis__no { display: inline-flex; align-items: center; gap: 5px; margin-inline-start: auto; color: var(--danger-ink); font-weight: 500; }
.ma-vis--me { background: #f4f5f8; border: 1px dashed var(--line); }
.ma-lead { margin: 0 0 var(--space-4); font-size: 14px; }
.ma-narrow { max-inline-size: 760px; display: grid; gap: var(--space-4); }
.ma-profile { display: grid; gap: var(--space-4); max-inline-size: 1100px; }
.ma-vt { display: inline-flex; align-items: center; gap: 4px; margin-inline-start: 8px; padding: 1px 8px; border-radius: var(--radius-pill); background: var(--neutral-bg); color: var(--ink-muted); font-size: 11px; font-weight: 500; vertical-align: 1px; }
.ma-vt--sec { background: var(--blue-50); color: var(--navy-700); }
.ma-acth { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); margin-block-end: var(--space-4); }
.ma-acth p { margin: 0; font-size: 14px; }
.ma-kgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); }
.ma-k { display: flex; flex-direction: column; gap: 8px; padding: var(--space-4) var(--space-5, 20px); border-inline-start: 4px solid var(--line); }
.ma-k--ok { border-inline-start-color: var(--success-500, #1f7a55); }
.ma-k--warn { border-inline-start-color: var(--warning-ink); }
.ma-k--danger { border-inline-start-color: var(--danger-ink); }
.ma-k__h { display: flex; align-items: center; gap: 8px; }
.ma-k__h b { flex: 1; font-size: 14px; font-weight: 500; color: var(--ink); }
.ma-k__i { inline-size: 28px; block-size: 28px; flex: none; display: grid; place-items: center; border-radius: 8px; background: var(--blue-50); color: var(--navy-900); }
.ma-k__v { display: flex; align-items: baseline; gap: 4px; }
.ma-k__v b { font-size: 34px; line-height: 38px; font-weight: 700; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.ma-k__v span { font-size: 15px; color: var(--ink-muted); }
.ma-k__d { margin: 0; font-size: 13px; color: var(--ink-muted); }
.ma-k__cmp { display: flex; justify-content: space-between; font-size: 12px; color: var(--ink-muted); }
.ma-k__cmp b { color: var(--ink); font-weight: 500; }
.ma-k__bar { position: relative; block-size: 6px; border-radius: var(--radius-pill); background: var(--neutral-bg); }
.ma-k__bar i { position: absolute; inset-block: 0; inset-inline-start: 0; border-radius: inherit; background: var(--navy-900); }
.ma-k--warn .ma-k__bar i { background: var(--warning-ink); }
.ma-k--danger .ma-k__bar i { background: var(--danger-ink); }
.ma-k__bar s { position: absolute; inset-block: -3px; inline-size: 2px; background: var(--ink); border-radius: 1px; }
.ma-k__sp { display: flex; align-items: flex-end; gap: 4px; block-size: 28px; }
.ma-k__sp i { flex: 1; border-radius: 3px 3px 0 0; background: var(--blue-200); }
.ma-k__sp i.is-now { background: var(--blue-500); }
.ma-two { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: var(--space-4); margin-block-start: var(--space-4); align-items: start; }
.ma-tr { display: grid; grid-template-columns: minmax(0, 1fr) repeat(3, 120px); align-items: center; gap: var(--space-3); padding: 12px var(--space-6); border-block-start: 1px solid var(--line-soft); font-size: 14px; }
.ma-tr--h { border-block-start: 0; font-size: 12px; color: var(--ink-muted); background: var(--neutral-bg); padding-block: 8px; }
.ma-c { justify-self: start; padding: 2px 10px; border-radius: var(--radius-pill); font-weight: 500; font-size: 13px; }
.ma-c--ok { background: var(--success-bg); color: var(--success-ink); }
.ma-c--warn { background: var(--warning-bg); color: var(--attention-ink); }
.ma-c--danger { background: var(--danger-bg); color: var(--danger-ink); }
.ma-why { display: flex; gap: 12px; padding: var(--space-5, 20px); }
.ma-why b { font-weight: 500; }
.ma-why p { margin: 4px 0 0; font-size: 14px; color: var(--ink-muted); line-height: 1.5; }
.ma-fit { display: grid; grid-template-columns: minmax(0, 1fr) auto 36px; align-items: center; gap: var(--space-3); padding: 12px var(--space-6); border-block-start: 1px solid var(--line-soft); }
.ma-fit span:first-child { display: grid; }
.ma-fit b { font-weight: 500; font-size: 14px; }
.ma-fit small { font-size: 12px; color: var(--ink-muted); }
.ma-fit em { font-style: normal; font-size: 13px; color: var(--ink-muted); text-align: end; }
.ma-tags { padding: var(--space-4) var(--space-6); }
.ma-fitf { padding: 0 var(--space-6) var(--space-4); }
.ma-pane.is-as input, .ma-pane.is-as .ma-avbadge { pointer-events: none; }
.ma-pane.is-as .nc-input:not(.ma-ro) { background: var(--neutral-bg); }
.ma-pane.is-as [data-ma-personaedit] { display: none; }
@media (max-width: 1200px) { .ma-kgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .ma-two { grid-template-columns: 1fr; } }
.ma-fit .pp-bar { inline-size: 140px; }

/* ---------- My Account: one page with My activity ---------- */
.ma-stack { display: grid; gap: var(--space-5, 20px); margin-block-start: var(--space-6); }
.ma-layout--b { margin-block-start: 0; }
.ma-vchip { display: inline-flex; align-items: center; gap: 5px; padding: 2px 10px; border-radius: var(--radius-pill); background: var(--blue-50); color: var(--navy-700); font-size: 12px; font-weight: 500; white-space: nowrap; }
.ma-vchip--me { background: var(--neutral-bg); color: var(--ink); }
.ma-h .ma-vchip { margin-inline-start: auto; }
.ma-h:has(.ma-vchip) { align-items: center; gap: var(--space-3); }
.ma-persona .ma-vchip { flex: none; }
.ma-act { padding: var(--space-5, 20px) var(--space-6) var(--space-6); display: grid; gap: var(--space-4); }
.ma-act__h { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "t s" "p s"; gap: 4px var(--space-4); align-items: center; }
.ma-act__t { grid-area: t; display: flex; align-items: center; gap: var(--space-3); }
.ma-act__t h2 { margin: 0; font-size: 20px; font-weight: 700; color: var(--navy-900); }
.ma-act__h > p { grid-area: p; margin: 0; font-size: 14px; }
.ma-act__s { grid-area: s; display: flex; align-items: center; gap: var(--space-4); }
.ma-act__sum { font-size: 14px; color: var(--ink-muted); white-space: nowrap; }
.ma-act__sum b { font-size: 22px; color: var(--navy-900); }
.ma-act .ma-k { box-shadow: none; }
.ma-act__f { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: var(--space-4); align-items: stretch; }
.ma-act__tbl { border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden; }
.ma-act__tbl .ma-tr:first-child { border-block-start: 0; }
.ma-act .ma-why { border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--neutral-bg); }
.pp-act__r { display: grid; grid-template-columns: minmax(0, 1fr) 56px minmax(160px, 280px); align-items: center; gap: var(--space-3); padding: 10px var(--space-6); border-block-start: 1px solid var(--line-soft); }
.pp-act__t { display: grid; min-inline-size: 0; }
.pp-act__t b { font-size: 14px; font-weight: 500; color: var(--ink); }
.pp-act__t small { font-size: 12px; color: var(--ink-muted); }
.pp-act__v { font-weight: 700; font-size: 15px; text-align: end; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.pp-act__v--warn { color: var(--attention-ink); }
.pp-act__v--danger { color: var(--danger-ink); }
.pp-act__bar { border-inline-start: 0 !important; padding: 0 !important; }
.pp-private { display: flex; gap: 12px; align-items: flex-start; padding: var(--space-4) var(--space-6); background: #f6f7fa; border-style: dashed; }
.pp-private b { font-weight: 500; }
.pp-private p { margin: 4px 0 0; font-size: 13px; color: var(--ink-muted); line-height: 1.5; }
.pp-share { display: flex; align-items: center; gap: 8px; margin-block-end: var(--space-3); padding: 10px 14px; border-radius: var(--radius-md); background: var(--blue-50); color: var(--navy-700); font-size: 14px; }
.pp-act__bar.ma-k--ok i { background: var(--navy-900); }
.pp-act__bar.ma-k--warn i { background: var(--warning-ink); }
.pp-act__bar.ma-k--danger i { background: var(--danger-ink); }

/* ---------- My activity: ring cards ---------- */
.ma-act .ma-kgrid { gap: var(--space-4); }
.ma-k2 { --kc: var(--navy-900); --kb: var(--blue-50); display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: var(--space-4); align-items: center; padding: var(--space-4) var(--space-5, 20px); border: 1px solid var(--line); border-radius: 12px; background: var(--surface); transition: border-color .15s, box-shadow .15s; }
.ma-k2:hover { border-color: var(--blue-200); box-shadow: 0 4px 14px rgba(3, 17, 98, .06); }
.ma-k2--ok { --kc: #1f7a55; --kb: var(--success-bg); }
.ma-k2--warn { --kc: #b7791f; --kb: var(--warning-bg); }
.ma-k2--danger { --kc: var(--danger-ink); --kb: var(--danger-bg); }
.ma-k2__ring { position: relative; inline-size: 92px; block-size: 92px; }
.ma-ring { inline-size: 100%; block-size: 100%; }
.ma-ring__bg { fill: none; stroke: var(--kb); stroke-width: 8; }
.ma-ring__fg { fill: none; stroke: var(--kc); stroke-width: 8; stroke-linecap: round; }
.ma-ring__tg { fill: var(--surface); stroke: var(--ink); stroke-width: 2; }
[dir="rtl"] .ma-ring { transform: scaleX(-1); }
.ma-ring__v { position: absolute; inset: 0; display: flex; align-items: baseline; justify-content: center; padding-block-start: 30px; }
.ma-ring__v b { font-size: 24px; line-height: 1; font-weight: 700; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.ma-ring__v small { font-size: 12px; color: var(--ink-muted); margin-inline-start: 1px; }
.ma-k2__b { display: grid; gap: 6px; min-inline-size: 0; }
.ma-k2__h { display: flex; align-items: center; gap: 8px; }
.ma-k2__h b { font-size: 15px; font-weight: 500; color: var(--ink); line-height: 1.3; }
.ma-k2__i { inline-size: 24px; block-size: 24px; flex: none; display: grid; place-items: center; border-radius: 7px; background: var(--blue-50); color: var(--navy-900); }
.ma-k2__d { margin: 0; font-size: 13px; color: var(--ink-muted); }
.ma-k2__f { display: flex; align-items: center; gap: 10px; }
.ma-k2__st { display: inline-flex; align-items: center; gap: 6px; padding: 2px 9px; border-radius: var(--radius-pill); background: var(--kb); color: var(--kc); font-size: 12px; font-weight: 600; }
.ma-k2__st i { inline-size: 6px; block-size: 6px; border-radius: 50%; background: currentColor; }
.ma-k2__st--warn { color: var(--attention-ink); }
.ma-k2__ch { font-size: 12px; font-weight: 600; white-space: nowrap; }
.ma-k2__ch--up { color: var(--success-ink); }
.ma-k2__ch--down { color: var(--danger-ink); }
.ma-k2__ch--eq { color: var(--ink-muted); }
.ma-spark { inline-size: 80px; block-size: 24px; margin-inline-start: auto; overflow: visible; }
.ma-spark polyline { fill: none; stroke: var(--kc); stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; opacity: .85; }
.ma-spark circle { fill: var(--kc); }
[dir="rtl"] .ma-spark { transform: scaleX(-1); }
.ma-k2__cmp { display: flex; gap: var(--space-4); padding-block-start: 6px; border-block-start: 1px dashed var(--line); font-size: 12px; color: var(--ink-muted); }
.ma-k2__cmp span { display: inline-flex; align-items: center; gap: 6px; }
.ma-k2__dot { inline-size: 8px; block-size: 8px; border-radius: 50%; }
.ma-k2__dot--t { background: var(--surface); border: 2px solid var(--ink); }
.ma-k2__dot--a { background: var(--blue-200); }
.ma-ring__v.is-3 b { font-size: 20px; }
.ma-ring__v.is-3 { padding-block-start: 32px; }

/* ---------- Draft review (meeting draft sent to chosen participants) ---------- */
.dr-strip { display: flex; align-items: center; gap: var(--space-4); margin-block-start: var(--space-4); padding: 14px var(--space-5, 20px); border: 1px solid var(--blue-200); border-radius: var(--radius-md); background: var(--blue-50); }
.dr-strip__i { display: grid; place-items: center; inline-size: 40px; block-size: 40px; border-radius: var(--radius-pill); background: var(--surface); color: var(--blue-500); flex: none; }
.dr-strip__b { flex: 1; min-inline-size: 0; display: grid; gap: 2px; }
.dr-strip__b b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.dr-strip__b small { font-size: 13px; color: var(--ink-muted); }
.dr-strip__a { display: flex; gap: 8px; flex: none; }
.dr-ppl { display: flex; flex: none; }
.dr-pp { position: relative; margin-inline-start: -6px; }
.dr-pp:first-child { margin-inline-start: 0; }
.dr-pp .bv-avatar { inline-size: 34px; block-size: 34px; font-size: 11px; border: 2px solid var(--blue-50); }
.dr-pp i { position: absolute; inset-block-end: -3px; inset-inline-end: -3px; display: grid; place-items: center; inline-size: 16px; block-size: 16px; border-radius: var(--radius-pill); border: 2px solid var(--blue-50); color: #fff; font-style: normal; }
.dr-pp--approved i { background: var(--success-500); }
.dr-pp--commented i { background: var(--blue-500); }
.dr-pp--pending i { background: var(--ink-faint); }
.dr-editing { display: flex; align-items: center; gap: 10px; margin-block-start: var(--space-4); padding: 10px 14px; border-radius: var(--radius-md); background: var(--violet-bg); border: 1px solid var(--violet-line); color: var(--violet-ink); font-size: 14px; }
.dr-editing b { font-weight: 500; }

.dr-dlg .nc-body { display: grid; gap: var(--space-5, 20px); align-content: start; }
.dr-perms { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.dr-perms > div { display: flex; gap: 10px; padding: 12px; border-radius: var(--radius-md); background: var(--surface-raised); }
.dr-perms span { display: grid; place-items: center; inline-size: 30px; block-size: 30px; border-radius: var(--radius-pill); background: var(--surface); color: var(--blue-500); flex: none; }
.dr-perms p { margin: 0; font-size: 13px; line-height: 18px; color: var(--ink-muted); }
.dr-perms b { display: block; font-size: 14px; font-weight: 500; color: var(--navy-900); margin-block-end: 2px; }
.dr-list { display: grid; border: 1px solid var(--line); border-radius: var(--radius-md); overflow: hidden; margin-block-start: 6px; }
.dr-pick { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; padding: 10px 12px; border-block-start: 1px solid var(--line-soft); }
.dr-pick:first-child { border-block-start: 0; }
.dr-pick.is-on { background: var(--blue-50); }
.dr-pick .kp-chk { flex: 1; min-inline-size: 200px; gap: 10px; }
.dr-pick .bv-avatar { inline-size: 32px; block-size: 32px; font-size: 11px; }
.dr-pick .kp-chk span { display: grid; }
.dr-pick .kp-chk b { font-weight: 500; font-size: 15px; color: var(--navy-900); }
.dr-pick .kp-chk small { font-size: 12px; color: var(--ink-muted); }
.dr-perm .cm-seg__btn { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; }
.dr-see { display: flex; align-items: center; gap: 6px; margin: 6px 0 0; font-size: 14px; color: var(--ink-muted); }

/* review inside the board pack preview */
.ab-prev--rv { inline-size: min(1060px, 100%); }
.dr-body { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: var(--space-5, 20px); align-items: start; }
.ab-toc li { flex-wrap: wrap; }
.dr-th { flex-basis: 100%; display: grid; gap: 8px; margin-inline-start: 34px; padding: 10px 12px; border-radius: var(--radius-md); background: var(--surface-raised); }
.dr-c { display: flex; gap: 10px; }
.dr-c .bv-avatar { inline-size: 28px; block-size: 28px; font-size: 10px; }
.dr-c__b { flex: 1; min-inline-size: 0; }
.dr-c__h { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 8px; }
.dr-c__h b { font-size: 14px; font-weight: 500; color: var(--navy-900); }
.dr-c__h small { font-size: 12px; color: var(--ink-faint); }
.dr-c__b p { margin: 2px 0 0; font-size: 14px; line-height: 20px; color: var(--ink); }
.dr-c.is-done { opacity: .62; }
.dr-c.is-done p { text-decoration: line-through; }
.dr-tag { display: inline-flex; align-items: center; gap: 3px; padding: 1px 7px; border-radius: var(--radius-pill); font-size: 11px; font-style: normal; background: var(--neutral-bg); color: var(--ink-muted); }
.dr-tag--paper { background: var(--warning-bg); color: var(--attention-ink); }
.dr-res { display: inline-flex; align-items: center; gap: 3px; margin-inline-start: auto; font-size: 12px; color: var(--success-ink); }
.dr-resbtn { margin-inline-start: auto; font-size: 13px; }
.dr-addbtn { justify-self: start; font-size: 13px; }
.dr-add { display: grid; gap: 8px; }
.dr-add .cm-seg { justify-self: start; }
.dr-add__a { display: flex; justify-content: flex-end; align-items: center; gap: 10px; }

.dr-panel { position: sticky; inset-block-start: 0; display: grid; gap: 14px; padding: var(--space-5, 20px); border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); }
.dr-panel .cm-eyebrow { margin: 0; }
.dr-panel__sum { display: flex; align-items: center; gap: 14px; }
.dr-panel__sum > div:last-child { display: grid; gap: 2px; }
.dr-panel__sum b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.dr-panel__sum small { font-size: 13px; color: var(--ink-muted); }
.dr-ring { --p: 0; display: grid; place-items: center; inline-size: 60px; block-size: 60px; border-radius: 50%; flex: none; background: radial-gradient(closest-side, var(--surface) 76%, transparent 78%), conic-gradient(var(--success-500) calc(var(--p) * 1%), var(--line-soft) 0); }
.dr-ring b { font-size: 15px; }
.dr-msg { margin: 0; padding: 10px 12px; border-inline-start: 3px solid var(--blue-400); background: var(--blue-50); border-radius: 0 var(--radius-md) var(--radius-md) 0; font-size: 14px; color: var(--ink); }
.dr-msg small { display: block; margin-block-start: 4px; font-size: 12px; color: var(--ink-muted); }
.dr-ppl2 { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.dr-p { display: flex; align-items: center; gap: 10px; }
.dr-p .bv-avatar { inline-size: 32px; block-size: 32px; font-size: 11px; }
.dr-p__t { flex: 1; min-inline-size: 0; display: grid; }
.dr-p__t b { font-size: 14px; font-weight: 500; color: var(--navy-900); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dr-p__t small { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; color: var(--ink-muted); }
.dr-p .ap-pill { flex: none; font-size: 12px; }
.dr-edit { display: flex; gap: 8px; padding: 10px; border-radius: var(--radius-md); background: var(--violet-bg); color: var(--violet-ink); font-size: 13px; line-height: 18px; }
.dr-edit .bv-icon { flex: none; margin-block-start: 2px; }
.dr-edit b { font-weight: 500; }
.dr-edit small { display: block; color: var(--ink-muted); }
.dr-panel__a { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-block-start: 12px; border-block-start: 1px solid var(--line-soft); }
.dr-you { padding: 12px; border-radius: var(--radius-md); background: var(--surface-raised); font-size: 13px; line-height: 18px; color: var(--ink-muted); }
.dr-you p { margin: 0; display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.dr-you b { color: var(--success-ink); font-weight: 500; }
.dr-you .bv-icon { color: var(--success-ink); }
.dr-you .bv-linkbtn { margin-block-start: 6px; font-size: 13px; }
@media (max-width: 900px) { .dr-body { grid-template-columns: minmax(0, 1fr); } .dr-panel { position: static; order: -1; } .dr-strip { flex-wrap: wrap; } .dr-perms { grid-template-columns: 1fr; } }

/* ---------- Note for the presenter on a paper request ---------- */
.ab-ask__note textarea { min-block-size: 64px; }
.ab-req__note { display: flex; gap: 8px; margin: 0 0 10px; padding: 8px 10px; border-radius: var(--radius-sm, 6px); background: var(--surface); color: var(--ink); font-size: 14px; line-height: 20px; }
.ab-req__note .bv-icon { flex: none; margin-block-start: 3px; color: var(--attention-ink); }
.ab-req__note small { display: block; font-size: 12px; color: var(--ink-muted); }
.ab-rem { display: grid; gap: 8px; margin-block-end: 4px; padding: 10px; border-radius: var(--radius-md); background: var(--surface); border: 1px solid var(--warning-line); }
.ab-rem .nc-field { display: grid; gap: 4px; }
.ab-rem__a { display: flex; justify-content: flex-end; align-items: center; gap: 10px; }
.ab-paper__note { display: flex; gap: 10px; padding: 12px 14px; border-radius: var(--radius-md); background: var(--warning-bg); border: 1px solid var(--warning-line); color: var(--ink); font-size: 15px; line-height: 22px; text-align: start; }
.ab-paper__note .bv-icon { flex: none; margin-block-start: 3px; color: var(--attention-ink); }
.ab-paper__note b { display: block; font-size: 13px; font-weight: 500; color: var(--attention-ink); }
.dr-body { grid-template-columns: minmax(0, 1fr) 320px; }
.dr-p { display: grid; grid-template-columns: 32px minmax(0, 1fr); column-gap: 10px; row-gap: 4px; align-items: center; }
.dr-p .ap-pill { grid-column: 2; justify-self: start; }
.dr-p__t small { white-space: nowrap; }
.dr-panel__sum > div:last-child { min-inline-size: 0; }
.dr-panel__a { flex-wrap: wrap; }
.ab-req__a[hidden] { display: none; }
.ab-req > div { flex: 1; min-inline-size: 0; }

/* ==========================================================================
   Apple-style motion, materials & type layer
   Springs (damping 1 = no overshoot, response in s) live in Bviser.motion.
   ========================================================================== */
:root {
  --spring-ui: cubic-bezier(.2, .9, .25, 1);
  --press-scale: .97;
  --material-thin: color-mix(in srgb, var(--surface) 78%, transparent);
  --material-regular: color-mix(in srgb, var(--surface) 93%, transparent);
  --material-blur: blur(20px) saturate(180%);
  --scrim: rgba(23, 26, 38, .42);
}

/* 1. Response: feedback on press, instantly */
.bv-btn-primary, .bv-btn-secondary, .bv-ghost-icon, .cm-seg__btn, .ap-menu [role="menuitem"], .bv-createmenu [role="menuitem"], .ap-sm {
  transition: transform .1s ease-out, background-color .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease, opacity .15s ease;
  -webkit-tap-highlight-color: transparent; touch-action: manipulation;
}
.bv-btn-primary:active, .bv-btn-secondary:active, .bv-ghost-icon:active, .ap-sm:active { transform: scale(var(--press-scale)); }
.cm-seg__btn:active { transform: scale(.98); }
.bv-linkbtn { transition: opacity .1s ease-out; -webkit-tap-highlight-color: transparent; }
.bv-linkbtn:active { opacity: .55; }
.ap-menu [role="menuitem"]:active, .bv-createmenu [role="menuitem"]:active { background: var(--blue-50); }

/* 12. Materials: dim to focus; lighter, translucent surfaces for floating controls */
.nc-scrim { background: var(--scrim); -webkit-backdrop-filter: blur(3px) saturate(120%); backdrop-filter: blur(3px) saturate(120%); }
.nc-drawer { box-shadow: 0 24px 64px rgba(8, 16, 60, .22), 0 2px 8px rgba(8, 16, 60, .08); touch-action: pan-y; will-change: transform; }
.nc-drawer.bv-dragging { user-select: none; cursor: grabbing; }
.nc-drawer:not(.mv-modal) > .nc-head { cursor: grab; }
.nc-drawer > .nc-head button, .nc-drawer > .nc-head a { cursor: pointer; }
.ap-menu, .bv-createmenu { background: var(--material-regular); -webkit-backdrop-filter: var(--material-blur); backdrop-filter: var(--material-blur); border-color: color-mix(in srgb, var(--line) 70%, transparent); box-shadow: 0 16px 40px rgba(8, 16, 60, .16), 0 1px 3px rgba(8, 16, 60, .08); }
.nc-foot { background: var(--material-regular); -webkit-backdrop-filter: var(--material-blur); backdrop-filter: var(--material-blur); }
.bv-toast { background: color-mix(in srgb, var(--navy-900) 90%, transparent); -webkit-backdrop-filter: var(--material-blur); backdrop-filter: var(--material-blur); border: 1px solid rgba(255, 255, 255, .12); font-weight: 500; letter-spacing: .005em; }
/* Scroll edge effect instead of a hard divider: the header line only appears once content scrolls under it */
.nc-drawer > .nc-head { position: relative; z-index: 3; border-block-end-color: transparent; transition: border-color .2s ease; }
.nc-drawer > .nc-head::after { content: ""; position: absolute; inset-inline: 0; inset-block-start: 100%; block-size: 14px; pointer-events: none; background: linear-gradient(var(--surface), transparent); opacity: 0; transition: opacity .2s ease; }
.nc-drawer.bv-scrolled > .nc-head { border-block-end-color: var(--line-soft); }
.nc-drawer.bv-scrolled > .nc-head::after { opacity: 1; }
.bv-ghost { pointer-events: none !important; }

/* 15. Type: tracking by size, tighter leading on large text; emphasis with weight */
.bv-app { font-optical-sizing: auto; text-rendering: optimizeLegibility; }
.bv-app h1 { letter-spacing: -0.02em; }
.bv-app h2, .bv-app h3 { letter-spacing: -0.01em; }
.bv-app .nc-head h2 { letter-spacing: -0.012em; line-height: 1.25; }
.bv-app small, .bv-app .ap-pill, .bv-app .tp-hint { letter-spacing: .01em; }
.bv-app :is(h1, h2, h3, small, .ap-pill, .tp-hint, .bv-toast):lang(ar), .bv-app[lang="ar"] :is(h1, h2, h3, small, .ap-pill, .tp-hint), .bv-app[lang="ar"] .bv-toast { letter-spacing: 0; }

/* 14. Accessibility: reduced motion, reduced transparency, more contrast */
@media (prefers-reduced-motion: reduce) {
  .bv-btn-primary:active, .bv-btn-secondary:active, .bv-ghost-icon:active, .ap-sm:active, .cm-seg__btn:active { transform: none; }
  .nc-drawer { will-change: auto; }
}
@media (prefers-reduced-transparency: reduce) {
  .nc-scrim { -webkit-backdrop-filter: none; backdrop-filter: none; background: rgba(23, 26, 38, .6); }
  .ap-menu, .bv-createmenu, .nc-foot { background: var(--surface); -webkit-backdrop-filter: none; backdrop-filter: none; }
  .bv-toast { background: var(--navy-900); -webkit-backdrop-filter: none; backdrop-filter: none; }
}
@media (prefers-contrast: more) {
  .nc-scrim { background: rgba(10, 12, 20, .72); -webkit-backdrop-filter: none; backdrop-filter: none; }
  .nc-drawer, .ap-menu, .bv-createmenu { border: 1px solid var(--ink); }
  .ap-menu, .bv-createmenu, .nc-foot { background: var(--surface); -webkit-backdrop-filter: none; backdrop-filter: none; }
  .nc-drawer > .nc-head { border-block-end-color: var(--ink); }
}
.bv-createmenu { transform-origin: top left; }
[dir="rtl"] .bv-createmenu { transform-origin: top right; }
.bv-createwrap.is-open .bv-createmenu { transition: opacity .16s ease-out, transform .28s var(--spring-ui); }
@starting-style { .bv-createwrap.is-open .bv-createmenu { opacity: 0; transform: scale(.94); } }
@media (prefers-reduced-motion: reduce) { .bv-createwrap.is-open .bv-createmenu { transition: opacity .15s ease; } @starting-style { .bv-createwrap.is-open .bv-createmenu { transform: none; } } }
/* Live demo: member-side invites */
.mt-preq__note { display: flex; gap: 6px; align-items: flex-start; margin-block-start: 4px; color: var(--ink) !important; }
.mt-preq__note .bv-icon { flex: none; margin-block-start: 2px; color: var(--attention-ink); }
.mt-preq__note b { font-weight: 500; }
.dr-inv { background: var(--blue-50); border-color: var(--blue-200); }
.dr-inv > .bv-icon { color: var(--blue-500); }
.dr-inv .mt-preq__note .bv-icon { color: var(--blue-500); }
.dr-inv.is-ok { background: var(--success-bg); border-color: var(--success-line); }
.dr-inv.is-ok > .bv-icon { color: var(--success-ink); }
.mt-preq__note b { display: inline !important; margin-inline-end: 4px; }

/* ==================== System feedback ==================== */
.ap-pill--violet { background: var(--violet-bg); color: var(--violet-ink); }
.fb-sentpill { margin: 0; align-self: center; }
.fb-banner { display: flex; align-items: center; gap: 14px; padding: 14px 18px; border-radius: var(--radius-md); background: var(--blue-50); border: 1px solid var(--blue-200); }
.fb-banner__i { display: grid; place-items: center; inline-size: 40px; block-size: 40px; border-radius: 50%; background: var(--surface); color: var(--blue-500); flex: none; }
.fb-banner > div { flex: 1; min-inline-size: 0; display: grid; gap: 2px; }
.fb-banner b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.fb-banner small { font-size: 13px; color: var(--ink-muted); }
.fb-dlg .ma-dlg__b { gap: 18px; }
.fb-lead { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: var(--ink-muted); font-size: 15px; }
.fb-lead .ap-pill { margin: 0; }
.fb-q { margin: 0; padding: 0; border: 0; min-inline-size: 0; display: grid; gap: 8px; }
.fb-q legend { padding: 0; margin-block-end: 8px; font-size: 15px; font-weight: 500; color: var(--navy-900); }
.fb-q legend b { color: var(--danger-ink); }
.fb-rate { display: flex; align-items: center; gap: 4px; }
.fb-rate__b { display: grid; place-items: center; inline-size: 44px; block-size: 44px; border: 0; border-radius: 10px; background: transparent; color: var(--line); cursor: pointer; transition: transform .1s ease-out, color .15s; }
.fb-rate__b:hover { color: #f2b84b; }
.fb-rate__b.is-on { color: #f0a020; }
.fb-rate__b.is-on svg { fill: currentColor; }
.fb-rate__b:active { transform: scale(.9); }
.fb-rate__l { margin-inline-start: 10px; font-size: 14px; color: var(--ink-muted); }
.fb-nps { display: grid; grid-template-columns: repeat(11, minmax(0, 1fr)); gap: 4px; }
.fb-nps__b { block-size: 38px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); font: inherit; font-size: 14px; color: var(--ink); cursor: pointer; transition: transform .1s ease-out; }
.fb-nps__b:hover { border-color: var(--blue-400); }
.fb-nps__b.is-on { background: var(--blue-500); border-color: var(--blue-500); color: #fff; }
.fb-nps__b:active { transform: scale(.95); }
.fb-nps__l { display: flex; justify-content: space-between; font-size: 12px; color: var(--ink-muted); }
.fb-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.fb-chip { display: inline-flex; align-items: center; gap: 5px; padding: 6px 12px; border: 1px solid var(--line); border-radius: 99px; background: var(--surface); font: inherit; font-size: 14px; color: var(--ink); cursor: pointer; }
.fb-chip.is-on { background: var(--blue-50); border-color: var(--blue-400); color: var(--navy-900); font-weight: 500; }
.fb-chip--sm { padding: 2px 8px; font-size: 12px; cursor: default; background: var(--neutral-bg); border-color: transparent; color: var(--ink-muted); }
.fb-shot { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.fb-shot small { font-size: 12px; color: var(--ink-muted); }
.fb-file { display: inline-flex; align-items: center; gap: 6px; padding: 4px 6px 4px 10px; border-radius: 8px; background: var(--neutral-bg); font-size: 13px; }
.fb-anon { font-size: 14px; }
.fb-privacy { display: flex; gap: 6px; align-items: flex-start; margin: 0; padding: 10px 12px; border-radius: 8px; background: var(--surface-raised); font-size: 13px; color: var(--ink-muted); }
.fb-privacy .bv-icon { flex: none; margin-block-start: 2px; }
.fb-thanks { display: grid; justify-items: center; text-align: center; gap: 6px; padding: 18px 8px; }
.fb-thanks > span { display: grid; place-items: center; inline-size: 64px; block-size: 64px; border-radius: 50%; background: var(--success-bg); color: var(--success-ink); }
.fb-thanks h3 { margin: 6px 0 0; font-size: 20px; color: var(--navy-900); }
.fb-thanks p { margin: 0; max-inline-size: 420px; color: var(--ink-muted); }
.fb-stars { display: inline-flex; gap: 1px; vertical-align: middle; }
.fb-st { color: var(--line); display: inline-flex; }
.fb-st.is-on { color: #f0a020; }
.fb-st.is-on svg { fill: currentColor; }

/* Configuration › System feedback */
.fb-seg { margin-block-end: var(--space-5, 20px); }
.fb-seg .cm-seg__btn { display: inline-flex; align-items: center; gap: 6px; }
.fb-rounds { display: flex; flex-wrap: wrap; gap: 8px; margin-block-end: var(--space-5, 20px); }
.fb-round { display: grid; text-align: start; gap: 2px; padding: 8px 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); font: inherit; cursor: pointer; }
.fb-round b { font-size: 14px; font-weight: 500; color: var(--navy-900); }
.fb-round small { font-size: 12px; color: var(--ink-muted); }
.fb-round.is-on { border-color: var(--blue-500); background: var(--blue-50); box-shadow: inset 0 0 0 1px var(--blue-500); }
.fb-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); margin-block-end: var(--space-5, 20px); }
.fb-tile { display: grid; align-content: start; gap: 6px; padding: 18px 20px; }
.fb-tile__k { font-size: 13px; color: var(--ink-muted); }
.fb-tile__v { font-size: 30px; line-height: 1.1; font-weight: 700; color: var(--navy-900); letter-spacing: -0.02em; }
.fb-tile__v small { font-size: 15px; font-weight: 400; color: var(--ink-muted); letter-spacing: 0; }
.fb-tile__v--sm { font-size: 20px; }
.fb-tile > small { font-size: 13px; color: var(--ink-muted); }
.fb-bar { display: block; block-size: 6px; border-radius: 99px; background: var(--line-soft); overflow: hidden; }
.fb-bar i { display: block; block-size: 100%; background: var(--success-500); border-radius: inherit; }
.fb-delta { font-size: 12px; font-weight: 500; }
.fb-delta--up { color: var(--success-ink); }
.fb-delta--down { color: var(--danger-ink); }
.fb-delta--flat { color: var(--ink-muted); }
.fb-nps-bar { display: flex; block-size: 8px; border-radius: 99px; overflow: hidden; gap: 2px; }
.fb-nps-bar .d { background: var(--chart-negative); }
.fb-nps-bar .p { background: var(--chart-neutral); }
.fb-nps-bar .r { background: var(--chart-positive); }
.fb-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-4); align-items: start; margin-block-end: var(--space-4); }
.fb-grid > .ap-col { display: grid; gap: var(--space-4); }
.fb-card { display: grid; gap: 12px; }
.fb-card__h { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.fb-card__h .ap-h2 { margin: 0; display: inline-flex; align-items: center; gap: 8px; }
.fb-card__h > small { margin-inline-start: auto; font-size: 13px; color: var(--ink-muted); }
.fb-card__h > .cm-seg, .fb-card__h > .bv-switch, .fb-card__h > .ap-pill { margin-inline-start: auto; }
.fb-trend { display: flex; align-items: flex-end; gap: 14px; block-size: 200px; padding: 8px 4px 0; }
.fb-trend__c { flex: 1; display: grid; justify-items: center; gap: 6px; }
.fb-trend__c b { font-size: 15px; color: var(--navy-900); }
.fb-trend__bar { inline-size: 100%; max-inline-size: 64px; border-radius: 6px 6px 2px 2px; background: var(--blue-200); }
.fb-trend__c.is-on .fb-trend__bar { background: var(--blue-500); }
.fb-trend__c small { font-size: 12px; color: var(--ink-muted); }
.fb-trend__n { margin-block-start: -4px; }
.fb-areas { display: grid; gap: 4px; }
.fb-arow { display: grid; grid-template-columns: 160px minmax(0, 1fr) 28px 34px; align-items: center; gap: 10px; padding: 6px 8px; border: 0; border-radius: 8px; background: transparent; font: inherit; font-size: 14px; color: var(--ink); text-align: start; cursor: pointer; }
.fb-arow:hover, .fb-arow.is-on { background: var(--surface-raised); }
.fb-arow__bar { block-size: 10px; border-radius: 99px; background: var(--line-soft); overflow: hidden; }
.fb-arow__bar i { display: block; block-size: 100%; border-radius: inherit; }
.fb-arow__n { color: var(--ink-muted); text-align: end; }
.fb-arow__s { font-weight: 500; text-align: end; }
.fb-tone--ok { background: var(--chart-positive); }
.fb-tone--warn { background: var(--chart-pending); }
.fb-tone--danger { background: var(--chart-negative); }
.fb-ai { margin: 0; }
.fb-themes { list-style: none; margin: 0; padding: 0; display: grid; }
.fb-themes li { display: flex; gap: 12px; align-items: flex-start; padding: 10px 0; border-block-start: 1px solid var(--line-soft); }
.fb-themes li:first-child { border: 0; }
.fb-themes li > div { flex: 1; }
.fb-themes b { font-weight: 500; color: var(--navy-900); }
.fb-themes p { margin: 2px 0 0; font-size: 14px; color: var(--ink-muted); }
.fb-themes small { font-size: 12px; color: var(--ink-muted); white-space: nowrap; }
.fb-dot { inline-size: 10px; block-size: 10px; border-radius: 50%; margin-block-start: 6px; flex: none; }
.fb-comments { display: grid; gap: 8px; max-block-size: 520px; overflow: auto; }
.fb-c { padding: 12px 14px; border-radius: 10px; background: var(--surface-raised); }
.fb-c.is-new { box-shadow: inset 3px 0 0 var(--blue-500); }
.fb-c__h { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.fb-c__h small { font-size: 12px; color: var(--ink-muted); }
.fb-c__h .ap-pill { margin: 0; }
.fb-c__done { margin-inline-start: auto; display: inline-flex; align-items: center; gap: 4px; font-size: 13px; }
.fb-c p { margin: 6px 0 0; font-size: 14px; line-height: 20px; }
.fb-c .fb-file { margin-block-start: 6px; }
.fb-row { padding-inline: 0; }
.fb-row .cm-seg { flex: none; }
.fb-sel { inline-size: auto; min-inline-size: 140px; }
.fb-next { display: flex; gap: 8px; align-items: flex-start; margin: 0; padding: 10px 12px; border-radius: 8px; background: var(--blue-50); font-size: 14px; color: var(--navy-700); }
.fb-next .bv-icon { flex: none; margin-block-start: 2px; }
.fb-chs { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.fb-chs .nc-label { margin-inline-end: 6px; }
.fb-preview { display: grid; gap: 6px; }
.fb-preview__k { font-size: 12px; color: var(--ink-muted); text-transform: uppercase; letter-spacing: .06em; }
.fb-notif { display: flex; gap: 10px; align-items: flex-start; max-inline-size: 420px; padding: 12px 14px; border-radius: 16px; background: color-mix(in srgb, var(--chrome-800) 92%, transparent); color: var(--chrome-ink); box-shadow: 0 12px 30px rgba(8, 16, 60, .2); }
.fb-notif__i { display: grid; place-items: center; inline-size: 34px; block-size: 34px; border-radius: 9px; background: var(--blue-500); color: #fff; flex: none; }
.fb-notif > div { flex: 1; min-inline-size: 0; }
.fb-notif b { font-size: 13px; font-weight: 500; color: #fff; }
.fb-notif p { margin: 2px 0 8px; font-size: 13px; line-height: 18px; }
.fb-notif__a { display: flex; gap: 8px; }
.fb-notif__a span { padding: 4px 10px; border-radius: 99px; background: rgba(255, 255, 255, .12); font-size: 12px; }
.fb-notif small { font-size: 11px; color: var(--chrome-ink-muted); }
.fb-rep { inline-size: 720px; }
.fb-rep__b section h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 8px; font-size: 16px; color: var(--navy-900); }
.fb-rep__b section p { margin: 0; line-height: 1.55; }
.fb-rep__k { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.fb-rep__k div { display: grid; gap: 2px; padding: 12px; border-radius: 10px; background: var(--surface-raised); }
.fb-rep__k b { font-size: 22px; color: var(--navy-900); letter-spacing: -0.02em; }
.fb-rep__k small { font-size: 12px; color: var(--ink-muted); }
.fb-rep__i { padding: 10px 0; border-block-start: 1px solid var(--line-soft); }
.fb-rep__i b { font-weight: 500; color: var(--navy-900); }
.fb-rep__i p { margin: 2px 0 0; font-size: 14px; color: var(--ink-muted); }
.fb-rep__i blockquote { margin: 6px 0 0; padding: 6px 10px; border-inline-start: 3px solid var(--line); font-size: 14px; color: var(--ink); }
.fb-rep__steps { margin: 0; padding-inline-start: 20px; display: grid; gap: 6px; }
@media (max-width: 1100px) { .fb-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); } .fb-grid { grid-template-columns: minmax(0, 1fr); } }

/* Bviser Admin (platform) */
.pl-top { gap: 14px; }
.pl-badge { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 99px; background: rgba(255, 255, 255, .1); color: #fff; font-size: 13px; font-weight: 500; }
.pl-top__sp { flex: 1; }
.pl-top__who { font-size: 14px; color: var(--chrome-ink-muted); }
.pl-body { display: flex; }
.pl-nav { flex: none; inline-size: 232px; padding: 16px 12px; background: var(--chrome-800); display: grid; align-content: start; gap: 4px; min-block-size: calc(100vh - var(--topbar-height)); }
.pl-nav__i { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border: 0; border-radius: 10px; background: transparent; color: var(--chrome-ink-muted); font: inherit; font-size: 15px; text-align: start; cursor: pointer; }
.pl-nav__i:hover { background: var(--chrome-700); color: #fff; }
.pl-nav__i.is-on { background: var(--chrome-600); color: #fff; }
.pl-main { flex: 1; min-inline-size: 0; }
.pl-sched { display: flex; align-items: center; gap: 16px; margin-block-end: var(--space-4); }
.pl-sched__i { display: grid; place-items: center; inline-size: 46px; block-size: 46px; border-radius: 12px; background: var(--blue-50); color: var(--blue-500); flex: none; }
.pl-sched__t { flex: 1; display: grid; gap: 4px; }
.pl-sched__t b { font-size: 16px; font-weight: 500; color: var(--navy-900); }
.pl-sched__t small { font-size: 14px; color: var(--ink-muted); }
.pl-sched__t small b { font-size: 14px; }
.pl-to { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-block-start: 4px; }
.pl-to .nc-chip { padding: 3px 10px; font-size: 13px; }
.pl-reps { display: flex; flex-wrap: wrap; gap: 8px; margin-block-end: var(--space-4); }
.pl-rep { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); font: inherit; text-align: start; cursor: pointer; color: var(--ink-muted); }
.pl-rep span { display: grid; }
.pl-rep b { font-size: 14px; font-weight: 500; color: var(--navy-900); }
.pl-rep small { font-size: 12px; }
.pl-rep.is-on { border-color: var(--blue-500); background: var(--blue-50); box-shadow: inset 0 0 0 1px var(--blue-500); color: var(--blue-500); }
.pl-tw { overflow-x: auto; }
.pl-t { inline-size: 100%; border-collapse: collapse; font-size: 14px; }
.pl-t th { text-align: start; font-size: 12px; font-weight: 500; color: var(--ink-muted); text-transform: uppercase; letter-spacing: .04em; padding: 8px 10px; border-block-end: 1px solid var(--line); white-space: nowrap; }
.pl-t td { padding: 10px; border-block-end: 1px solid var(--line-soft); vertical-align: middle; white-space: nowrap; }
.pl-t td small { display: block; font-size: 12px; color: var(--ink-muted); }
.pl-t td b { font-weight: 500; color: var(--navy-900); }
.pl-t tr.is-own td { background: var(--blue-50); }
.pl-t .fb-delta { margin-inline-start: 4px; }
.pl-bar { display: inline-block; inline-size: 60px; vertical-align: middle; margin-inline-end: 8px; }
.pl-sort { border: 0; background: none; font: inherit; color: inherit; text-transform: inherit; letter-spacing: inherit; cursor: pointer; padding: 0; }
.pl-sort.is-on { color: var(--blue-500); }
.fb-card .tp-hint { display: flex; align-items: center; gap: 6px; margin: 0; }

/* ==================== Bviser AI (on every screen) ==================== */
.ai-root { --ai-a: #324df5; --ai-b: #7b3fe4; --ai-c: #19b5c9; font-family: var(--font-sans); color: var(--ink); }
.ai-orb { position: relative; display: inline-block; inline-size: 34px; block-size: 34px; border-radius: 50%; flex: none; background: radial-gradient(circle at 32% 28%, rgba(255,255,255,.9) 0 8%, rgba(255,255,255,0) 30%), conic-gradient(from 200deg, var(--ai-a), var(--ai-b), var(--ai-c), var(--ai-a)); box-shadow: 0 4px 14px rgba(70, 60, 220, .35), inset 0 0 0 1px rgba(255,255,255,.25); }
.ai-orb--sm { inline-size: 24px; block-size: 24px; }
.ai-orb--lg { inline-size: 64px; block-size: 64px; animation: ai-breathe 4s ease-in-out infinite; }
@keyframes ai-breathe { 50% { transform: scale(1.06); box-shadow: 0 8px 28px rgba(90, 70, 230, .45), inset 0 0 0 1px rgba(255,255,255,.3); } }

/* the button: a pill you can drag to either edge */
.ai-fab { position: fixed; inset-block-end: 24px; inset-inline-end: 24px; z-index: 55; display: inline-flex; align-items: center; gap: 10px; block-size: 52px; padding: 0 20px 0 6px; border: 0; border-radius: 26px; cursor: pointer; color: #fff; font: inherit; font-size: 15px; font-weight: 500; letter-spacing: .01em;
  background: linear-gradient(120deg, var(--ai-a) 0%, var(--ai-b) 60%, #9b4fd8 100%); box-shadow: 0 10px 28px rgba(60, 50, 220, .38), 0 2px 6px rgba(20, 20, 60, .2), inset 0 1px 0 rgba(255,255,255,.25);
  transition: transform .2s cubic-bezier(.2,.9,.25,1), box-shadow .2s, opacity .2s, padding .25s; touch-action: none; user-select: none; -webkit-tap-highlight-color: transparent; }
.ai-fab::before { content: ""; position: absolute; inset: -3px; border-radius: inherit; padding: 3px; background: conic-gradient(from var(--ai-ang, 0deg), rgba(255,255,255,0), rgba(130, 220, 255, .9), rgba(255,255,255,0) 30%); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; opacity: .8; animation: ai-spin 4s linear infinite; pointer-events: none; }
@property --ai-ang { syntax: '<angle>'; inherits: false; initial-value: 0deg; }
@keyframes ai-spin { to { --ai-ang: 360deg; } }
.ai-fab:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(60, 50, 220, .45), 0 2px 6px rgba(20, 20, 60, .2), inset 0 1px 0 rgba(255,255,255,.25); }
.ai-fab:active { transform: scale(.96); }
.ai-fab:focus-visible { outline: 3px solid var(--blue-200); outline-offset: 3px; }
.ai-fab__orb { display: grid; place-items: center; inline-size: 40px; block-size: 40px; border-radius: 50%; background: radial-gradient(circle at 30% 25%, rgba(255,255,255,.55), rgba(255,255,255,.12) 60%); box-shadow: inset 0 0 0 1px rgba(255,255,255,.3); }
.ai-fab.is-drag { cursor: grabbing; transition: none; transform: scale(1.05); box-shadow: 0 20px 44px rgba(60, 50, 220, .5); }
.ai-fab.is-used:not(:hover):not(:focus-visible) { padding-inline-end: 6px; }
.ai-fab.is-used:not(:hover):not(:focus-visible) .ai-fab__l { max-inline-size: 0; opacity: 0; }
.ai-fab__l { max-inline-size: 80px; overflow: hidden; white-space: nowrap; transition: max-inline-size .25s, opacity .2s; }
.ai-root.is-open:not(.ai-root--float) .ai-fab { opacity: 0; transform: scale(.6); pointer-events: none; }

/* the panel: dock, floating window or full screen */
.ai-panel { position: fixed; z-index: 56; display: flex; flex-direction: column; background: var(--surface); color: var(--ink); box-shadow: 0 24px 64px rgba(8, 16, 60, .24), 0 2px 8px rgba(8, 16, 60, .08); overflow: hidden; }
.ai-panel--dock { inset-block: var(--topbar-height, 72px) 0; inset-inline-end: 0; inline-size: min(440px, 100vw); border-inline-start: 1px solid var(--line); }
.ai-panel--float { inset-block-end: 92px; inset-inline-end: 24px; inline-size: min(400px, calc(100vw - 32px)); block-size: min(620px, calc(100vh - 120px)); border-radius: 18px; border: 1px solid color-mix(in srgb, var(--line) 70%, transparent); }
.ai-root.is-left .ai-panel--float { inset-inline-end: auto; inset-inline-start: 24px; }
.ai-panel--full { inset-block-start: 50%; inset-inline-start: 50%; translate: -50% -50%; inline-size: min(920px, calc(100vw - 48px)); block-size: min(86vh, 860px); border-radius: 20px; }
[dir="rtl"] .ai-panel--full { translate: 50% -50%; }
.ai-scrim { position: fixed; inset: 0; z-index: 56; background: var(--scrim, rgba(23, 26, 38, .42)); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }
.ai-panel--full { z-index: 57; }
.ai-head { display: flex; align-items: center; gap: 10px; padding: 12px 12px 12px 16px; background: linear-gradient(180deg, color-mix(in srgb, var(--blue-50) 70%, var(--surface)), var(--surface)); border-block-end: 1px solid var(--line-soft); }
.ai-panel--float .ai-head { cursor: grab; }
.ai-panel.is-drag .ai-head { cursor: grabbing; }
.ai-head__t { flex: 1; min-inline-size: 0; display: grid; }
.ai-head__t b { font-size: 16px; font-weight: 500; color: var(--navy-900); letter-spacing: -0.01em; }
.ai-head__t small { font-size: 12px; color: var(--ink-muted); }
.ai-head__a { display: flex; align-items: center; gap: 2px; }
.ai-head .bv-ghost-icon { inline-size: 32px; block-size: 32px; }
.ai-modes { display: inline-flex; padding: 2px; margin-inline: 4px; border-radius: 9px; background: var(--neutral-bg); }
.ai-modes .bv-ghost-icon { inline-size: 28px; block-size: 28px; border-radius: 7px; }
.ai-modes .is-on { background: var(--surface); color: var(--blue-500); box-shadow: 0 1px 2px rgba(0,0,0,.08); }
.ai-body { flex: 1; overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 14px; overscroll-behavior: contain; }
.ai-panel--full .ai-body { padding: 24px max(24px, calc((100% - 720px) / 2)); }
.ai-hello { display: grid; justify-items: center; text-align: center; gap: 8px; padding: 18px 4px 4px; }
.ai-hello h3 { margin: 10px 0 0; font-size: 20px; line-height: 1.25; letter-spacing: -0.01em; color: var(--navy-900); }
.ai-hello p { margin: 0; font-size: 14px; color: var(--ink-muted); max-inline-size: 340px; }
.ai-ctx { display: inline-flex; align-items: center; gap: 6px; margin-block: 6px 4px; padding: 4px 10px; border-radius: 99px; background: var(--neutral-bg); font-size: 12px; color: var(--ink-muted); }
.ai-ctx b { font-weight: 500; color: var(--navy-900); }
.ai-sugs { display: grid; gap: 8px; inline-size: 100%; margin-block-start: 8px; }
.ai-panel--full .ai-sugs { grid-template-columns: 1fr 1fr; }
.ai-sug { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); font: inherit; font-size: 14px; color: var(--ink); text-align: start; cursor: pointer; transition: border-color .15s, background .15s, transform .1s; }
.ai-sug .bv-icon { color: var(--ai-b); flex: none; }
.ai-sug:hover { border-color: var(--blue-200); background: var(--blue-50); }
.ai-sug:active { transform: scale(.98); }
.ai-m { display: flex; gap: 10px; align-items: flex-start; }
.ai-m--me { justify-content: flex-end; }
.ai-m--me p { margin: 0; max-inline-size: 82%; padding: 10px 14px; border-radius: 16px 16px 4px 16px; background: var(--blue-500); color: #fff; font-size: 14px; line-height: 20px; }
[dir="rtl"] .ai-m--me p { border-radius: 16px 16px 16px 4px; }
.ai-m--ai .ai-orb { margin-block-start: 2px; }
.ai-a { flex: 1; min-inline-size: 0; display: grid; gap: 10px; }
.ai-a > p { margin: 0; font-size: 14px; line-height: 21px; }
.ai-a b { font-weight: 500; color: var(--navy-900); }
.ai-caret { display: inline-block; inline-size: 7px; block-size: 15px; margin-inline-start: 2px; vertical-align: -2px; border-radius: 2px; background: var(--ai-b); animation: ai-blink 1s steps(2) infinite; }
@keyframes ai-blink { 50% { opacity: 0; } }
.ai-think { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--ink-muted); }
.ai-think span:last-child { background: linear-gradient(90deg, var(--ink-muted) 0 40%, var(--ink-faint) 50%, var(--ink-muted) 60% 100%); background-size: 200% 100%; -webkit-background-clip: text; background-clip: text; color: transparent; animation: ai-shine 1.4s linear infinite; }
@keyframes ai-shine { to { background-position: -200% 0; } }
.ai-think .ai-orb { animation: ai-breathe 1.2s ease-in-out infinite; }
.ai-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(84px, 1fr)); gap: 6px; }
.ai-stats div { display: grid; gap: 2px; padding: 10px; border-radius: 10px; background: var(--surface-raised); }
.ai-stats b { font-size: 20px; font-weight: 700; letter-spacing: -0.02em; color: var(--navy-900); }
.ai-stats small { font-size: 11px; line-height: 14px; color: var(--ink-muted); }
.ai-steps { margin: 0; padding-inline-start: 20px; display: grid; gap: 6px; font-size: 14px; line-height: 20px; }
.ai-items { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.ai-item { inline-size: 100%; display: flex; align-items: center; gap: 10px; padding: 10px 10px 10px 12px; border: 1px solid var(--line-soft); border-radius: 12px; background: var(--surface); font: inherit; text-align: start; cursor: pointer; color: var(--ink-faint); transition: border-color .15s, background .15s; }
.ai-item:hover { border-color: var(--blue-200); background: var(--blue-50); color: var(--blue-500); }
.ai-item__t { flex: 1; min-inline-size: 0; display: grid; gap: 2px; }
.ai-item__t b { font-size: 14px; font-weight: 500; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ai-item__t small { font-size: 12px; color: var(--ink-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ai-item .ap-pill { margin: 0; font-size: 11px; padding: 2px 8px; flex: none; }
.ai-goto { justify-self: start; }
.ai-meta { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.ai-src { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; color: var(--ink-muted); }
.ai-rate { margin-inline-start: auto; display: inline-flex; align-items: center; gap: 2px; }
.ai-rate .bv-ghost-icon { inline-size: 26px; block-size: 26px; color: var(--ink-faint); }
.ai-rate small { font-size: 12px; color: var(--success-ink); }
.ai-follow { display: flex; flex-wrap: wrap; gap: 6px; }
.ai-chip { padding: 6px 12px; border: 1px solid var(--blue-200); border-radius: 99px; background: var(--blue-50); font: inherit; font-size: 13px; color: var(--navy-700); cursor: pointer; }
.ai-chip:hover { background: var(--surface); }
.ai-comp { display: flex; align-items: flex-end; gap: 8px; margin: 0 12px; padding: 8px 8px 8px 14px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); transition: border-color .15s, box-shadow .15s; }
.ai-panel--full .ai-comp { margin-inline: max(24px, calc((100% - 720px) / 2)); }
.ai-comp:focus-within { border-color: var(--blue-400); box-shadow: 0 0 0 3px color-mix(in srgb, var(--blue-500) 15%, transparent); }
.ai-comp textarea { flex: 1; min-block-size: 24px; max-block-size: 140px; padding: 6px 0; border: 0; outline: 0; resize: none; background: transparent; font: inherit; font-size: 15px; line-height: 22px; color: var(--ink); }
.ai-send { display: grid; place-items: center; inline-size: 38px; block-size: 38px; border: 0; border-radius: 12px; background: linear-gradient(135deg, var(--ai-a), var(--ai-b)); color: #fff; cursor: pointer; flex: none; transition: transform .1s; }
.ai-send:active { transform: scale(.94); }
.ai-send[disabled] { opacity: .5; cursor: default; }
.ai-foot { display: flex; align-items: center; justify-content: center; gap: 5px; margin: 8px 0 10px; font-size: 11px; color: var(--ink-faint); }
@media (max-width: 720px) {
  .ai-panel--dock, .ai-panel--float, .ai-panel--full { inset: auto 0 0 0; translate: none; inline-size: 100%; block-size: 86vh; border-radius: 18px 18px 0 0; }
  .ai-fab { inset-block-end: 16px; inset-inline-end: 16px; }
}
@media (prefers-reduced-motion: reduce) { .ai-fab::before, .ai-orb--lg, .ai-think .ai-orb, .ai-think span:last-child, .ai-caret { animation: none; } .ai-fab { transition: none; } }
@media (prefers-reduced-transparency: reduce) { .ai-scrim { -webkit-backdrop-filter: none; backdrop-filter: none; } }
@media (prefers-contrast: more) { .ai-panel { border: 1px solid var(--ink); } .ai-fab { outline: 2px solid #fff; } }
@media print { .ai-root { display: none; } }
/* Docked AI makes room instead of covering the page (wide screens) */
@media (min-width: 1100px) { .bv-body { transition: margin-inline-end .3s cubic-bezier(.2,.9,.25,1); } .ai-push .bv-body { margin-inline-end: min(440px, 100vw); } }
@media (prefers-reduced-motion: reduce) { .bv-body { transition: none; } }

/* ==================== Meeting analytics ==================== */
.mz-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-block-end: var(--space-4); }
.mz-head__a { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.mz-head__a .ap-pill { margin: 0; }
.mz-ins { margin-block-end: var(--space-4); padding: 14px 18px; border-radius: var(--radius-md); background: linear-gradient(135deg, var(--violet-bg), var(--blue-50)); border: 1px solid var(--violet-line); }
.mz-ins__h { display: flex; align-items: center; gap: 8px; margin-block-end: 8px; color: var(--violet-ink); }
.mz-ins__h b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.mz-ins__h .ap-pill { margin-inline-start: auto; }
.mz-ins ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.mz-ins li { display: flex; gap: 8px; font-size: 14px; line-height: 20px; color: var(--ink); }
.mz-ins li b { font-weight: 500; color: var(--navy-900); }
.mz-dot { inline-size: 8px; block-size: 8px; border-radius: 50%; margin-block-start: 6px; flex: none; }
.mz-tiles { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; margin-block-end: var(--space-4); }
.mz-tile { display: flex; gap: 12px; align-items: flex-start; padding: 16px; }
.mz-tile > div { display: grid; gap: 3px; min-inline-size: 0; flex: 1; }
.mz-tile__i { display: grid; place-items: center; inline-size: 38px; block-size: 38px; border-radius: 10px; flex: none; }
.mz-tile__k { font-size: 13px; color: var(--ink-muted); }
.mz-tile__v { font-size: 24px; line-height: 1.1; font-weight: 700; letter-spacing: -0.02em; color: var(--navy-900); }
.mz-tile__v small { font-size: 13px; font-weight: 400; color: var(--ink-muted); letter-spacing: 0; }
.mz-tile small { font-size: 12px; color: var(--ink-muted); }
.mz-tile .mz-bar { margin-block-start: 4px; }
.mz-tone--ok { background: var(--success-bg); color: var(--success-ink); }
.mz-tone--warn { background: var(--warning-bg); color: var(--attention-ink); }
.mz-tone--danger { background: var(--danger-bg); color: var(--danger-ink); }
.mz-tone--info { background: var(--blue-50); color: var(--blue-500); }
.mz-dot.mz-tone--ok { background: var(--chart-positive); } .mz-dot.mz-tone--warn { background: var(--chart-pending); } .mz-dot.mz-tone--danger { background: var(--chart-negative); }
.mz-bar { display: block; block-size: 6px; border-radius: 99px; background: var(--line-soft); overflow: hidden; }
.mz-bar i { display: block; block-size: 100%; border-radius: inherit; background: var(--blue-500); }
.mz-bar i.ok, .mz-mini i.ok { background: var(--chart-positive); } .mz-bar i.warn, .mz-mini i.warn { background: var(--chart-pending); } .mz-bar i.danger, .mz-mini i.danger { background: var(--chart-negative); } .mz-mini i.info { background: var(--blue-500); }
.mz-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: var(--space-4); align-items: start; }
.mz-grid > .ap-col { display: grid; gap: var(--space-4); }
.mz-card { display: grid; gap: 12px; }
.mz-card__h { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.mz-card__h h3 { margin: 0; font-size: 17px; color: var(--navy-900); }
.mz-card__h > small, .mz-card__h > .cm-seg, .mz-legend { margin-inline-start: auto; }
.mz-card__h > small { font-size: 13px; color: var(--ink-muted); }
.mz-legend { display: flex; gap: 12px; font-size: 12px; color: var(--ink-muted); }
.mz-legend span { display: inline-flex; align-items: center; gap: 5px; }
.mz-sw { inline-size: 14px; block-size: 6px; border-radius: 3px; }
.mz-sw--plan { background: var(--blue-200); } .mz-sw--act { background: var(--navy-700); } .mz-sw--over { background: var(--chart-negative); }
.mz-time { display: grid; gap: 4px; }
.mz-trow { display: grid; grid-template-columns: 26px minmax(160px, 220px) minmax(0, 1fr) 110px; align-items: center; gap: 12px; padding: 8px 0; border-block-start: 1px solid var(--line-soft); }
.mz-trow:first-child { border: 0; }
.mz-trow__n { display: grid; place-items: center; inline-size: 24px; block-size: 24px; border-radius: 6px; background: var(--neutral-bg); font-size: 12px; font-weight: 500; color: var(--navy-900); }
.mz-trow__t { display: grid; min-inline-size: 0; }
.mz-trow__t b { font-size: 14px; font-weight: 500; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mz-trow__t small { font-size: 12px; color: var(--ink-muted); }
.mz-trow__bars { display: grid; gap: 3px; }
.mz-tb { display: block; block-size: 8px; border-radius: 4px; min-inline-size: 4px; }
.mz-tb--plan { background: var(--blue-200); }
.mz-tb--act { background: var(--navy-700); }
.mz-trow__v { font-size: 13px; color: var(--ink-muted); text-align: end; }
.mz-trow__v b { color: var(--navy-900); font-size: 15px; }
.mz-trow__v em { display: block; font-style: normal; font-size: 12px; color: var(--danger-ink); }
.mz-foot { display: flex; align-items: center; gap: 6px; margin: 0; font-size: 12px; color: var(--ink-muted); }
.mz-tw { overflow-x: auto; }
.mz-t { inline-size: 100%; border-collapse: collapse; font-size: 14px; }
.mz-t th { text-align: start; padding: 8px 10px; font-size: 12px; font-weight: 500; color: var(--ink-muted); text-transform: uppercase; letter-spacing: .04em; border-block-end: 1px solid var(--line); white-space: nowrap; }
.mz-t td { padding: 10px; border-block-end: 1px solid var(--line-soft); vertical-align: middle; white-space: nowrap; }
.mz-t .ap-pill { margin: 0; font-size: 12px; }
.mz-who { display: flex; align-items: center; gap: 10px; }
.mz-who .bv-avatar { inline-size: 32px; block-size: 32px; font-size: 11px; }
.mz-who span:last-child { display: grid; }
.mz-who b { font-weight: 500; color: var(--navy-900); }
.mz-who small, .mz-sub { font-size: 12px; color: var(--ink-muted); }
.mz-sub { display: block; margin-block-start: 2px; }
.mz-mini { display: inline-block; inline-size: 44px; block-size: 6px; margin-inline-end: 8px; border-radius: 99px; background: var(--line-soft); overflow: hidden; vertical-align: middle; }
.mz-mini i { display: block; block-size: 100%; max-inline-size: 100%; border-radius: inherit; }
.mz-coi { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; }
.mz-coi.ok { color: var(--success-ink); } .mz-coi.warn { color: var(--attention-ink); }
.mz-docs { display: grid; gap: 4px; }
.mz-doc { display: grid; grid-template-columns: 36px minmax(0, 1fr) 120px; align-items: center; gap: 10px; padding: 8px 0; border-block-start: 1px solid var(--line-soft); }
.mz-doc:first-child { border: 0; }
.mz-doc__i { display: grid; place-items: center; inline-size: 34px; block-size: 34px; border-radius: 8px; font-size: 10px; font-weight: 700; color: #fff; }
.mz-ft--pdf { background: #d64545; } .mz-ft--xls { background: #1f7a55; } .mz-ft--doc { background: #2f54eb; }
.mz-doc__t { display: grid; min-inline-size: 0; }
.mz-doc__t b { font-size: 14px; font-weight: 500; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mz-doc__t small, .mz-doc__b small { font-size: 12px; color: var(--ink-muted); }
.mz-doc__b { display: grid; gap: 4px; }
.mz-not { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; padding: 10px 12px; border-radius: 10px; background: var(--surface-raised); font-size: 13px; color: var(--ink-muted); }
.mz-not > span:first-child { display: inline-flex; align-items: center; gap: 6px; }
.mz-not .nc-chip { padding: 2px 8px; font-size: 12px; }
.mz-not .bv-linkbtn { margin-inline-start: auto; display: inline-flex; align-items: center; gap: 4px; font-size: 13px; }
.mz-res { display: grid; gap: 6px; padding: 10px 0; border-block-start: 1px solid var(--line-soft); }
.mz-res__h { display: flex; align-items: center; gap: 8px; }
.mz-res__h b { flex: 1; font-size: 14px; font-weight: 500; color: var(--navy-900); }
.mz-res__h .ap-pill { margin: 0; }
.mz-res small { font-size: 12px; color: var(--ink-muted); }
.mz-stack { display: flex; gap: 2px; block-size: 10px; border-radius: 99px; overflow: hidden; }
.mz-stack i.ok { background: var(--chart-positive); } .mz-stack i.danger { background: var(--chart-negative); } .mz-stack i.muted { background: var(--chart-neutral); } .mz-stack i.none { background: var(--line-soft); }
.mz-rate { display: grid; grid-template-columns: auto 1fr; gap: 20px; align-items: center; }
.mz-rate__v { display: grid; justify-items: center; gap: 4px; padding-inline-end: 20px; border-inline-end: 1px solid var(--line-soft); }
.mz-rate__v b { font-size: 40px; line-height: 1; font-weight: 700; letter-spacing: -0.02em; color: var(--navy-900); }
.mz-rate__d { display: grid; gap: 4px; }
.mz-rate__d div { display: grid; grid-template-columns: 10px 14px 1fr 18px; align-items: center; gap: 6px; font-size: 12px; color: var(--ink-muted); }
.mz-rate__d .bv-icon { color: #f0a020; fill: #f0a020; }
.mz-rate__d .mz-bar i { background: #f0a020; }
.mz-rbtn { justify-self: start; }
.mz-rform { display: grid; gap: 8px; padding: 12px; border-radius: 10px; background: var(--surface-raised); }
.mz-rform__a { display: flex; justify-content: flex-end; align-items: center; gap: 10px; }
.mz-mine { display: flex; align-items: center; gap: 6px; margin: 0; font-size: 14px; color: var(--success-ink); }
.mz-cmts { display: grid; gap: 8px; }
.mz-cmt { padding: 10px 12px; border-radius: 10px; background: var(--surface-raised); }
.mz-cmt p { margin: 4px 0 2px; font-size: 14px; }
.mz-cmt small { font-size: 12px; color: var(--ink-muted); }
@media (max-width: 1400px) { .mz-tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 1100px) { .mz-grid { grid-template-columns: minmax(0, 1fr); } .mz-ins ul { grid-template-columns: minmax(0, 1fr); } .mz-trow { grid-template-columns: 26px minmax(0, 1fr) 90px; } .mz-trow__bars { grid-column: 2 / -1; } }

/* ==================== Attachments + merged board-pack viewer ==================== */
.at2-pack { display: flex; align-items: center; gap: 16px; margin-block-end: var(--space-4); padding: 18px 20px; border-radius: var(--radius-md); background: linear-gradient(135deg, var(--blue-50), var(--surface)); border: 1px solid var(--blue-200); }
.at2-pack__i { display: grid; place-items: center; inline-size: 48px; block-size: 48px; border-radius: 12px; background: var(--blue-500); color: #fff; flex: none; box-shadow: 0 6px 16px rgba(50, 77, 245, .3); }
.at2-pack__t { flex: 1; min-inline-size: 0; display: grid; gap: 3px; }
.at2-pack__t b { font-size: 17px; font-weight: 500; color: var(--navy-900); }
.at2-pack__t small { font-size: 14px; color: var(--ink-muted); }
.at2-pack__a { display: flex; gap: 8px; flex-wrap: wrap; }
.at2-tools { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-block-end: var(--space-4); }
.at2-tools .cm-search { flex: 1; min-inline-size: 220px; max-inline-size: 360px; }
.at2-tools .bv-btn-secondary { margin-inline-start: auto; }
.at2-grp { padding: 0; margin-block-end: 12px; overflow: visible; }
.at2-grp__h { display: flex; align-items: center; gap: 10px; padding: 12px 16px; border-block-end: 1px solid var(--line-soft); }
.at2-grp__tg { flex: 1; min-inline-size: 0; display: flex; align-items: center; gap: 10px; border: 0; background: none; padding: 0; font: inherit; text-align: start; cursor: pointer; color: var(--ink-muted); }
.at2-no { display: grid; place-items: center; inline-size: 26px; block-size: 26px; border-radius: 7px; background: var(--blue-500); color: #fff; font-size: 13px; font-weight: 500; flex: none; }
.at2-grp__t { display: grid; min-inline-size: 0; }
.at2-grp__t b { font-size: 15px; font-weight: 500; color: var(--navy-900); }
.at2-grp__t small { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; color: var(--ink-muted); }
.at2-rows { display: grid; }
.at2-row { display: grid; grid-template-columns: minmax(0, 1fr) 210px 64px auto; align-items: center; gap: 12px; padding: 8px 16px; border-block-start: 1px solid var(--line-soft); }
.at2-row:first-child { border: 0; }
.at2-row:hover { background: var(--surface-raised); }
.at2-file { display: flex; align-items: center; gap: 12px; min-inline-size: 0; padding: 4px 0; border: 0; background: none; font: inherit; text-align: start; cursor: pointer; }
.at2-file__t { display: grid; min-inline-size: 0; }
.at2-file__t b { font-size: 14px; font-weight: 500; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.at2-file:hover .at2-file__t b { color: var(--blue-500); text-decoration: underline; }
.at2-file__t small { font-size: 12px; color: var(--ink-muted); }
.at2-ic { display: grid; place-items: center; inline-size: 34px; block-size: 40px; border-radius: 6px; font-size: 10px; font-weight: 700; color: #fff; flex: none; position: relative; }
.at2-ic::after { content: ""; position: absolute; inset-block-start: 0; inset-inline-end: 0; inline-size: 10px; block-size: 10px; background: linear-gradient(225deg, var(--surface) 50%, rgba(0,0,0,.18) 50%); border-start-end-radius: 6px; }
.at2-ic--pdf { background: #d64545; } .at2-ic--xls { background: #1f7a55; } .at2-ic--doc { background: #2f54eb; }
.at2-by { display: flex; align-items: center; gap: 8px; min-inline-size: 0; }
.at2-by .bv-avatar { inline-size: 28px; block-size: 28px; font-size: 10px; }
.at2-by span:last-child { display: grid; min-inline-size: 0; }
.at2-by b { font-size: 13px; font-weight: 500; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.at2-by small { font-size: 12px; color: var(--ink-muted); }
.at2-seen { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; color: var(--ink-muted); }
.at2-acts { display: flex; align-items: center; gap: 2px; }
.at2-acts .ap-menu { inset-inline-end: 0; inset-inline-start: auto; }
.at2-foot { display: flex; align-items: center; gap: 6px; margin: 8px 0 0; font-size: 13px; color: var(--ink-muted); }
@media (max-width: 1000px) { .at2-row { grid-template-columns: minmax(0, 1fr) auto; } .at2-by, .at2-seen { display: none; } .at2-pack { flex-wrap: wrap; } }

/* merged viewer */
.pk-main { padding: 0 !important; max-inline-size: none !important; }
.pk { display: grid; grid-template-columns: 330px minmax(0, 1fr) 168px; block-size: calc(100vh - var(--topbar-height, 72px)); background: #e8eaef; }
.pk-side { display: flex; flex-direction: column; min-block-size: 0; background: var(--surface); border-inline-end: 1px solid var(--line); }
.pk-side__h { display: flex; align-items: center; gap: 8px; padding: 14px 12px; border-block-end: 1px solid var(--line-soft); }
.pk-side__h > div { flex: 1; min-inline-size: 0; display: grid; }
.pk-side__h b { font-size: 16px; font-weight: 500; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pk-side__h small { font-size: 12px; color: var(--ink-muted); }
.pk-search { margin: 12px; inline-size: auto !important; max-inline-size: none; box-sizing: border-box; }
.pk-tree { flex: 1; overflow-y: auto; padding: 0 10px 16px; display: grid; align-content: start; gap: 8px; }
.pk-grp { border-radius: 12px; background: var(--surface-raised); }
.pk-grp.is-cur { box-shadow: inset 0 0 0 1px var(--blue-200); }
.pk-grp__h { inline-size: 100%; display: flex; align-items: flex-start; gap: 8px; padding: 12px; border: 0; background: none; font: inherit; text-align: start; cursor: pointer; color: var(--ink-muted); }
.pk-grp__h span { display: grid; gap: 2px; }
.pk-grp__h b { font-size: 14px; font-weight: 500; color: var(--navy-900); line-height: 19px; }
.pk-grp__h small { font-size: 12px; }
.pk-files { display: grid; gap: 4px; padding: 0 8px 10px; }
.pk-file { position: relative; display: flex; align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid transparent; border-radius: 10px; background: var(--surface); font: inherit; text-align: start; cursor: pointer; overflow: hidden; }
.pk-file:hover { border-color: var(--line); }
.pk-file.is-on { border-color: var(--blue-500); background: var(--blue-50); }
.pk-file .at2-ic { inline-size: 26px; block-size: 32px; font-size: 8px; }
.pk-file span:nth-child(2) { display: grid; min-inline-size: 0; }
.pk-file b { font-size: 13px; font-weight: 500; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pk-file small { font-size: 11px; color: var(--ink-muted); }
.pk-prog { position: absolute; inset-inline: 0; inset-block-end: 0; block-size: 3px; background: var(--blue-200); }
.pk-prog i { display: block; block-size: 100%; background: var(--blue-500); transition: inline-size .2s; }
.pk-view { position: relative; display: flex; flex-direction: column; min-block-size: 0; min-inline-size: 0; }
.pk-cur { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 16px; background: color-mix(in srgb, var(--surface) 85%, transparent); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border-block-end: 1px solid var(--line); }
.pk-cur > span:first-child { display: flex; align-items: center; gap: 10px; min-inline-size: 0; }
.pk-cur .at2-ic { inline-size: 24px; block-size: 30px; font-size: 8px; }
.pk-cur b { font-size: 14px; font-weight: 500; color: var(--navy-900); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pk-cur small { font-size: 12px; color: var(--ink-muted); white-space: nowrap; }
.pk-stage { flex: 1; overflow: auto; display: grid; justify-items: center; align-content: start; padding: 28px 24px 96px; }
.pk-zoomwrap { max-inline-size: none; transition: inline-size .2s cubic-bezier(.2,.9,.25,1); }
.pk-pg { position: relative; aspect-ratio: 210 / 297; background: #fff; box-shadow: 0 10px 30px rgba(10, 20, 60, .14), 0 1px 3px rgba(10, 20, 60, .1); overflow: hidden; color: #1e2a78; font-size: 14px; transition: transform .25s; }
.pk-pg__band { position: absolute; inset-block: 0; inset-inline-end: 0; inline-size: 2.2%; background: var(--blue-500); }
.pk-pg__band::before { content: ""; position: absolute; inset-block-start: 3%; inset-inline-end: 0; inline-size: 2500%; block-size: .9%; background: var(--blue-500); border-radius: 4px 0 0 4px; }
.pk-pg__logo { position: absolute; inset-block-start: 4%; inset-inline-start: 6%; font-size: 1.6em; font-weight: 700; letter-spacing: -0.02em; color: #1b1f3b; }
.pk-pg__logo b { color: var(--blue-500); }
.pk-pg__cover { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; gap: 10px; padding: 0 12%; }
.pk-pg__cover small { font-size: .9em; color: #6b7280; text-transform: uppercase; letter-spacing: .1em; }
.pk-pg__cover h1 { margin: 0; font-size: 2.4em; line-height: 1.15; letter-spacing: -0.02em; color: #1b2bb8; word-break: break-word; }
.pk-pg__cover h1:lang(ar), [lang="ar"] .pk-pg__cover h1 { letter-spacing: 0; font-family: var(--font-arabic, inherit); }
.pk-pg__cover i { justify-self: center; inline-size: 30%; block-size: 4px; border-radius: 4px; background: var(--blue-500); }
.pk-pg__text { position: absolute; inset: 15% 10% 10% 8%; display: flex; flex-direction: column; gap: 1.6%; }
.pk-pg__text i { display: block; block-size: 1.1%; min-block-size: 3px; border-radius: 3px; background: #dfe3ec; }
.pk-pg__text .pk-h { inline-size: 45%; block-size: 2.2%; min-block-size: 5px; border-radius: 4px; background: #1b2bb8; opacity: .85; margin-block-end: 2%; }
.pk-fig { display: flex; align-items: flex-end; gap: 6%; block-size: 22%; margin-block: 3%; padding: 3%; border-radius: 6px; background: #f3f5fb; }
.pk-fig span { flex: 1; background: var(--blue-500); border-radius: 3px 3px 0 0; }
.pk-fig span:nth-child(1) { block-size: 45%; } .pk-fig span:nth-child(2) { block-size: 80%; background: #7b8cf5; } .pk-fig span:nth-child(3) { block-size: 60%; } .pk-fig span:nth-child(4) { block-size: 95%; background: #1b2bb8; }
.pk-tbl { display: block; block-size: 18%; margin-block: 3%; border-radius: 6px; background: repeating-linear-gradient(#f3f5fb 0 18%, #fff 18% 20%), linear-gradient(#fff, #fff); border: 1px solid #e3e7f0; }
.pk-pg__sheet { position: absolute; inset: 14% 8% 8% 6%; display: grid; align-content: start; gap: 10px; }
.pk-pg__sheet b { font-size: 1em; color: #1f7a55; }
.pk-pg__sheet table { inline-size: 100%; border-collapse: collapse; font-size: .75em; }
.pk-pg__sheet th { padding: 5px; background: #e6f4ec; color: #1f5c40; text-align: start; border: 1px solid #cfe3d7; }
.pk-pg__sheet td { padding: 7px 5px; border: 1px solid #e3e7ec; }
.pk-pg__sheet td i { display: block; block-size: 5px; border-radius: 3px; background: #dfe3ec; }
.pk-wm { position: absolute; inset-block-start: 50%; inset-inline-start: 50%; translate: -50% -50%; rotate: -32deg; white-space: nowrap; font-size: 1.5em; font-weight: 700; color: rgba(27, 43, 184, .08); pointer-events: none; }
.pk-pg__no { position: absolute; inset-block-end: 2.5%; inset-inline-start: 50%; translate: -50% 0; font-size: .75em; color: #9aa1b2; }
.pk-ctrl { position: absolute; inset-block-end: 20px; inset-inline-start: 50%; translate: -50% 0; display: flex; align-items: center; gap: 2px; padding: 6px 8px; border-radius: 14px; background: color-mix(in srgb, var(--surface) 90%, transparent); -webkit-backdrop-filter: blur(20px) saturate(180%); backdrop-filter: blur(20px) saturate(180%); border: 1px solid var(--line); box-shadow: 0 12px 32px rgba(10, 20, 60, .18); }
[dir="rtl"] .pk-ctrl { translate: 50% 0; }
.pk-flip { display: inline-flex; transform: scaleX(-1); }
[dir="rtl"] .pk-flip { transform: none; } [dir="rtl"] .pk-ctrl [data-pk-step="1"] .bv-icon { transform: scaleX(-1); }
.pk-pgin { display: inline-flex; align-items: center; gap: 6px; padding-inline: 6px; font-size: 14px; color: var(--ink-muted); }
.pk-pgin input { inline-size: 44px; block-size: 30px; border: 1px solid var(--line); border-radius: 8px; text-align: center; font: inherit; font-size: 14px; color: var(--navy-900); }
.pk-sep { inline-size: 1px; block-size: 22px; margin-inline: 6px; background: var(--line); }
.pk-zv { min-inline-size: 54px; border: 0; background: none; font: inherit; font-size: 13px; color: var(--ink); cursor: pointer; }
.pk-thumbs { overflow-y: auto; padding: 12px 14px; background: var(--surface); border-inline-start: 1px solid var(--line); display: grid; align-content: start; gap: 10px; }
.pk-tdiv { display: block; padding: 6px 0 0; font-size: 11px; font-weight: 500; color: var(--ink-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; border-block-start: 1px solid var(--line-soft); }
.pk-tdiv:first-child { border: 0; padding: 0; }
.pk-th { display: grid; gap: 4px; justify-items: center; padding: 4px; border: 2px solid transparent; border-radius: 8px; background: none; cursor: pointer; }
.pk-th > small { font-size: 12px; color: var(--ink-muted); }
.pk-th.is-on { border-color: var(--blue-500); background: var(--blue-50); }
.pk-th.is-on > small { color: var(--blue-500); font-weight: 500; }
.pk-pg--mini { inline-size: 120px; font-size: 4px; box-shadow: 0 1px 4px rgba(10, 20, 60, .15); }
@media (max-width: 1100px) { .pk { grid-template-columns: 280px minmax(0, 1fr); } .pk-thumbs { display: none; } }
@media (max-width: 760px) { .pk { grid-template-columns: minmax(0, 1fr); } .pk-side { display: none; } }
