/* SPDX-License-Identifier: GPL-2.0-or-later — styles are scoped to IdeaHub. */
.ih-foundation {
  --ih-font-title: 14px; --ih-font-body: 12px; --ih-button-height: 32px;
  --ih-input-height: 34px; --ih-space: 8px; --ih-border: #d8dee7;
  --ih-muted: #536171; --ih-accent: var(--link-color, #0b54ac);
  font-size: var(--ih-font-body); line-height: 1.5; overflow-wrap: anywhere;
}
.ih-foundation h1, .ih-foundation h2 { font-size: var(--ih-font-title); font-weight: 600; margin: 0 0 12px; }
.ih-foundation h2 { margin-top: 20px; }
.ih-foundation .btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: var(--ih-button-height); padding: 6px 10px; font-size: var(--ih-font-body); line-height: 1.3; border-radius: 6px; text-decoration: none; }
.ih-foundation :is(a,button,input,select,textarea,summary):focus-visible { outline: 2px solid var(--ih-accent); outline-offset: 3px; }
.ih-foundation :is(input,select,textarea) { font-size: var(--ih-font-body); max-width: 100%; }
.ih-foundation :is(input:not([type=hidden]),select) { min-height: var(--ih-input-height); }
.ih-foundation label { font-size: var(--ih-font-body); }
.ih-foundation [hidden] { display: none !important; }
.ih-nav { display: flex; flex-wrap: wrap; gap: 4px 16px; border-bottom: 1px solid var(--ih-border); margin-bottom: 16px; }
.ih-nav a { display: inline-flex; align-items: center; min-height: var(--ih-button-height); padding: 6px 0; border-bottom: 2px solid transparent; text-decoration: none; color: inherit; }
.ih-nav a[aria-current=page] { color: var(--ih-accent); border-bottom-color: currentColor; font-weight: 600; }
.ih-nav .ih-nav-create { margin-left: auto; color: var(--ih-accent); font-weight: 600; }
.ih-lead, .ih-hint, .ih-meta, .ih-result-count { color: var(--ih-muted); }
.ih-lead { margin: 0 0 14px; }
.ih-hint { font-size: var(--ih-font-body); margin: 6px 0; }
.ih-editor .ih-nav { max-width: 800px; }
.ih-form { max-width: 800px; margin-top: 12px; }
.ih-form-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 14px 20px; }
.ih-span-full { grid-column: 1 / -1; }
.ih-field { min-width: 0; }
.ih-field .control-group { margin: 0; }
.ih-field .control-label { float: none; width: auto; padding: 0 0 5px; }
.ih-field .controls { margin: 0; }
.ih-field .form-text { font-size: var(--ih-font-body); color: var(--ih-muted); margin-top: 5px; }
.ih-field :is(input:not([type=hidden]),select,textarea), .ih-community textarea { width: 100%; }
.ih-field textarea { min-height: 120px; resize: vertical; }
.ih-access-panel { border: 0; border-top: 1px solid var(--ih-border); padding: 12px 0 0; margin: 16px 0; min-width: 0; }
.ih-access-panel legend { float: none; width: auto; font-size: var(--ih-font-body); font-weight: 600; padding: 0 8px 0 0; margin-bottom: 8px; }
.ih-form-actions { position: sticky; bottom: 0; z-index: 2; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 12px 0; margin-top: 12px; border-top: 1px solid var(--ih-border); background: var(--bs-body-bg, #fff); }
.ih-form-actions .ih-hint { margin: 0; flex: 1 1 180px; }
.ih-error-summary { max-width: 800px; padding: 10px 12px; margin-bottom: 14px; border-left: 3px solid #a11b22; background: #fff2f2; color: #711319; }
.ih-error-summary ul { margin: 5px 0 0; padding-left: 18px; }
.ih-error-summary a { color: inherit; }
.ih-foundation [aria-invalid=true] { border-color: #a11b22; }
.ih-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.ih-toolbar { display: flex; flex-wrap: wrap; gap: var(--ih-space); align-items: center; }
.ih-filters { margin: 12px 0 8px; align-items: end; }
.ih-filters label { display: flex; flex: 0 1 150px; min-width: 0; flex-direction: column; gap: 4px; }
.ih-filters label:first-of-type { flex: 1 1 180px; }
.ih-filters :is(input,select) { width: 100%; }
.ih-filter-reset { display: inline-flex; align-items: center; min-height: var(--ih-button-height); padding: 6px 2px; }
.ih-result-count { margin: 8px 0; }
.ih-ideas { list-style: none; padding: 0; margin: 0 0 16px; }
.ih-ideas li { padding: 12px 0; border-bottom: 1px solid var(--ih-border); }
.ih-ideas li > a:first-child { font-weight: 600; text-decoration: none; }
.ih-meta { display: block; margin-top: 5px; }
.ih-badge { display: inline-flex; align-items: center; gap: 4px; padding: 2px 7px; border-radius: 4px; background: #eef2f6; color: #334155; font-size: 11px; font-weight: 500; line-height: 1.5; }
.ih-pending { background: #fff3cd; color: #6b4800; }
.ih-published { background: #e8f5ed; color: #14532d; }
.ih-empty { margin: 16px 0; padding: 16px 0; }
.ih-description { white-space: normal; overflow-wrap: anywhere; margin: 20px 0; }
.ih-archive { margin-top: 16px; }
.ih-archive .btn { color: #9b1c1c; border-color: #ebcbcb; background: transparent; }
.ih-community { margin-top: 20px; }
.ih-voting { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 14px; border-block: 1px solid var(--ih-border); padding: 10px 0; margin-bottom: 14px; }
.ih-voting .ih-meta, .ih-community .ih-voting form { margin: 0; }
.ih-vote-feedback { flex: 1 1 160px; color: var(--ih-muted); }
.ih-foundation .ih-vote-button.is-voted { background: #e8f5ed; color: #14532d; border-color: #9ecfb0; }
.ih-thread { border-bottom: 1px solid var(--ih-border); padding: 12px 0; }
.ih-comment { padding: 4px 0; overflow-wrap: anywhere; scroll-margin-top: 5rem; }
.ih-comment > p { margin: 0 0 5px; }
.ih-reply { margin: 10px 0 0 16px; padding-left: 12px; border-left: 2px solid var(--ih-border); }
.ih-comment-form { max-width: 800px; margin: 12px 0; }
.ih-comment-form label, .ih-community .ih-form label { display: block; margin: 8px 0 4px; }
.ih-comment-form textarea, .ih-community .ih-form textarea { width: 100%; min-height: 88px; font-size: var(--ih-font-body); resize: vertical; }
.ih-community form { margin: 12px 0; }
.ih-community .ih-toolbar label { display: flex; flex-direction: column; gap: 4px; flex: 1 1 180px; }
.ih-community .ih-toolbar { align-items: end; }
.ih-community .ih-toolbar :is(input,select) { width: 100%; }
.ih-community :is(.ih-moderation-panel,.ih-history-panel,.ih-audit-panel) { border-top: 1px solid var(--ih-border); padding: 10px 0; margin: 12px 0; }
.ih-community summary { cursor: pointer; min-height: var(--ih-button-height); padding: 5px 0; font-weight: 600; }
.ih-comment-moderation summary, .ih-reply-compose summary { display: list-item; color: var(--ih-accent); font-weight: 500; width: fit-content; }
.ih-history li, .ih-audit li { margin: 0 0 10px; padding-left: 4px; }
.ih-history { border-left: 1px solid var(--ih-border); padding-left: 20px; list-style-position: outside; }
.ih-workflow, #ih-publication { scroll-margin-top: 5rem; }
@media (max-width: 640px) {
  .ih-foundation { --ih-button-height: 44px; --ih-input-height: 44px; }
  .ih-foundation :is(input,select,textarea) { font-size: 16px; }
  .ih-form-grid { grid-template-columns: minmax(0,1fr); gap: 12px; }
  .ih-nav { gap: 0 14px; }
  .ih-nav .ih-nav-create { margin-left: 0; }
  .ih-filters label { flex: 1 1 140px; }
  .ih-filters label:first-of-type { flex-basis: 100%; }
  .ih-form-actions { position: static; }
  .ih-form-actions .ih-hint { flex-basis: 100%; }
  .ih-reply { margin-left: 8px; padding-left: 8px; }
  .ih-voting { gap: 8px; }
}

/* Product workspace: shared navigation, data views, discussion and contribution. */
.ih-foundation.ih-workspace {
  --ih-accent: #b41c36; --ih-border: #e5e7eb; --ih-muted: #626b7a;
  --ih-type-small: 12px; --ih-type-body: 14px; --ih-type-section: 16px;
  --ih-font-body: var(--ih-type-body); --ih-font-title: 28px; --ih-button-height: 40px; --ih-input-height: 40px;
  display: grid; grid-template-columns: 170px minmax(0,1fr); min-height: 660px;
  background: #f7f8fa; color: #202733; border: 1px solid var(--ih-border); border-radius: 14px;
  overflow: clip; font-family: var(--ih-font-family, system-ui, -apple-system, "Segoe UI", sans-serif); text-align: left; isolation: isolate;
}
.ih-workspace *, .ih-workspace *::before, .ih-workspace *::after { box-sizing: border-box; }
.ih-workspace .ih-sidebar { background: #fff; border-right: 1px solid var(--ih-border); padding: 28px 14px; display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.ih-workspace .ih-brand { display: flex; align-items: center; gap: 10px; color: #202733; font-weight: 750; font-size: 21px; letter-spacing: -.6px; text-decoration: none; padding-inline: 8px; }
.ih-workspace .ih-brand-mark { width: 30px; height: 32px; display: grid; place-items: center; background: var(--ih-accent); color: #fff; font: italic 700 26px Georgia,serif; border-radius: 9px 9px 9px 3px; }
.ih-workspace .ih-sidebar-caption { margin: 12px 10px -14px; font-size: var(--ih-type-small); letter-spacing: 1.5px; text-transform: uppercase; color: var(--ih-muted); font-weight: 650; }
.ih-workspace .ih-side-links { display: grid; gap: 5px; }
.ih-workspace .ih-side-links a { display: flex; gap: 11px; padding: 11px 12px; border-radius: 7px; text-decoration: none; color: #596171; font-size: var(--ih-type-body); font-weight: 550; }
.ih-workspace .ih-side-links a > span { width: 18px; font-size: var(--ih-type-section); line-height: 20px; }
.ih-workspace .ih-side-links a:hover { background: #f7f8fa; color: #202733; }
.ih-workspace .ih-side-links a[aria-current] { background: #fbedef; color: #a01c32; box-shadow: inset 3px 0 #b41c36; }
.ih-workspace .ih-sidebar-note { margin-top: auto; padding: 16px 12px; background: #f7f8fa; border: 1px solid #eef0f3; border-radius: 9px; font-size: var(--ih-type-body); color: var(--ih-muted); }
.ih-workspace .ih-sidebar-note strong { display: block; color: #333c49; margin: 8px 0; font-size: var(--ih-type-body); }
.ih-workspace .ih-sidebar-note p { margin: 0 0 10px; }
.ih-workspace .ih-sidebar-note a { color: #a01c32; font-weight: 650; text-decoration: none; }
.ih-workspace .ih-note-icon { color: #a01c32; font-size: 24px; }
.ih-workspace .ih-workspace-main { min-width: 0; padding: 24px; }
.ih-workspace .ih-page-header { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 26px; }
.ih-workspace h1 { font-size: 28px; font-weight: 720; letter-spacing: -.7px; line-height: 1.2; margin: 0 0 9px; color: #202733; }
.ih-workspace .ih-eyebrow { font-size: var(--ih-type-small); color: var(--ih-muted); margin: 0 0 18px; }
.ih-workspace .ih-eyebrow > span { color: #a4aab4; margin: 0 9px; }
.ih-workspace .ih-page-intro { color: var(--ih-muted); margin: 0; font-size: var(--ih-type-body); max-width: 500px; }
.ih-workspace .btn { font-size: var(--ih-type-body); font-weight: 600; min-height: 40px; padding: 9px 14px; border-radius: 7px; box-shadow: none; }
.ih-workspace .btn-primary { background: var(--ih-accent); border: 1px solid var(--ih-accent); color: #fff; }
.ih-workspace .btn-primary:hover { background: #94182c; border-color: #94182c; }
.ih-workspace .btn-secondary { background: #fff; border: 1px solid #d7dce3; color: #343e4d; }
.ih-workspace .btn-secondary:hover { background: #f3f4f6; border-color: #a9b1bf; }
.ih-workspace .ih-create { white-space: nowrap; flex-shrink: 0; }
.ih-workspace .ih-create > span { font-size: 20px; line-height: 18px; }
.ih-workspace .ih-stage-tabs { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 20px; margin-bottom: 22px; border-bottom: 1px solid var(--ih-border); }
.ih-workspace .ih-stage-tabs a { display: inline-flex; align-items: center; gap: 6px; color: #626b7a; font-size: var(--ih-type-body); text-decoration: none; padding: 10px 0 12px; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.ih-workspace .ih-stage-tabs a[aria-current] { color: #a01c32; border-bottom-color: #b41c36; font-weight: 650; }
.ih-workspace .ih-stage-tabs a > span { background: #eceef1; color: #626b7a; border-radius: 4px; min-width: 19px; padding: 1px 4px; font-size: var(--ih-type-small); text-align: center; }
.ih-workspace .ih-stage-tabs a[aria-current] > span { background: #f6dfe4; color: #93192d; }
.ih-workspace .ih-board-panel { background: #fff; border: 1px solid var(--ih-border); border-radius: 10px; overflow: clip; }
.ih-workspace .ih-board-tools { padding: 18px; display: flex; align-items: end; gap: 10px; }
.ih-workspace .ih-filters { flex: 1; gap: 10px; margin: 0; min-width: 0; }
.ih-workspace .ih-filters label { flex: 1 1 110px; font-size: var(--ih-type-small); font-weight: 600; color: var(--ih-muted); }
.ih-workspace .ih-filters label:first-of-type { flex: 2 1 180px; }
.ih-workspace :is(input:not([type=hidden]),select,textarea) { border: 1px solid #d7dce3; border-radius: 6px; padding: 9px 10px; color: #303a49; background: #fff; box-shadow: none; }
.ih-workspace .ih-filters :is(input,select) { font-size: var(--ih-type-body); font-weight: 400; }
.ih-workspace input::placeholder { color: #727b8a; }
.ih-workspace .ih-view-switch { display: flex; border: 1px solid #d7dce3; border-radius: 6px; overflow: clip; flex-shrink: 0; }
.ih-workspace .ih-view-switch a { width: 34px; height: 38px; display: grid; place-items: center; color: #677181; text-decoration: none; font-size: 21px; }
.ih-workspace .ih-view-switch a[aria-current] { background: #fbedef; color: #9f1b31; }
.ih-workspace .ih-view-switch a + a { border-left: 1px solid #e5e7eb; }
.ih-workspace .ih-filter-reset { font-size: var(--ih-type-body); color: #a01c32; }
.ih-workspace .ih-idea-table { width: 100%; border-collapse: collapse; font-size: var(--ih-type-body); table-layout: auto; margin: 0; }
.ih-workspace .ih-idea-table th { background: #f8f9fb; border-block: 1px solid #e9ecf0; color: #626b7a; font-size: var(--ih-type-small); font-weight: 650; white-space: nowrap; padding: 13px 10px; }
.ih-workspace .ih-idea-table td { padding: 18px 10px; border-bottom: 1px solid #edf0f3; vertical-align: middle; color: #525d6c; }
.ih-workspace .ih-idea-table tr:last-child td { border-bottom: 0; }
.ih-workspace .ih-idea-table tbody tr:hover { background: #fcf8f9; }
.ih-workspace .ih-idea-table :is(th,td):first-child { padding-left: 20px; }
.ih-workspace .ih-idea-table :is(th,td):last-child { padding-right: 20px; }
.ih-workspace .ih-title-cell { width: 32%; min-width: 170px; }
.ih-workspace .ih-idea-title { color: #273241; font-size: var(--ih-type-body); font-weight: 600; text-decoration: none; line-height: 1.5; }
.ih-workspace .ih-idea-title:hover { color: #a01c32; text-decoration: underline; text-underline-offset: 3px; }
.ih-workspace .ih-row-reference { display: block; font-size: var(--ih-type-small); color: #626b7a; margin-top: 4px; }
.ih-workspace .ih-person { white-space: nowrap; display: flex; align-items: center; gap: 7px; font-size: var(--ih-type-small); }
.ih-workspace .ih-avatar { display: inline-grid; flex-shrink: 0; place-items: center; width: 26px; height: 26px; background: #eeeaf8; color: #65518a; border-radius: 50%; font-size: var(--ih-type-small); font-weight: 650; }
.ih-workspace .ih-number { text-align: center; font-variant-numeric: tabular-nums; }
.ih-workspace .ih-date { white-space: nowrap; font-size: var(--ih-type-small); }
.ih-workspace .ih-badge { border-radius: 5px; font-size: var(--ih-type-small); font-weight: 600; padding: 3px 6px; white-space: nowrap; }
.ih-workspace .ih-status::before { content: ''; width: 5px; height: 5px; background: currentColor; border-radius: 50%; }
.ih-workspace .ih-status-submitted { background: #edf4ff; color: #285a9a; }
.ih-workspace .ih-status-under_review { background: #fff5dc; color: #805a0d; }
.ih-workspace .ih-status-accepted { background: #e7f5f2; color: #22665b; }
.ih-workspace .ih-status-planned { background: #f0ebfa; color: #695198; }
.ih-workspace .ih-status-in_progress { background: #fff0e3; color: #9b5014; }
.ih-workspace .ih-status-implemented { background: #e7f5ed; color: #286540; }
.ih-workspace .ih-status-declined, .ih-workspace .ih-status-duplicate { background: #f2f3f5; color: #626b7a; }
.ih-workspace .ih-board-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 20px; border-top: 1px solid var(--ih-border); }
.ih-workspace .ih-result-count { margin: 0; font-size: var(--ih-type-small); }
.ih-workspace .pagination { margin: 0; gap: 3px; }
.ih-workspace .pagination .page-link { font-size: var(--ih-type-small); padding: 6px 10px; border-radius: 4px; color: #596171; border-color: #e5e7eb; }
.ih-workspace .pagination .active .page-link { background: #fbedef; color: #a01c32; border-color: #f1d0d8; }
.ih-workspace .ih-empty-state { padding: 64px 24px; text-align: center; }
.ih-workspace .ih-empty-state > span { font-size: 40px; color: #9ca5b3; }
.ih-workspace .ih-empty-state h2 { font-size: 18px; margin: 12px 0 6px; }
.ih-workspace .ih-empty-state p { color: var(--ih-muted); margin: 0 0 20px; font-size: var(--ih-type-body); }
.ih-workspace .ih-notice { margin: 0 18px 16px; padding: 10px 12px; background: #fff5dc; font-size: var(--ih-type-body); border-radius: 6px; color: #805a0d; }
.ih-workspace .ih-card-list { padding: 0 20px; }
.ih-workspace .ih-idea-card { display: flex; align-items: center; gap: 18px; padding: 22px 0; border-top: 1px solid #edf0f3; }
.ih-workspace .ih-vote-tile { width: 48px; min-height: 58px; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #596171; border: 1px solid #e0e4ea; border-radius: 7px; text-decoration: none; flex-shrink: 0; line-height: 1.2; }
.ih-workspace .ih-vote-tile > span { font-size: 23px; line-height: 16px; }
.ih-workspace .ih-vote-tile strong { font-size: var(--ih-type-body); margin-top: 5px; }
.ih-workspace .ih-vote-tile:hover { border-color: #b41c36; color: #a01c32; background: #fdf5f7; }
.ih-workspace .ih-card-content { min-width: 0; flex: 1; }
.ih-workspace .ih-card-content h2 { font-size: var(--ih-type-section); margin: 7px 0; }
.ih-workspace .ih-card-content .ih-idea-title { font-size: var(--ih-type-section); }
.ih-workspace .ih-card-labels { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; color: var(--ih-muted); font-size: var(--ih-type-small); }
.ih-workspace .ih-card-meta { font-size: var(--ih-type-small); color: var(--ih-muted); margin: 0; }
.ih-workspace .ih-card-meta > span { margin: 0 5px; }
.ih-workspace .ih-comment-count { color: #626b7a; font-size: var(--ih-type-body); display: flex; gap: 6px; align-items: center; text-decoration: none; padding: 8px; }
.ih-workspace .ih-roadmap { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; padding: 0 18px 22px; }
.ih-workspace .ih-roadmap-column { min-width: 0; background: #f7f8fa; border: 1px solid #edf0f3; border-radius: 8px; padding: 12px; }
.ih-workspace .ih-roadmap-column > h2 { display: flex; align-items: center; gap: 8px; font-size: var(--ih-type-body); margin: 0 0 16px; }
.ih-workspace .ih-status-dot { width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.ih-workspace .ih-column-count { color: #626b7a; background: #e9ecf0; border-radius: 4px; padding: 1px 6px; font-size: var(--ih-type-small); margin-left: auto; }
.ih-workspace .ih-roadmap-column .ih-idea-card { display: flex; align-items: start; flex-wrap: wrap; gap: 9px; background: #fff; border: 1px solid #e5e7eb; border-radius: 7px; padding: 12px; margin-bottom: 10px; box-shadow: 0 2px 3px #20273304; }
.ih-workspace .ih-roadmap-column .ih-card-content { flex-basis: 100%; order: -1; }
.ih-workspace .ih-roadmap-column .ih-vote-tile { min-height: 30px; width: auto; flex-direction: row; padding: 5px 8px; gap: 5px; }
.ih-workspace .ih-roadmap-column .ih-vote-tile strong { margin: 0; font-size: var(--ih-type-small); }
.ih-workspace .ih-roadmap-column .ih-comment-count { margin-left: auto; }
.ih-workspace .ih-column-empty { font-size: var(--ih-type-body); color: var(--ih-muted); text-align: center; padding: 30px 5px; border: 1px dashed #d7dce3; border-radius: 6px; }
.ih-workspace .ih-back { display: inline-block; color: #626b7a; text-decoration: none; font-size: var(--ih-type-body); margin-bottom: 22px; }
.ih-detail .ih-page-header { margin-bottom: 24px; }
.ih-detail .ih-page-header h1 { font-size: 26px; max-width: 700px; }
.ih-workspace .ih-detail-grid { display: grid; grid-template-columns: minmax(0,1fr) 200px; gap: 22px; align-items: start; }
.ih-workspace .ih-detail-content { min-width: 0; }
.ih-workspace .ih-content-panel, .ih-workspace .ih-community, .ih-workspace .ih-detail-properties, .ih-workspace .ih-editor-panel { border: 1px solid var(--ih-border); background: #fff; border-radius: 10px; padding: 24px; }
.ih-workspace .ih-author-line { display: flex; align-items: center; gap: 9px; font-size: var(--ih-type-body); }
.ih-workspace .ih-author-line .ih-meta { font-size: var(--ih-type-small); margin-top: 2px; }
.ih-workspace .ih-description { font-size: var(--ih-type-body); line-height: 1.8; margin: 22px 0 4px; }
.ih-workspace .ih-detail-properties { padding: 20px; }
.ih-workspace .ih-detail-properties h2 { font-size: var(--ih-type-body); margin: 0 0 20px; }
.ih-workspace .ih-detail-properties dl { margin: 0 0 20px; }
.ih-workspace .ih-detail-properties dt { font-size: var(--ih-type-small); color: #626b7a; font-weight: 500; margin: 18px 0 5px; }
.ih-workspace .ih-detail-properties dd { margin: 0; font-size: var(--ih-type-body); }
.ih-workspace .ih-detail-properties .btn { width: 100%; }
.ih-workspace .ih-danger-zone { margin-top: 20px; font-size: var(--ih-type-small); color: #626b7a; }
.ih-workspace .ih-danger-zone summary { cursor: pointer; }
.ih-workspace .ih-community { margin-top: 18px; }
.ih-workspace .ih-voting { margin-top: 0; border-top: 0; padding-top: 0; }
.ih-workspace .ih-vote-summary { font-size: var(--ih-type-small); }
.ih-workspace .ih-vote-feedback { font-size: var(--ih-type-small); flex-basis: 100%; }
.ih-workspace .ih-community h2 { font-size: var(--ih-type-section); margin: 28px 0 16px; display: flex; align-items: center; gap: 10px; }
.ih-workspace .ih-community h2 .ih-column-count { margin-left: 0; }
.ih-workspace .ih-thread { padding: 20px 0; }
.ih-workspace .ih-comment { font-size: var(--ih-type-body); line-height: 1.7; }
.ih-workspace .ih-comment .ih-meta { font-size: var(--ih-type-small); }
.ih-workspace .ih-community summary { font-size: var(--ih-type-body); }
.ih-workspace .ih-reply-compose summary { color: #9f1b31; }
.ih-workspace .ih-hint { font-size: var(--ih-type-small); line-height: 1.6; }
.ih-workspace .ih-community .ih-form label, .ih-workspace .ih-comment-form label { font-size: var(--ih-type-body); font-weight: 600; }
.ih-workspace .ih-community .ih-form :is(select,input,textarea) { width: 100%; }
.ih-workspace .ih-editor-panel { max-width: 850px; }
.ih-workspace .ih-idea-form { margin-top: 26px; }
.ih-workspace .ih-field .control-label { font-size: var(--ih-type-body); font-weight: 600; }
.ih-workspace .ih-field :is(input,select,textarea) { font-size: var(--ih-type-body); }
.ih-workspace .ih-field textarea { min-height: 180px; }
.ih-workspace .ih-access-panel { margin-top: 26px; padding-top: 20px; }
.ih-workspace .ih-form-actions { background: #fff; padding-bottom: 0; }
@media (max-width: 1100px) {
 .ih-foundation.ih-workspace { grid-template-columns: 165px minmax(0,1fr); }
 .ih-workspace .ih-workspace-main { padding: 22px; }
 .ih-workspace .ih-idea-table :is(th,td) { padding-inline: 7px; }
 .ih-workspace .ih-idea-table :is(th,td):first-child { padding-left: 14px; }
 .ih-workspace .ih-idea-table :is(th,td):last-child { padding-right: 14px; }
 .ih-workspace .ih-detail-grid { grid-template-columns: minmax(0,1fr) 170px; gap: 14px; }
 .ih-workspace .ih-content-panel, .ih-workspace .ih-community { padding: 20px; }
}
@media (max-width: 850px) {
 .ih-foundation.ih-workspace { grid-template-columns: minmax(0,1fr); }
 .ih-workspace .ih-sidebar { padding: 14px 20px; flex-direction: row; align-items: center; gap: 20px; border-right: 0; border-bottom: 1px solid var(--ih-border); }
 .ih-workspace .ih-sidebar-caption, .ih-workspace .ih-sidebar-note { display: none; }
 .ih-workspace .ih-side-links { display: flex; flex-wrap: wrap; margin-left: auto; gap: 4px; }
 .ih-workspace .ih-side-links a { padding: 8px 10px; }
 .ih-workspace .ih-side-links a > span { display: none; }
 .ih-workspace .ih-detail-grid { grid-template-columns: minmax(0,1fr); }
 .ih-workspace .ih-detail-properties { grid-row: 1; }
 .ih-workspace .ih-detail-properties dl { display: flex; gap: 8px 16px; flex-wrap: wrap; align-items: center; }
 .ih-workspace .ih-detail-properties dt { margin: 0; }
 .ih-workspace .ih-detail-properties dd { margin-right: 10px; }
 .ih-workspace .ih-detail-properties .btn { width: auto; }
}
@media (max-width: 640px) {
 .ih-foundation.ih-workspace { border-radius: 9px; --ih-button-height: 44px; --ih-input-height: 44px; }
 .ih-workspace .ih-sidebar { padding: 16px; flex-wrap: wrap; gap: 12px; }
 .ih-workspace .ih-brand { font-size: 18px; padding: 0; }
 .ih-workspace .ih-side-links { margin: 0; width: 100%; }
 .ih-workspace .ih-side-links a { font-size: var(--ih-type-body); min-height: 44px; align-items: center; }
 .ih-workspace .ih-workspace-main { padding: 20px 14px; }
 .ih-workspace .ih-page-header { flex-wrap: wrap; gap: 16px; margin-bottom: 20px; }
 .ih-workspace h1, .ih-detail .ih-page-header h1 { font-size: 24px; }
 .ih-workspace .ih-eyebrow { margin-bottom: 12px; }
 .ih-workspace .ih-page-intro { font-size: var(--ih-type-body); }
 .ih-workspace .btn { min-height: 44px; }
 .ih-workspace .ih-stage-tabs { gap: 2px 15px; margin-bottom: 16px; }
 .ih-workspace .ih-stage-tabs a { min-height: 44px; }
 .ih-workspace .ih-board-tools { padding: 14px; flex-wrap: wrap; }
 .ih-workspace .ih-filters { flex-basis: 100%; }
 .ih-workspace .ih-filters label { flex-basis: 100%; }
 .ih-workspace .ih-filters :is(input,select), .ih-workspace :is(input,select,textarea), .ih-workspace .ih-field :is(input,select,textarea) { font-size: 16px; }
 .ih-workspace .ih-view-switch a { height: 44px; width: 44px; }
 .ih-workspace .ih-idea-table, .ih-workspace .ih-idea-table tbody { display: block; }
 .ih-workspace .ih-idea-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
 .ih-workspace .ih-idea-table tr { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 12px; padding: 18px 14px; border-top: 1px solid #e5e7eb; }
 .ih-workspace .ih-idea-table :is(td,td:first-child,td:last-child) { display: block; padding: 0; border: 0; text-align: left; min-width: 0; }
 .ih-workspace .ih-idea-table td::before { content: attr(data-label); display: block; color: #626b7a; font-size: var(--ih-type-small); margin-bottom: 5px; }
 .ih-workspace .ih-idea-table .ih-title-cell { grid-column: 1 / -1; width: auto; min-width: 0; }
 .ih-workspace .ih-title-cell::before { display: none; }
 .ih-workspace .ih-idea-title { font-size: var(--ih-type-body); }
 .ih-workspace .ih-person { font-size: var(--ih-type-body); }
 .ih-workspace .ih-board-footer { flex-wrap: wrap; padding: 14px; }
 .ih-workspace .pagination { flex-wrap: wrap; }
 .ih-workspace .ih-roadmap { grid-template-columns: minmax(0,1fr); padding: 0 14px 14px; }
 .ih-workspace .ih-card-list { padding: 0 14px; }
 .ih-workspace .ih-idea-card { gap: 12px; flex-wrap: wrap; }
 .ih-workspace .ih-card-content { flex-basis: calc(100% - 70px); }
 .ih-workspace .ih-content-panel, .ih-workspace .ih-community, .ih-workspace .ih-editor-panel, .ih-workspace .ih-detail-properties { padding: 16px; }
 .ih-workspace .ih-detail-properties dl { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
 .ih-workspace .ih-field textarea { min-height: 150px; }
 .ih-workspace .ih-form-actions .ih-hint { flex-basis: 100%; }
}

.ih-workspace .ih-filter-options { display: contents; }
.ih-workspace .ih-filter-options > summary { display: none; }
.ih-workspace .ih-idea-table td:nth-child(4) { overflow-wrap: normal; min-width: 72px; }
@media (max-width: 640px) {
 .ih-workspace .ih-filter-options { display: block; width: 100%; }
 .ih-workspace .ih-filter-options > summary { display: list-item; cursor: pointer; color: #525d6c; font-size: var(--ih-type-body); min-height: 44px; padding: 12px 0; }
 .ih-workspace .ih-filter-options label { margin-bottom: 10px; }
}

.ih-workspace .ih-view-switch { margin-left: auto; }
@media (max-width: 640px) {
 .ih-workspace .ih-stage-tabs { flex-wrap: nowrap; overflow-x: auto; white-space: nowrap; scrollbar-width: thin; padding-bottom: 5px; }
 .ih-workspace .ih-idea-table td.ih-title-cell::before { display: none; }
}

.ih-workspace .ih-filter-options { display: block; flex: 2 1 230px; min-width: 0; }
.ih-workspace .ih-filter-fields { display: flex; align-items: end; gap: 10px; }
.ih-workspace .ih-filter-fields label { width: 50%; }
@media (max-width: 640px) {
 .ih-workspace .ih-filter-options { flex-basis: 100%; }
 .ih-workspace .ih-filter-fields { display: block; }
 .ih-workspace .ih-filter-fields label { width: 100%; }
}

/* Keep template heading, link and control fonts out of the component typography. */
.ih-workspace :is(h1,h2,h3,p,a,button,input,select,textarea,label,summary,table,th,td,dt,dd,span,strong,legend) { font-family: inherit; }
.ih-workspace .ih-brand-mark { font-family: Georgia, serif; }
.ih-workspace .ih-idea-table { line-height: 1.5; }
.ih-workspace .ih-table-wrap { max-width: 100%; overflow-x: auto; }
.ih-workspace .ih-filters label { font-size: var(--ih-type-small); }
.ih-workspace .ih-field .form-text { font-size: var(--ih-type-small); }
.ih-workspace .ih-brand { white-space: nowrap; font-size: 20px; padding-inline: 0; }
.ih-workspace .ih-brand-mark { flex-shrink: 0; }

.ih-workspace .ih-board-voting form { margin: 0; }
.ih-workspace .ih-board-voting { flex-shrink: 0; }
.ih-workspace .ih-board-voting button { background: #fff; font-family: inherit; cursor: pointer; }
.ih-workspace .ih-board-voting button.is-voted { background: #fbedef; border-color: #b41c36; color: #9f1b31; }
.ih-workspace .ih-board-voting button:disabled { cursor: progress; opacity: .65; }
.ih-workspace .ih-board-voting button:focus-visible { outline: 2px solid var(--ih-accent); outline-offset: 3px; }
.ih-workspace .ih-board-vote-feedback { display: block; max-width: 180px; font-size: var(--ih-type-small); color: var(--ih-muted); }
.ih-workspace .ih-board-vote-feedback:empty { display: none; }
.ih-workspace .ih-number .ih-board-voting { display: grid; justify-items: center; }
.ih-workspace .ih-number .ih-vote-tile { width: 44px; min-height: 44px; }
.ih-workspace .ih-vote-total { display: inline-flex; align-items: center; gap: 5px; }
.ih-workspace .ih-roadmap-column .ih-board-voting { margin-right: auto; }
.ih-workspace .ih-stage-more { display: block; padding: 8px; font-size: var(--ih-type-small); color: var(--ih-accent); }
.ih-workspace .ih-suggestions { padding: 16px; border: 1px solid #e1d9ec; background: #f8f5fc; border-radius: 8px; }
.ih-workspace .ih-suggestions h2 { font-size: var(--ih-type-section); margin: 0 0 8px; }
.ih-workspace .ih-suggestions p { margin: 6px 0; font-size: var(--ih-type-small); }
.ih-workspace .ih-suggestions ul { padding-left: 20px; margin: 12px 0; }
.ih-workspace .ih-suggestions a { color: #674380; font-size: var(--ih-type-body); }
.ih-latest { font: 14px/1.5 var(--ih-font-family,system-ui,-apple-system,"Segoe UI",sans-serif); }
.ih-latest ul { list-style: none; padding: 0; margin: 0; }
.ih-latest li { padding: 12px 0; border-bottom: 1px solid #e5e7eb; }
.ih-latest li > a { display: block; font-family: inherit; font-size: 14px; line-height: 1.5; font-weight: 600; color: #273241; text-decoration: none; overflow-wrap: anywhere; }
.ih-latest a:focus-visible { outline: 2px solid #b41c36; outline-offset: 3px; }
.ih-latest-meta { display: flex; gap: 12px; flex-wrap: wrap; color: #626b7a; font-size: 12px; margin-top: 5px; }
.ih-latest-all { display: inline-block; padding-top: 12px; color: #a01c32; }
.ih-workspace .ih-board-vote-feedback { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.ih-workspace .ih-board-feedback { margin: 0; padding: 10px 18px; color: #343e4d; background: #f7f8fa; border-top: 1px solid #e5e7eb; font-size: var(--ih-type-small); }
.ih-workspace .ih-board-feedback:empty { display: none; }

/* Preferences and discussion updates share the frontend type scale. */
.ih-workspace .ih-pref-row { padding: 14px 0; border-bottom: 1px solid #e5e7eb; }
.ih-workspace .ih-pref-row label { display: flex; align-items: center; gap: 12px; font-size: var(--ih-type-body); }
.ih-workspace .ih-pref-row input[type=checkbox] { min-height: 0; width: 18px; height: 18px; padding: 0; flex-shrink: 0; accent-color: var(--ih-accent); }
.ih-workspace #ih-notification-preferences > button { margin-top: 20px; }
.ih-workspace .ih-followed-panel { margin-top: 28px; }
.ih-workspace .ih-followed-panel h2 { font-size: var(--ih-type-section); }
.ih-workspace .ih-followed-list { list-style: none; padding: 0; }
.ih-workspace .ih-followed-list li { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding: 14px 0; border-bottom: 1px solid #e5e7eb; }
.ih-workspace .ih-followed-list form { margin: 0; }
.ih-workspace #ih-follow { margin-bottom: 10px; }
.ih-workspace .ih-notification-settings { display: block; font-size: var(--ih-type-small); margin-bottom: 20px; color: var(--ih-muted); }
.ih-foundation .ih-status-update { border-left: 3px solid #8056a3; background: #f6f2fa; padding: 16px; margin: 20px 0; font-size: 14px; border-radius: 0 7px 7px 0; }
.ih-foundation .ih-status-update p { margin: 8px 0; }
.ih-foundation:is(.ih-admin,.ih-analytics,.ih-management) { --ih-font-body:14px; --ih-font-title:26px; --ih-button-height:40px; --ih-input-height:40px; --ih-accent:#b41c36; font: 14px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif; color:#273241; background:#f6f7f9; border:1px solid #e3e6eb; border-radius:12px; padding:26px; }
:is(.ih-admin,.ih-analytics,.ih-management) :is(h1,h2,p,a,button,label,input,select,textarea,th,td) { font-family:inherit; }
:is(.ih-admin,.ih-analytics,.ih-management) h1 { font-size:26px; letter-spacing:-.5px; margin:0 0 8px; }
:is(.ih-admin,.ih-analytics,.ih-management) h2 { font-size:18px; margin:0; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-header { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:22px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-eyebrow { font-size:12px; color:#626b7a; margin:0 0 14px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-intro { color:#626b7a; margin:0; max-width:760px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-nav { display:flex; flex-wrap:wrap; gap:8px 24px; border-bottom:1px solid #dce1e8; margin-bottom:24px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-nav a { display:inline-flex; align-items:center; min-height:44px; padding:10px 0; color:#626b7a; text-decoration:none; border-bottom:2px solid transparent; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-nav a[aria-current] { border-color:#b41c36; color:#a01c32; font-weight:600; }
:is(.ih-admin,.ih-analytics,.ih-management) .btn { font-size:14px; font-weight:600; border-radius:7px; min-height:40px; padding:8px 12px; }
.ih-admin .btn-primary { color:#fff; background:#b41c36; border:1px solid #b41c36; }
:is(.ih-admin,.ih-analytics,.ih-management) .btn-secondary { color:#343e4d; background:#fff; border:1px solid #d7dce3; }
:is(.ih-admin,.ih-analytics,.ih-management) :is(input:not([type=hidden]),select,textarea) { border:1px solid #d7dce3; border-radius:6px; padding:8px 10px; font-size:14px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:24px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-stat-card { padding:20px; display:flex; flex-direction:column; gap:12px; border:1px solid #e3e6eb; background:#fff; border-radius:9px; color:inherit; text-decoration:none; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-stat-card > span { color:#626b7a; font-size:14px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-stat-card strong { font-size:32px; line-height:1.2; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-stat-card .ih-stat-detail { color:#a01c32; font-size:12px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-dashboard-grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(240px,1fr); gap:20px; align-items:start; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-panel { border:1px solid #e3e6eb; border-radius:9px; background:#fff; padding:22px; min-width:0; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-panel > header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:18px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-panel > header > a { font-size:12px; color:#a01c32; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-recent { list-style:none; padding:0; margin:0; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-recent li { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:16px 0; border-top:1px solid #e5e7eb; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-recent li > div { flex:1 1 200px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-meta, :is(.ih-admin,.ih-analytics,.ih-management) .ih-hint { font-size:12px; color:#626b7a; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-badge { font-size:12px; padding:4px 8px; border-radius:5px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-status-submitted { background:#edf4ff; color:#285a9a; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-status-under_review { background:#fff5dc; color:#805a0d; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-status-accepted, :is(.ih-admin,.ih-analytics,.ih-management) .ih-status-implemented { background:#e7f5ed; color:#286540; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-status-planned { background:#f0ebfa; color:#695198; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-status-in_progress { background:#fff0e3; color:#9b5014; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-table-wrap { overflow-x:auto; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-table { width:100%; border-collapse:collapse; font-size:14px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-table :is(th,td) { padding:16px 12px; border-bottom:1px solid #e5e7eb; text-align:left; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-table th { font-size:12px; color:#626b7a; background:#f8f9fb; font-weight:600; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-table td:first-child { min-width:220px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-table td.ih-admin-actions { min-width:190px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-actions .btn { margin:3px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-comment { padding:22px 0; border-bottom:1px solid #e5e7eb; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-comment > h2 { font-size:16px; margin-bottom:14px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-comment > h2 a { color:#273241; text-decoration:none; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-comment > p { font-size:14px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-queue-summary { display:grid; grid-template-columns:1fr auto; gap:12px; border-block:1px solid #e5e7eb; padding:16px 0; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-queue-summary dt { color:#626b7a; font-weight:400; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-queue-summary dd { margin:0; font-weight:600; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-filters { margin-bottom:22px; gap:12px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-filters label { font-size:12px; color:#626b7a; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-empty { padding:24px 0; color:#626b7a; }
@media(max-width:900px) {
 :is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
 :is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-dashboard-grid { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:640px) {
 .ih-foundation:is(.ih-admin,.ih-analytics,.ih-management) { padding:16px; }
 :is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-header { flex-wrap:wrap; }
 :is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-panel { padding:16px; }
 :is(.ih-admin,.ih-analytics,.ih-management) :is(input,select,textarea) { font-size:16px; }
 :is(.ih-admin,.ih-analytics,.ih-management) .btn { min-height:44px; }
}
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-table th, :is(.ih-admin,.ih-analytics,.ih-management) .ih-badge { white-space: nowrap; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-table td:nth-child(4) { overflow-wrap: normal; min-width: 90px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-stat-card > span:first-child { min-height: 42px; }

/* Informational landing page, also rendered in Joomla's native component options. */
.ih-overview { font:14px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif; color:#263b56; margin-bottom:28px; }
.ih-overview *, .ih-overview *::before, .ih-overview *::after { box-sizing:border-box; }
.ih-overview .ih-product-card { background:#fff; border:1px solid #d8e2ed; border-radius:12px; padding:26px 28px; }
.ih-overview .ih-product-top { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.ih-overview .ih-product-top img { width:288px; max-width:80%; height:auto; display:block; }
.ih-overview .ih-version-badge { display:inline-flex; border:1px solid #d5e3f0; background:#f2f7fc; color:#082957; font-size:12px; font-weight:600; white-space:nowrap; border-radius:20px; padding:3px 10px; }
.ih-overview .ih-product-tagline { color:#082957; font-weight:650; font-size:20px; margin:22px 0 12px; }
.ih-overview .ih-product-copy { max-width:850px; margin:0; color:#52647a; font-size:14px; line-height:1.8; }
.ih-overview .ih-product-license { font-size:12px; color:#62758d; margin:20px 0 0; }
.ih-overview .ih-product-license span { margin:0 8px; }
.ih-overview .ih-docs-heading { font-size:12px; text-transform:uppercase; letter-spacing:1px; color:#52647a; font-weight:600; margin:24px 0 10px; }
.ih-overview .ih-documentation-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.ih-overview .ih-documentation-card { padding:22px; background:#f7f9fc; border:1px solid #d8e2ed; border-radius:10px; }
.ih-overview .ih-documentation-card h2 { font:600 16px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif; margin:0 0 9px; color:#082957; display:flex; gap:10px; align-items:center; }
.ih-overview .ih-documentation-card h2 > span { color:#087c83; font-size:20px; }
.ih-overview .ih-documentation-card p { margin:0 0 16px; font-size:14px; color:#52647a; }
.ih-overview .ih-documentation-links { display:flex; flex-wrap:wrap; gap:8px; }
.ih-overview .ih-documentation-links a { display:inline-flex; align-items:center; gap:8px; min-height:38px; padding:7px 12px; font-size:13px; font-weight:600; color:#082957; background:#fff; border:1px solid #cedcec; border-radius:5px; text-decoration:none; }
.ih-overview .ih-documentation-links a:hover { background:#edf4fa; }
.ih-overview a:focus-visible { outline:2px solid #087c83; outline-offset:3px; }
.ih-overview-field { min-width:0; width:100%; }
.ih-config-settings-head h2 { font:600 20px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif; color:#082957; margin:26px 0 6px; }
.ih-config-settings-head p { font-size:14px; color:#52647a; margin:0 0 20px; }
.form-grid:has(> .ih-overview-field) { display:block; }
.form-grid:has(> .ih-overview-field) > .control-group { display:grid; grid-template-columns:minmax(180px,1fr) minmax(0,2fr); gap:20px; align-items:start; background:#fff; border:1px solid #d8e2ed; border-radius:9px; padding:22px; margin-bottom:14px; }
.form-grid:has(> .ih-overview-field) > .control-group .controls { min-width:0; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-activity-heading { margin:30px 0 18px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-nav a[aria-current] { color:#082957; border-color:#087c83; }
.ih-admin .btn-primary { background:#082957; border-color:#082957; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-stat-card .ih-stat-detail, :is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-panel > header > a { color:#082957; }
.ih-foundation:is(.ih-admin,.ih-analytics,.ih-management) { --ih-accent:#087c83; }
@media(max-width:700px) {
 .ih-overview .ih-product-card { padding:20px; }
 .ih-overview .ih-product-top img { width:220px; max-width:70%; }
 .ih-overview .ih-product-tagline { font-size:18px; }
 .ih-overview .ih-documentation-grid { grid-template-columns:minmax(0,1fr); }
 .ih-overview .ih-documentation-links a { min-height:44px; }
 .form-grid:has(> .ih-overview-field) > .control-group { grid-template-columns:minmax(0,1fr); gap:8px; padding:18px; }
}
.ih-overview .ih-product-top img { min-width:0; }
.ih-overview .ih-version-badge { flex-shrink:0; }

/* Compact reading and contribution layouts; retain the established text/touch sizes. */
.ih-foundation.ih-detail, .ih-foundation.ih-editor { min-height: 0; }
.ih-workspace.ih-detail .ih-workspace-main, .ih-workspace.ih-editor .ih-workspace-main { padding: 18px 22px; }
.ih-workspace.ih-detail .ih-page-header, .ih-workspace.ih-editor .ih-page-header { margin-bottom: 14px; gap: 12px; }
.ih-workspace.ih-detail h1, .ih-workspace.ih-editor h1 { margin-bottom: 0; }
.ih-workspace.ih-detail .ih-back { margin-bottom: 10px; }
.ih-workspace.ih-detail .ih-eyebrow, .ih-workspace.ih-editor .ih-eyebrow { margin-bottom: 8px; }
.ih-workspace .ih-detail-grid { gap: 16px; }
.ih-workspace.ih-detail .ih-content-panel, .ih-workspace.ih-detail .ih-community, .ih-workspace.ih-editor .ih-editor-panel { padding: 16px 18px; }
.ih-workspace.ih-editor .ih-editor-panel { max-width: 960px; }
.ih-workspace.ih-editor .ih-lead { margin-bottom: 10px; }
.ih-workspace.ih-editor .ih-idea-form { margin-top: 12px; }
.ih-workspace.ih-editor .ih-form-grid { gap: 10px 18px; }
.ih-workspace.ih-editor .ih-field textarea { min-height: 108px; }
.ih-workspace.ih-editor .ih-access-panel { margin: 16px 0 10px; padding-top: 12px; }
.ih-workspace.ih-editor .ih-form-actions { margin-top: 10px; padding-top: 10px; }
.ih-workspace.ih-detail .ih-description { margin: 12px 0 0; line-height: 1.65; }
.ih-workspace.ih-detail .ih-community { margin-top: 12px; }
.ih-workspace.ih-detail .ih-voting { padding-bottom: 8px; margin-bottom: 6px; }
.ih-workspace.ih-detail .ih-community .ih-moderation-panel { border-top: 0; border-bottom: 1px solid var(--ih-border); margin: 6px 0; padding: 4px 0; }
.ih-workspace.ih-detail .ih-community summary { min-height: 32px; }
.ih-workspace.ih-detail .ih-community h2 { margin: 16px 0 10px; }
.ih-workspace.ih-detail .ih-comment-form { margin: 10px 0; }
.ih-workspace.ih-detail .ih-detail-properties { padding: 16px; }
.ih-workspace.ih-detail .ih-detail-properties h2 { margin-bottom: 12px; }
.ih-workspace.ih-detail .ih-detail-properties dt { margin-top: 12px; }
.ih-workspace.ih-detail .ih-detail-properties dl { margin-bottom: 14px; }
.ih-workspace.ih-detail .ih-notification-settings { margin-bottom: 12px; }
.ih-workspace.ih-detail .ih-danger-zone { margin-top: 12px; }
.ih-foundation:is(.ih-admin,.ih-analytics,.ih-management) { padding: 18px 22px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-header { margin-bottom: 14px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-nav { margin-bottom: 18px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-about { margin-bottom: 18px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-about > summary { cursor: pointer; min-height: 40px; padding: 9px 12px; border: 1px solid #d8e2ed; border-radius: 7px; color: #082957; background: #fff; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-about[open] > summary { margin-bottom: 14px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-activity-heading { margin-top: 18px; }
@media(max-width:640px) {
 .ih-workspace.ih-detail .ih-workspace-main, .ih-workspace.ih-editor .ih-workspace-main { padding: 16px 12px; }
 .ih-workspace.ih-detail .ih-content-panel, .ih-workspace.ih-detail .ih-community, .ih-workspace.ih-editor .ih-editor-panel { padding: 14px; }
 .ih-workspace.ih-detail .ih-community summary { min-height: 44px; }
 .ih-foundation:is(.ih-admin,.ih-analytics,.ih-management) { padding: 16px; }
}
/* One spacing rhythm across boards, settings and both editors. */
.ih-foundation.ih-workspace { min-height: 0; }
.ih-workspace .ih-workspace-main { padding: 18px 22px; }
.ih-workspace .ih-page-header { margin-bottom: 18px; }
.ih-workspace .ih-stage-tabs { margin-bottom: 16px; }
.ih-workspace .ih-board-tools { padding: 14px 16px; }
.ih-workspace .ih-idea-table td { padding-block: 13px; }
.ih-workspace .ih-idea-card { padding-block: 16px; }
.ih-workspace .ih-editor-panel, .ih-workspace .ih-content-panel { padding: 16px 18px; }
.ih-workspace .ih-thread { padding-block: 14px; }
.ih-workspace .ih-followed-panel { margin-top: 20px; }
.ih-workspace .ih-pref-row { padding-block: 10px; }
.ih-workspace #ih-notification-preferences > button { margin-top: 16px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-panel { padding: 18px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-table :is(th,td) { padding-block: 12px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-comment { padding-block: 16px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-stats { margin-bottom: 18px; gap: 12px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-stat-card { padding: 16px; gap: 8px; }
.ih-foundation .ih-idea-form { container-type: inline-size; max-width: none; }
.ih-foundation .ih-compose-grid { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(0,1fr); gap: 24px; align-items: start; }
.ih-foundation .ih-compose-content, .ih-foundation .ih-compose-details { min-width: 0; }
.ih-foundation .ih-compose-content .ih-field textarea { min-height: 136px; }
.ih-foundation .ih-compose-details .ih-access-panel { margin: 16px 0 0; }
.ih-foundation .ih-compose-details > .ih-field { margin-top: 12px; }
@container (max-width:600px) {
 .ih-foundation .ih-compose-grid { grid-template-columns: minmax(0,1fr); gap: 14px; }
}
@media(max-width:640px) {
 .ih-workspace .ih-workspace-main { padding: 16px 12px; }
 .ih-workspace .ih-board-tools { padding: 14px; }
 .ih-workspace .ih-editor-panel, .ih-workspace .ih-content-panel { padding: 14px; }
 .ih-foundation .ih-compose-grid { grid-template-columns: minmax(0,1fr); gap: 14px; }
 :is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-panel { padding: 16px; }
}
.ih-workspace .ih-side-links a { gap: 8px; padding-inline: 10px; }
.ih-foundation .ih-compose-details .ih-form-grid { align-items: end; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-admin-table td.ih-admin-actions { white-space: nowrap; min-width: 210px; }

/* Keep filter text subordinate to idea titles across every board and admin list. */
.ih-foundation .ih-filters :is(input:not([type=hidden]),select,.btn),
.ih-workspace .ih-filter-reset { font-size: 13px; font-weight: 400; line-height: 1.5; }
.ih-foundation .ih-filters input::placeholder { font-size: inherit; }
@media (max-width: 640px) {
 /* Preserve native mobile focus without automatic browser zoom. */
 .ih-foundation .ih-filters :is(input:not([type=hidden]),select) { font-size: 16px; }
}

.ih-foundation .ih-current-state { display: inline-block; margin-inline-start: 12px; font-size: 12px; font-weight: 400; }
.ih-foundation .ih-vote-feedback:empty { display: none; }

/* Shared editor and community tabs: sections remain available without JavaScript. */
.ih-foundation .ih-tab-list { display:flex; flex-wrap:wrap; gap:4px; border-bottom:1px solid var(--ih-border); margin:0 0 16px; }
.ih-foundation .ih-tab-list button { appearance:none; border:0; border-bottom:2px solid transparent; border-radius:0; background:transparent; color:var(--ih-muted); font:inherit; font-size:14px; padding:10px 14px; min-height:44px; cursor:pointer; }
.ih-foundation .ih-tab-list button[aria-selected=true] { color:var(--ih-accent); border-bottom-color:var(--ih-accent); font-weight:600; }
.ih-foundation .ih-panel-heading { font-size:16px; margin:0 0 16px; }
.ih-foundation .ih-tabs-ready [data-ih-panel] > .ih-panel-heading { display:none; }
.ih-foundation .ih-editor-tabs .ih-idea-form { margin-top:0; }
.ih-foundation .ih-editor-tabs [data-ih-panel] { padding-block:4px; }
.ih-foundation .ih-editor-tabs .ih-field + .ih-field { margin-top:0; }
.ih-foundation #ih-editor-links .ih-field { margin-bottom:16px; }
.ih-foundation .ih-editor-current { display:flex; flex-wrap:wrap; gap:8px 24px; font-size:12px; color:var(--ih-muted); margin:0 0 16px; }
.ih-foundation .ih-editor-tabs .ih-community { margin:0; padding:0; border:0; background:transparent; }
.ih-foundation .ih-external-link { overflow-wrap:anywhere; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-tab-list button[aria-selected=true] { color:#082957; border-bottom-color:#082957; }
@media (max-width:640px) {
 .ih-foundation .ih-tab-list { gap:0; }
 .ih-foundation .ih-tab-list button { padding:10px; font-size:13px; }
}

/* Detail page: read the description first; voting remains available in the sidebar. */
.ih-workspace.ih-detail .ih-detail-content > .ih-community { margin-top:0; }
.ih-workspace.ih-detail .ih-detail-properties > .ih-community { margin:0 0 16px; padding:0 0 16px; border:0; border-bottom:1px solid var(--ih-border); border-radius:0; }
.ih-workspace.ih-detail .ih-detail-properties .ih-voting { display:flex; flex-direction:column; align-items:stretch; gap:10px; padding:0; margin:0; }
.ih-workspace.ih-detail .ih-detail-properties .ih-vote-summary { margin:0; }
.ih-workspace.ih-detail .ih-detail-properties #ih-vote { margin:0; }
.ih-workspace.ih-detail .ih-detail-properties .ih-vote-feedback { flex-basis:auto; }
@media (max-width:850px) {
 .ih-workspace.ih-detail .ih-detail-properties { grid-row:auto; }
}

.ih-foundation .ih-attachments { margin-top:20px; padding-top:12px; border-top:1px solid var(--ih-border); }
.ih-foundation .ih-attachments h2 { font-size:16px; }
.ih-foundation .ih-attachment-list { list-style:none; padding:0; }
.ih-foundation .ih-attachment-list li { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:8px 0; }
.ih-foundation .ih-attachment-list a { overflow-wrap:anywhere; }
.ih-foundation .ih-attachment-list button { margin-inline-start:auto; }
.ih-foundation .ih-attachments input[type=file] { display:block; width:100%; margin:8px 0; }
.ih-foundation [data-attachment-feedback]:empty { display:none; }

/* Read-only analytics, native GET filters and accessible numeric charts. */
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-filters { display:flex; flex-wrap:wrap; align-items:end; gap:12px; margin:0 0 12px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-filters label { display:flex; flex:1 1 150px; flex-direction:column; gap:5px; font-size:12px; color:var(--ih-muted); }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-filters select { width:100%; font-size:13px; min-height:40px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-stats .ih-stat-card { min-width:0; cursor:default; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-stats strong { font-size:28px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-status { list-style:none; margin:0; padding:0; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-status li { display:grid; grid-template-columns:minmax(120px,1fr) minmax(60px,1fr) 32px; align-items:center; gap:12px; padding:8px 0; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-status meter { width:100%; accent-color:#087c83; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-status strong { text-align:end; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-waiting { list-style:none; padding:0; margin:0; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-waiting li { display:flex; align-items:center; gap:12px; padding:10px 0; border-bottom:1px solid var(--ih-border); }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-waiting a { flex:1; min-width:0; text-decoration:none; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-waiting .ih-meta { display:block; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-totals { display:flex; flex-wrap:wrap; gap:12px 24px; margin:16px 0; font-size:14px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-scroll { max-width:100%; overflow-x:auto; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-scroll table { min-width:650px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-trend td { position:relative; min-width:90px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-trend td > span:last-child { position:relative; z-index:1; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-bar { position:absolute; inset:8px auto 8px 0; width:var(--ih-bar); max-width:100%; background:#d6eeeb; border-radius:3px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-trend td:nth-child(3) .ih-analytics-bar { background:#e4eafa; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-trend td:nth-child(5) .ih-analytics-bar { background:#f7e3de; }
@media(max-width:900px) { :is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-grid { grid-template-columns:minmax(0,1fr); } }
@media(max-width:640px) { :is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-filters select { font-size:16px; } :is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-status li { grid-template-columns:minmax(100px,1fr) minmax(40px,1fr) 24px; gap:8px; } }

/* Optional primary-button colors configured through native administrator options. */
.ih-workspace .btn-primary { background:var(--ih-primary-bg,var(--ih-accent)); border-color:var(--ih-primary-bg,var(--ih-accent)); color:var(--ih-primary-text,#fff); }
.ih-admin .btn-primary { background:var(--ih-primary-bg,#082957); border-color:var(--ih-primary-bg,#082957); color:var(--ih-primary-text,#fff); }
.ih-workspace .btn-primary:hover { background:var(--ih-primary-bg,#94182c); border-color:var(--ih-primary-bg,#94182c); color:var(--ih-primary-text,#fff); box-shadow:inset 0 0 0 999px #00000012; }
.ih-admin .btn-primary:hover { background:var(--ih-primary-bg,#082957); border-color:var(--ih-primary-bg,#082957); color:var(--ih-primary-text,#fff); box-shadow:inset 0 0 0 999px #00000012; }

:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-chart { max-height:360px; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-chart thead th { position:sticky; top:0; z-index:2; background:#f8f9fb; }
:is(.ih-admin,.ih-analytics,.ih-management) .ih-analytics-scroll:focus-visible { outline:2px solid #087c83; outline-offset:3px; }

/* Helix main-row spacing: keep IdeaHub directly below the site header only on workspace pages. */
body.com-ideahub #sp-main-body,
body.com_ideahub #sp-main-body { padding-top:0 !important; }
#sp-main-body:has(.ih-workspace) { padding-top:0 !important; }
.ih-foundation.ih-workspace { margin-top:0; }

/* Shared moderation queue and native-backed category workspace. */
.ih-review-sections { display:flex; gap:20px; margin:0 0 16px; border-bottom:1px solid var(--ih-border); }
.ih-review-sections a { display:inline-flex; align-items:center; gap:8px; padding:10px 0; min-height:44px; text-decoration:none; color:var(--ih-muted); border-bottom:2px solid transparent; }
.ih-review-sections a[aria-current] { color:var(--ih-accent); border-color:var(--ih-accent); font-weight:600; }
.ih-queue-panel { background:#fff; border:1px solid var(--ih-border); border-radius:9px; padding:16px; min-width:0; }
.ih-queue-filters { display:flex; flex-wrap:wrap; gap:10px; align-items:end; margin-bottom:16px; }
.ih-queue-filters label { display:flex; flex-direction:column; gap:5px; font-size:12px; flex:1 1 150px; margin:0; color:var(--ih-muted); }
.ih-queue-filters :is(input,select) { width:100%; min-height:40px; font-size:13px; margin:0; }
.ih-queue-filters > a { display:inline-flex; min-height:40px; align-items:center; font-size:13px; }
.ih-queue-summary { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 16px; padding-bottom:14px; border-bottom:1px solid var(--ih-border); font-size:13px; }
.ih-queue-summary .ih-meta { font-size:12px; color:var(--ih-muted); }
.ih-queue-card { padding:18px 0; border-bottom:1px solid var(--ih-border); min-width:0; }
.ih-queue-card:last-of-type { border-bottom:0; }
.ih-queue-card > header { display:flex; align-items:start; justify-content:space-between; gap:16px; margin:0 0 12px; }
.ih-queue-card h2 { font-size:15px; line-height:1.5; margin:0; }
.ih-queue-card h2 a { text-decoration:none; color:var(--ih-text); }
.ih-queue-card .ih-meta { color:var(--ih-muted); font-size:12px; margin:0 0 6px; }
.ih-queue-card .ih-badge { font-size:12px; white-space:nowrap; padding:4px 7px; border-radius:4px; }
.ih-queue-body { font-size:14px; line-height:1.65; overflow-wrap:anywhere; white-space:normal; margin:0 0 10px; }
.ih-queue-actions { display:flex; flex-wrap:wrap; align-items:end; gap:10px; margin:14px 0 0; }
.ih-queue-actions label { display:flex; flex-direction:column; gap:5px; font-size:12px; color:var(--ih-muted); margin:0; flex:0 1 190px; }
.ih-queue-actions .ih-queue-note { flex:1 1 220px; }
.ih-queue-actions :is(input,select) { width:100%; min-height:40px; font-size:13px; }
.ih-review-idea-meta { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.ih-review-idea-meta .btn { margin-left:auto; }
.ih-queue-empty { text-align:center; padding:36px 16px; color:var(--ih-muted); }
.ih-queue-empty > span { font-size:28px; color:#087c83; }
.ih-queue-empty h2 { font-size:17px; margin:10px 0; color:var(--ih-text); }
.ih-queue-empty p { font-size:13px; margin:0; }
.ih-category-top-actions,.ih-category-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-bottom:16px; }
.ih-category-top-actions form { margin:0; }
.ih-category-title { padding-inline-start:calc(var(--ih-level,0)*14px); }
.ih-category-title .ih-meta { display:block; margin-top:4px; font-weight:400; overflow-wrap:anywhere; }
.ih-category-table { min-width:650px; }
.ih-category-table :is(th,td):first-child { min-width:0; width:40px; }
.ih-category-table td:last-child { white-space:nowrap; }
.ih-category-batch { margin-top:16px; border-top:1px solid var(--ih-border); padding-top:14px; }
.ih-category-batch summary { cursor:pointer; font-size:14px; font-weight:600; padding:8px 0; }
.ih-category-editor .ih-form-actions { margin-top:18px; }
.ih-category-editor .rules { overflow-x:auto; max-width:100%; }
@media(max-width:640px) {
 .ih-queue-filters label,.ih-queue-actions label,.ih-queue-actions .ih-queue-note { flex:1 1 100%; }
 .ih-queue-filters :is(input,select),.ih-queue-actions :is(input,select) { font-size:16px; }
 .ih-queue-card > header { flex-wrap:wrap; gap:6px; }
 .ih-review-idea-meta .btn { margin-left:0; }
}

:is(.ih-admin,.ih-management) .ih-category-table :is(th,td):first-child { min-width:0; width:40px; }
:is(.ih-admin,.ih-management) .ih-category-table tbody th { background:#fff; font-size:14px; font-weight:600; color:#27313e; }

.ih-review-sections { flex-wrap:wrap; }
.ih-category-permissions > details { border:1px solid var(--ih-border); border-radius:6px; padding:10px 12px; margin-bottom:8px; }
.ih-category-permissions summary { font-size:14px; font-weight:600; cursor:pointer; }
.ih-category-permissions table { width:100%; border-collapse:collapse; margin-top:12px; font-size:13px; }
.ih-category-permissions :is(th,td) { padding:8px; text-align:left; border-bottom:1px solid var(--ih-border); }
.ih-category-permissions th { width:auto; }
.ih-category-permissions th:first-child { width:40%; }
.ih-category-permissions select { width:100%; min-height:40px; }
.ih-admin > .ih-admin-panel { margin-top:16px; }
.ih-management .ih-admin-table-wrap { max-width:100%; overflow-x:auto; }
@media(max-width:640px) { .ih-category-permissions select { font-size:16px; } }

.ih-category-editor textarea { min-height:100px; }
.ih-category-editor textarea[name="jform[description]"] { min-height:140px; }

.ih-admin .ih-mail-summary { display:grid; grid-template-columns:1fr auto; gap:8px 20px; max-width:360px; }
.ih-admin .ih-mail-summary dd { margin:0; font-weight:600; }

/* Dedicated administrator settings, inside the IdeaHub navigation shell. */
.ih-settings-form { min-width:0; }
.ih-settings-form .control-group { display:grid; grid-template-columns:minmax(180px,230px) minmax(0,1fr); gap:20px; margin:0 0 20px; }
.ih-settings-form .control-label { padding:0; float:none; width:auto; }
.ih-settings-form .controls { margin:0; min-width:0; }
.ih-settings-form .form-control,.ih-settings-form .form-select { max-width:640px; font-size:14px; }
.ih-settings-form .form-text { font-size:13px; }
.ih-settings-form #fieldset-permissions .control-group { display:block; }
@media (max-width:767px) { .ih-settings-form .control-group { grid-template-columns:minmax(0,1fr); gap:8px; } }

/* Compact backend density, scoped to IdeaHub administrator screens. */
.ih-foundation.ih-admin { padding:16px; --ih-button-height:36px; --ih-input-height:36px; }
.ih-admin .ih-admin-header { margin-bottom:12px; }
.ih-admin .ih-admin-nav { margin-bottom:14px; }
.ih-admin .ih-admin-nav a { min-height:36px; padding:6px 0; }
.ih-admin .ih-admin-panel { padding:16px; }
.ih-admin .ih-settings-form .control-group { margin-bottom:14px; gap:12px; }
.ih-admin .ih-settings-form .control-group:last-child { margin-bottom:0; }
.ih-admin .ih-settings-form .form-text { margin-top:4px; line-height:1.4; }
.ih-admin .btn { min-height:36px; padding:6px 12px; }
.ih-admin .ih-overview { margin-bottom:0; }
.ih-admin .ih-product-card { padding:18px; }
.ih-admin .ih-product-top img { width:230px; }
.ih-admin .ih-product-tagline { margin:12px 0 8px; }
.ih-admin .ih-product-copy { line-height:1.5; }
.ih-admin .ih-product-license { margin-top:12px; }
.ih-admin .ih-docs-heading { margin:16px 0 8px; }
.ih-admin .ih-documentation-card { padding:16px; }
.ih-admin .ih-documentation-card p { margin-bottom:10px; }
.ih-settings-form .ih-admin-panel { margin-bottom:12px; }
.ih-settings-form .ih-panel-heading { margin-bottom:14px; }
.ih-settings-form.ih-tabs-ready .ih-panel-heading { display:none; }
.ih-settings-form .ih-tab-list button { min-height:36px; padding:6px 12px; }
.ih-settings-form #permissions-sliders { min-width:0; }
.ih-settings-form #permissions-sliders > div[role=tablist] { flex-wrap:wrap; }
.ih-settings-form #fieldset-permissions .table-responsive { max-width:100%; overflow-x:auto; }
.ih-settings-permissions { max-width:100%; min-width:0; overflow-x:auto; }

.ih-email-status { border-bottom:1px solid #e3e6eb; margin-bottom:14px; padding-bottom:10px; }
.ih-email-status p { margin:8px 0; }
.ih-email-status .ih-mail-summary { margin:8px 0; }
.ih-email-status .ih-hint { margin-bottom:0; }
.ih-settings-form #jform_attachment_types { display:grid; grid-template-columns:repeat(auto-fit,minmax(100px,1fr)); gap:10px 14px; }
.ih-settings-form #jform_attachment_types .form-check { display:flex; align-items:center; gap:8px; padding:0; margin:0; }
.ih-settings-form #jform_attachment_types .form-check-input { float:none; flex:0 0 18px; width:18px; height:18px; min-height:0; margin:0; padding:0; border-radius:3px; }
.ih-settings-form #jform_attachment_types .form-check-label { margin:0; }
/* Personal list tools remain separate from voting and moderation forms. */
.ih-list-tools { border:1px solid var(--ih-border,#dce1e8); background:#fff; border-radius:8px; padding:10px 14px; margin-bottom:10px; }
.ih-list-tools summary { cursor:pointer; font-size:14px; font-weight:600; }
.ih-list-tools form { margin-top:12px; }
.ih-column-options { display:flex; flex-wrap:wrap; gap:8px 18px; padding:0; margin:0 0 10px; }
.ih-column-options legend,.ih-export-scope legend { font-size:14px; font-weight:600; line-height:1.5; margin-bottom:8px; }
.ih-column-options label,.ih-export-scope label,.ih-list-selection label { display:inline-flex; align-items:center; gap:7px; font-size:13px; }
.ih-list-tools :is(input[type=checkbox],input[type=radio]),.ih-list-selection input,.ih-row-select input,.ih-idea-table input[type=checkbox],:is(.ih-merge-form,.ih-unlink-form) input[type=checkbox] { width:17px; height:17px; min-height:0; padding:0; margin:0; flex:0 0 auto; }
.ih-export-scope { display:flex; flex-wrap:wrap; gap:10px 20px; padding:0; margin:14px 0; }
.ih-tool-buttons,.ih-preset-save,.ih-preset-open { display:flex; align-items:end; flex-wrap:wrap; gap:10px; }
.ih-tool-buttons .btn,.ih-list-tools .btn { min-height:34px; font-size:13px; padding:5px 10px; }
.ih-preset-save { padding-top:12px; border-top:1px solid #e3e6eb; }
.ih-preset-save label,.ih-preset-open label { display:grid; gap:4px; font-size:13px; }
.ih-list-selection { display:flex; align-items:center; gap:12px; padding:4px 0 10px; }
.ih-idea-card:has(.ih-row-select) { grid-template-columns:20px 46px minmax(0,1fr) 30px; gap:8px; }
.ih-idea-table td { max-width:420px; overflow-wrap:anywhere; }
.ih-merged { margin-top:20px; border-top:1px solid #e3e6eb; padding-top:14px; }
.ih-merged details { padding:10px 0; }.ih-merged-comment { border-left:2px solid #d8e2ed; margin:8px 0; padding:8px 12px; }
:is(.ih-merge-form,.ih-unlink-form) form,:is(.ih-merge-form,.ih-unlink-form) label { display:grid; gap:8px; }:is(.ih-merge-form,.ih-unlink-form) { margin-top:16px; }
.ih-notification-tests { margin-bottom:16px; }.ih-notification-tests p { font-size:13px; margin:8px 0; }.ih-test-results { width:100%; font-size:13px; border-collapse:collapse; }.ih-test-results :is(th,td) { padding:8px; border-bottom:1px solid #e3e6eb; text-align:left; }
@media(max-width:767px) { .ih-preset-save label,.ih-preset-open label { width:100%; }.ih-list-tools select,.ih-list-tools input { max-width:100%; }.ih-list-tools { padding:10px; } }
/* Structured personal-view tools: current view, columns/export, then account preferences. */
.ih-view-toolbar { display:flex; align-items:end; flex-wrap:wrap; gap:10px; margin:12px 0; }
.ih-view-toolbar .ih-preset-open { margin:0; flex:1; }
.ih-view-toolbar label { min-width:200px; }
.ih-list-tools-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px; align-items:start; }
.ih-column-editor,.ih-export-panel { border:1px solid #e3e6eb; border-radius:7px; padding:12px; min-width:0; }
.ih-list-tools h2 { font-size:14px; margin:0 0 10px; }
.ih-column-order { list-style:none; padding:0; margin:10px 0; display:grid; gap:6px; }
.ih-column-order li { display:grid; grid-template-columns:minmax(0,1fr) 48px auto; align-items:center; gap:8px; border-bottom:1px solid #eef0f4; padding:4px 0; }
.ih-column-order label { display:flex; align-items:center; gap:7px; font-size:13px; margin:0; }
.ih-column-order input[type=number] { width:48px; min-height:30px; padding:3px 4px; font-size:12px; }
.ih-column-order [data-order-controls] { display:flex; gap:3px; }
.ih-column-order button { background:#fff; color:#273241; border:1px solid #d7dce3; border-radius:4px; min-width:28px; height:30px; font-size:14px; }
.ih-column-order button:disabled { opacity:.4; cursor:default; }
.ih-preset-manager { border-top:1px solid #e3e6eb; margin-top:14px; padding-top:12px; }
.ih-preset-manager .ih-preset-save { padding:0; border:0; }
.ih-default-view { display:flex; align-items:end; flex-wrap:wrap; gap:10px; margin-top:12px; }
.ih-default-view label { display:grid; gap:4px; min-width:220px; font-size:13px; }
.ih-list-tools .ih-hint { margin:10px 0 0; font-size:12px; }
.ih-queue-health { border:1px solid #e3e6eb; border-radius:7px; padding:12px; margin-top:12px; }
.ih-queue-health h3 { font-size:15px; margin:0 0 8px; }
.ih-queue-task { display:grid; grid-template-columns:minmax(120px,1fr) minmax(0,2fr); gap:4px 12px; font-size:13px; }
.ih-queue-task dd { margin:0; }
@media(max-width:900px) { .ih-list-tools-grid { grid-template-columns:minmax(0,1fr); } }
@media(max-width:600px) { .ih-view-toolbar,.ih-default-view { align-items:stretch; }.ih-view-toolbar .ih-preset-open,.ih-default-view label { width:100%; min-width:0; }.ih-column-editor,.ih-export-panel { padding:10px; }.ih-column-order li { grid-template-columns:minmax(0,1fr) 45px auto; gap:5px; }.ih-queue-task { grid-template-columns:minmax(0,1fr); } }

/* Personal defaults follow Save/Remove in one compact action row. */
.ih-preset-row { display:grid; grid-template-columns:minmax(110px,1fr) auto auto minmax(170px,1fr) auto; align-items:end; gap:8px; }
.ih-preset-row .ih-preset-save,.ih-preset-row .ih-default-view { display:contents; }
.ih-preset-row .ih-preset-save label,.ih-preset-row .ih-default-view label { width:auto; min-width:0; }
.ih-preset-row input,.ih-preset-row select { width:100%; min-width:0; max-width:100%; box-sizing:border-box; }
.ih-preset-row .btn { padding-inline:10px; }
@media(max-width:900px) { .ih-preset-row { grid-template-columns:repeat(2,minmax(0,1fr)); }.ih-preset-row label { grid-column:1 / -1; }.ih-preset-row .ih-default-view button { grid-column:1 / -1; } }

/* Settings sections share one typographic scale regardless of heading level. */
.ih-settings-form :is(.ih-panel-heading,.ih-email-status h2,.ih-notification-tests h2,.ih-queue-health h3) { font-size:16px; line-height:1.4; font-weight:600; margin:0 0 10px; }
.ih-status-heading { display:flex; justify-content:space-between; align-items:start; flex-wrap:wrap; gap:10px; }
.ih-mail-actions { display:flex; align-items:start; gap:8px; flex-wrap:wrap; margin-left:auto; }
.ih-mail-actions details { max-width:340px; font-size:13px; }
.ih-mail-actions summary { list-style:none; cursor:pointer; }
.ih-mail-actions label { display:flex; gap:6px; align-items:center; margin-bottom:8px; }
.ih-mail-actions details[open] { padding:10px; border:1px solid #d7dce3; border-radius:6px; }
.ih-list-tools-grid { display:block; }
.ih-list-tools .ih-export-panel { margin-top:14px; border-top:1px solid #e3e6eb; padding-top:12px; }
.ih-list-tools .ih-export-panel .ih-export-scope { margin:0 0 8px; }

.ih-mail-actions details { margin:0; }
.ih-mail-actions details:not([open]) { border:0; background:transparent; padding:0; }

.ih-preset-row { grid-template-columns:minmax(160px,1fr) auto auto auto; }
.ih-delivery-log { border-top:1px solid #e3e6eb; padding-top:14px; margin-top:16px; }
.ih-settings-form .ih-delivery-log h2 { font-size:16px; line-height:1.4; font-weight:600; margin:0 0 10px; }
.ih-delivery-log .ih-tool-buttons label { display:grid; gap:4px; font-size:13px; }
.ih-delivery-log input[type=checkbox],.ih-delivery-log input[type=radio] { width:17px; height:17px; min-height:0; margin:0; }
.ih-log-delete-controls label { display:flex; align-items:center; gap:6px; margin:8px 0; }
@media(max-width:900px) { .ih-preset-row { grid-template-columns:repeat(2,minmax(0,1fr)); } }

.ih-preset-manager .ih-view-toolbar { margin-bottom:10px; }

/* Each optional tools section stays closed until explicitly opened. */
.ih-list-tools .ih-preset-manager { border:1px solid #e3e6eb; border-radius:7px; padding:12px; margin-top:14px; }
.ih-preset-manager > summary,.ih-export-panel > summary { font-size:14px; font-weight:600; line-height:1.5; cursor:pointer; }
.ih-preset-manager[open] > summary,.ih-export-panel[open] > summary { margin-bottom:10px; }
.ih-export-panel .ih-list-selection { padding:0 0 10px; }
/* Inline vote controls keep table rows compact, including multi-digit counts. */
.ih-workspace .ih-vote-tile,.ih-workspace .ih-number .ih-vote-tile { display:inline-flex; flex-direction:row; align-items:center; justify-content:center; width:auto; min-width:44px; min-height:32px; gap:5px; padding:4px 8px; }
.ih-workspace .ih-vote-tile > span { font-size:18px; line-height:1; }
.ih-workspace .ih-vote-tile strong { margin:0; line-height:1.2; }
@media(max-width:600px) { .ih-workspace .ih-vote-tile,.ih-workspace .ih-number .ih-vote-tile { min-height:36px; } }

.ih-mail-template-editor h2 { font-size:16px; font-weight:600; margin:0 0 10px; }
.ih-template-select { display:flex; align-items:end; flex-wrap:wrap; gap:10px; margin:12px 0; }
.ih-mail-template-editor label { display:grid; gap:5px; font-size:13px; margin:10px 0; }
.ih-mail-template-editor .ih-template-select > label { margin:0; }
.ih-mail-template-editor .ih-template-select :is(select,button) { box-sizing:border-box; height:40px; min-height:40px; margin:0; }
.ih-mail-template-editor input[type=checkbox] { width:17px; min-height:0; height:17px; margin:0; }
.ih-mail-template-editor .ih-template-enabled { display:flex; align-items:center; gap:7px; }
.ih-mail-template-editor textarea { width:100%; min-height:170px; font-size:13px; }
.ih-template-tokens { display:flex; flex-wrap:wrap; gap:6px; margin:8px 0; }
.ih-template-tokens code { font-size:12px; }
.ih-template-preview iframe { width:100%; min-height:260px; border:1px solid #d7dce3; background:#fff; }
.ih-template-preview pre { white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; }
.ih-settings-form.ih-tabs-ready:has(#fieldset-mailtemplates:not([hidden])) > button[type=submit] { display:none; }

/* Two-digit positions retain room beside native number steppers. */
.ih-column-order li { grid-template-columns:minmax(0,1fr) 72px auto; }
.ih-column-order input[type=number] { width:72px; min-width:0; padding:3px 6px; box-sizing:border-box; font-variant-numeric:tabular-nums; }
.ih-foundation .btn-secondary:not(:disabled):is(:hover,:focus-visible,:active) { color:#1f2937; background:#edf1f5; border-color:#8995a7; }
.ih-foundation .btn-secondary:focus-visible { outline:2px solid #49658c; outline-offset:2px; }
.ih-workspace:not(:has(.ih-list-tools[open] .ih-export-panel[open])) :is(.ih-selection-cell,.ih-row-select) { display:none; }

.ih-mail-template-editor :is(h2,h3) { font-size:16px; line-height:1.4; font-weight:600; margin:10px 0; }
#fieldset-mailtemplates { scroll-margin-top:90px; }

.ih-delivery-log .ih-tool-buttons label { min-width:0; max-width:100%; flex:1 1 180px; }
.ih-delivery-log .ih-tool-buttons select { min-width:0; max-width:100%; width:100%; }

.ih-workspace :is(.ih-vote-tile,.ih-vote-total) > .ih-vote-icon { display:inline-flex; align-items:center; justify-content:center; width:12px; height:12px; line-height:1; flex:0 0 12px; align-self:center; }
.ih-workspace .ih-vote-icon svg { display:block; }

.ih-import :is(h2,h3) { font-size:16px; line-height:1.4; margin:20px 0 10px; }
.ih-import-upload { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.ih-import-upload input[type=file] { width:auto; max-width:100%; min-width:0; }
.ih-import-mapping { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:12px; margin:12px 0; }
.ih-import-mapping label { display:grid; gap:5px; font-size:13px; min-width:0; }
.ih-import-mapping select { width:100%; min-width:0; }
.ih-import-confirm { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-top:16px; }
.ih-import-confirm label { display:flex; gap:7px; align-items:center; }
.ih-import input[type=checkbox] { width:17px; min-height:17px; height:17px; margin:0; }
.ih-import .ih-table td { overflow-wrap:anywhere; }
.ih-import .ih-table { width:100%; border-collapse:collapse; font-size:13px; }
.ih-import .ih-table :is(th,td) { padding:10px 8px; text-align:left; vertical-align:top; border-bottom:1px solid #e5e7eb; overflow-wrap:anywhere; }
.ih-import .ih-table th { background:#f8f9fb; font-weight:600; }
.ih-import-defaults { margin:12px 0; }
.ih-import-defaults summary { font-size:13px; font-weight:600; cursor:pointer; }

/* A personal follow star stays with the mandatory title in every list layout. */
.ih-workspace .ih-idea-heading { display:flex; gap:6px; align-items:center; min-width:0; }
.ih-workspace .ih-idea-heading > :is(a,h2) { min-width:0; overflow-wrap:anywhere; }
.ih-workspace .ih-card-content .ih-idea-heading { margin:7px 0; }
.ih-workspace .ih-card-content .ih-idea-heading h2 { margin:0; }
.ih-workspace .ih-follow-star-form { display:inline-flex; flex:0 0 auto; align-self:flex-start; margin:-4px 0; }
.ih-workspace .ih-follow-star { display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; width:32px; height:32px; min-height:32px; padding:5px; border:1px solid transparent; border-radius:5px; background:transparent; color:#626b7a; cursor:pointer; }
.ih-workspace .ih-follow-star svg { display:block; fill:none; stroke:currentColor; }
.ih-workspace .ih-follow-star.is-following { color:#855600; }
.ih-workspace .ih-follow-star.is-following svg { fill:#ffc83d; }
.ih-workspace .ih-follow-star:not(:disabled):hover { background:#fff5d9; color:#714800; border-color:#b58126; }
.ih-workspace .ih-follow-star:focus-visible { outline:2px solid #405a90; outline-offset:2px; }
.ih-workspace .ih-follow-star:disabled { cursor:wait; opacity:.65; }

.ih-workspace .ih-idea-table .ih-date-cell { white-space:nowrap; font-variant-numeric:tabular-nums; }

.ih-foundation .ih-picker-tools{display:flex;gap:.5rem;align-items:end;flex-wrap:wrap;margin-bottom:.5rem}
.ih-foundation .ih-picker-tools label{flex:1 1 15rem;min-width:0;margin:0}
.ih-foundation .ih-idea-picker select{width:100%;min-width:0;max-width:100%}
.ih-foundation .ih-picker-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}

.ih-workspace.ih-preferences .ih-page-header > div { flex:1; min-width:0; }
.ih-workspace.ih-preferences .ih-page-intro { max-width:none; }

/* Followed ideas use the same card width and quiet typography as preferences. */
.ih-preferences .ih-followed-panel { box-sizing:border-box; max-width:850px; margin-top:18px; border:1px solid var(--ih-border); border-radius:10px; background:#fff; overflow:hidden; }
.ih-preferences .ih-followed-header { display:flex; align-items:center; gap:10px; padding:15px 18px; border-bottom:1px solid var(--ih-border); }
.ih-preferences .ih-followed-header h2 { margin:0; font-size:16px; line-height:1.4; }
.ih-preferences .ih-followed-count { min-width:26px; padding:2px 8px; border-radius:12px; background:#f0f2f5; color:#526074; font-size:12px; text-align:center; }
.ih-preferences .ih-followed-list { margin:0; padding:0; }
.ih-preferences .ih-followed-list li { display:grid; grid-template-columns:20px minmax(0,1fr) auto; align-items:center; gap:12px; padding:12px 18px; border-bottom:1px solid #edf0f4; }
.ih-preferences .ih-followed-list li:last-child { border-bottom:0; }
.ih-preferences .ih-followed-star { fill:#ffc83d; stroke:#855600; stroke-width:1.5; flex-shrink:0; }
.ih-preferences .ih-followed-idea { min-width:0; }
.ih-preferences .ih-followed-idea a { color:#273241; font-size:14px; line-height:1.5; font-weight:600; text-decoration:none; overflow-wrap:anywhere; }
.ih-preferences .ih-followed-idea a:hover { color:var(--ih-accent); text-decoration:underline; }
.ih-preferences .ih-followed-reference { display:block; margin-top:2px; color:#626b7a; font-size:12px; line-height:1.4; overflow-wrap:anywhere; }
.ih-preferences .ih-followed-panel .btn { min-height:32px; padding:5px 10px; font-size:12px; line-height:1.5; }
.ih-preferences .ih-followed-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:12px 18px; border-top:1px solid var(--ih-border); background:#fafbfc; }
.ih-preferences .ih-followed-footer .ih-pagination { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:0; }
.ih-preferences .ih-followed-footer .ih-pagination p { margin:0; color:#626b7a; font-size:12px; }
.ih-preferences .ih-followed-pages { display:flex; gap:6px; }
.ih-preferences .ih-followed-clear { margin:0 0 0 auto; }
.ih-preferences .ih-followed-clear .btn { border-color:transparent; background:transparent; color:#8b1930; }
.ih-preferences .ih-followed-clear .btn:hover { background:#fceef1; text-decoration:underline; }
.ih-preferences .ih-followed-empty { margin:0; padding:24px 18px; color:#626b7a; font-size:14px; }
@media(max-width:600px) {
 .ih-preferences .ih-followed-header,.ih-preferences .ih-followed-footer { padding:12px 14px; }
 .ih-preferences .ih-followed-list li { grid-template-columns:20px minmax(0,1fr); gap:8px 10px; padding:12px 14px; }
 .ih-preferences .ih-followed-list form { grid-column:2; justify-self:start; }
 .ih-preferences .ih-followed-panel .btn { min-height:40px; }
 .ih-preferences .ih-followed-clear { margin-left:0; }
}

/* Settings use their own in-page actions; omit Atum's empty toolbar and mobile toggle. */
body.admin.com_ideahub.view-settings :is(#subhead-container, .toggler-toolbar) { display:none; }

.ih-settings-form .ih-managed-group h3 { font-size:16px; line-height:1.4; font-weight:600; margin:0 0 10px; }
/* Analytics topics share one filtered dataset and a native, accessible line chart. */
.ih-analytics .ih-analytics-filters { grid-template-columns:repeat(3,minmax(140px,1fr)) auto; }
.ih-analytics [data-ih-panel] { min-width:0; }
.ih-line-scroll { overflow-x:auto; max-width:100%; border:1px solid #e3e6eb; border-radius:8px; background:#fff; }
.ih-line-chart { display:block; width:100%; min-width:640px; color:#526074; }
.ih-line-chart text { fill:#526074; font:12px system-ui,sans-serif; }
.ih-chart-grid { stroke:#e2e7ed; stroke-width:1; }
.ih-chart-series { stroke:currentColor; stroke-width:2.5; fill:none; stroke-linejoin:round; }
.ih-chart-point { fill:currentColor; }
.ih-line-ideas { color:#007b88; }
.ih-line-implemented { color:#b6193b; }
.ih-chart-series.ih-line-implemented { stroke-dasharray:7 4; }
.ih-line-legend { display:flex; flex-wrap:wrap; gap:12px 24px; margin:16px 0 10px; font-size:14px; }
.ih-line-legend > span { display:inline-flex; align-items:center; gap:8px; }
.ih-line-legend i { display:inline-block; width:24px; border-top:3px solid currentColor; }
.ih-line-legend .ih-line-implemented i { border-top-style:dashed; }
.ih-line-data { margin-top:12px; }
.ih-line-data summary { cursor:pointer; font-size:13px; font-weight:600; }
.ih-analytics-wait-filter { display:flex; align-items:end; gap:12px; margin-bottom:16px; }
.ih-analytics-wait-filter label { display:flex; flex-direction:column; gap:6px; }
@media(max-width:700px){.ih-analytics .ih-analytics-filters{grid-template-columns:minmax(0,1fr);}.ih-analytics-wait-filter{flex-wrap:wrap;}}
