/* ════════════════════════════════════════════════════════════════
   Interview Management module styles — Frappe/ERPNext desk vocabulary
   ════════════════════════════════════════════════════════════════ */

.iv-muted-sm { font-size: 12px; color: var(--ink-gray-5); }
.iv-id { font-family: var(--font-mono); font-size: 11px; color: var(--ink-gray-6); letter-spacing: 0; }
.iv-over { color: var(--ink-red-4); font-weight: 500; }
.iv-section-note { font-weight: 420; text-transform: none; letter-spacing: 0.01em; color: var(--ink-gray-4); margin-left: 8px; }

.iv-mode { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; color: var(--ink-gray-7); }
.iv-mode svg { color: var(--ink-gray-5); }
.iv-sla { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; }
.iv-sla-ok { color: var(--ink-gray-5); }
.iv-sla-overdue { color: var(--ink-red-4); font-weight: 500; }

/* ── top controls ── */
.iv-chips { align-items: center; }
.iv-daterange { display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 10px; border: 1px solid var(--outline-gray-2); border-radius: 6px; font-size: 13px; color: var(--ink-gray-7); cursor: pointer; background: var(--surface-white); }
.iv-daterange:hover { border-color: var(--outline-gray-3); }
.iv-daterange svg { color: var(--ink-gray-5); }
.iv-action-split { display: inline-flex; align-items: center; gap: 2px; padding-right: 6px; margin-right: 2px; border-right: 1px solid var(--outline-gray-2); }

.iv-viewtoggle { display: inline-flex; background: var(--surface-gray-2); border-radius: 7px; padding: 2px; gap: 2px; }
.iv-vt-btn { display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 10px; border: 0; background: transparent; border-radius: 5px; font: inherit; font-size: 12px; color: var(--ink-gray-6); cursor: pointer; }
.iv-vt-btn:hover { color: var(--ink-gray-9); }
.iv-vt-btn.is-active { background: var(--surface-white); color: var(--ink-gray-9); font-weight: 500; box-shadow: var(--shadow-sm); }

.iv-filter-row { align-items: center; }
.iv-filter-tag { display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 4px 0 10px; background: var(--surface-white); border: 1px solid var(--outline-gray-2); border-radius: 6px; font-size: 12px; }
.iv-filter-tag .rq-filter-tag-key { color: var(--ink-gray-8); font-weight: 500; }
.iv-filter-tag .rq-filter-tag-op { color: var(--ink-gray-4); }
.iv-filter-select { border: 0; background: var(--surface-gray-2); border-radius: 4px; height: 22px; font: inherit; font-size: 12px; color: var(--ink-gray-8); padding: 0 4px; cursor: pointer; outline: 0; }
.iv-filter-clear { background: transparent; border: 0; font: inherit; font-size: 12px; color: var(--ink-gray-5); cursor: pointer; }
.iv-filter-clear:hover { color: var(--ink-gray-9); }

/* role switcher */
.iv-roleswitch { position: relative; }
.iv-roleswitch-btn { display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 8px; border: 1px solid var(--outline-gray-2); border-radius: 6px; background: var(--surface-white); font: inherit; font-size: 12px; color: var(--ink-gray-6); cursor: pointer; }
.iv-roleswitch-btn:hover { border-color: var(--outline-gray-3); }
.iv-roleswitch-btn strong { color: var(--ink-gray-9); font-weight: 500; }
.iv-roleswitch-btn svg:first-child { color: var(--ink-gray-4); }
.iv-roleswitch-menu { position: absolute; top: 32px; right: 0; z-index: 50; width: 220px; background: var(--surface-white); border: 1px solid var(--outline-gray-2); border-radius: 8px; box-shadow: var(--shadow-lg); padding: 4px; }
.iv-roleswitch-label { font-size: 11px; color: var(--ink-gray-5); padding: 6px 8px 4px; }
.iv-roleswitch-item { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 7px 8px; border: 0; background: transparent; border-radius: 5px; font: inherit; font-size: 13px; color: var(--ink-gray-8); cursor: pointer; text-align: left; }
.iv-roleswitch-item:hover { background: var(--surface-gray-2); }
.iv-roleswitch-item.is-active { color: var(--ink-blue-3); font-weight: 500; }

/* ── LIST TABLE ── */
.iv-list { background: var(--surface-white); border: 1px solid var(--outline-gray-1); border-radius: 8px; overflow: hidden; }
.iv-list-head, .iv-list-row { display: grid; align-items: center; gap: 12px;
  grid-template-columns: 28px 1.5fr 1.5fr 1.2fr 1.1fr 88px 96px 1.05fr 1fr 1fr 88px; padding: 9px 16px; }
.iv-list-head { background: var(--surface-gray-1); border-bottom: 1px solid var(--outline-gray-2); font-size: 11px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.04em; color: var(--ink-gray-5); }
.iv-list-row { border-bottom: 1px solid var(--outline-gray-1); cursor: pointer; transition: background 60ms; }
.iv-list-row:last-child { border-bottom: 0; }
.iv-list-row:hover { background: var(--surface-gray-1); }
.iv-list-row.is-sel { background: var(--surface-blue-1); }
.iv-cell-id { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.iv-id-open { font-size: 13px; color: var(--ink-gray-8); font-weight: 420; }
.iv-cell-cand { display: flex; align-items: center; gap: 8px; min-width: 0; }
.iv-cand-meta { display: flex; flex-direction: column; min-width: 0; }
.iv-cand-name { font-size: 13px; font-weight: 500; color: var(--ink-gray-9); }
.iv-cand-sub { font-size: 11px; color: var(--ink-gray-5); }
.iv-cell-round { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.iv-round-name { font-size: 13px; color: var(--ink-gray-8); }
.iv-round-type { font-size: 11px; color: var(--ink-gray-5); }
.iv-cell-sched { display: flex; flex-direction: column; gap: 1px; }
.iv-sched-date { font-size: 13px; color: var(--ink-gray-8); font-variant-numeric: tabular-nums; }
.iv-sched-rel { font-size: 11px; color: var(--ink-gray-5); }
.iv-cell-panel { display: flex; align-items: center; gap: 4px; }
.iv-panel-stack { display: inline-flex; }
.iv-panel-stack .rq-avatar { margin-right: -6px; border: 2px solid var(--surface-white); }
.iv-panel-n { font-size: 11px; color: var(--ink-gray-5); margin-left: 8px; }

.iv-empty { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 56px 16px; color: var(--ink-gray-4); }
.iv-empty svg { color: var(--ink-gray-3); }
.iv-empty-title { font-size: 14px; font-weight: 500; color: var(--ink-gray-7); }
.iv-empty-sub { font-size: 12px; color: var(--ink-gray-5); }
.iv-empty-inline { padding: 32px 16px; }

/* ── tint backgrounds for cards (status) ── */
.iv-tint-gray   { --iv-tint: var(--surface-gray-2);  --iv-bar: var(--ink-gray-4); }
.iv-tint-blue   { --iv-tint: var(--surface-blue-2);  --iv-bar: var(--blue-500); }
.iv-tint-green  { --iv-tint: var(--surface-green-2); --iv-bar: var(--ink-green-3); }
.iv-tint-orange { --iv-tint: var(--surface-amber-2); --iv-bar: var(--ink-amber-3); }
.iv-tint-red    { --iv-tint: var(--surface-red-2);   --iv-bar: var(--ink-red-4); }

/* ── CALENDAR ── */
.iv-cal { display: grid; grid-template-columns: repeat(7, 1fr); gap: 8px; }
.iv-cal-col { background: var(--surface-white); border: 1px solid var(--outline-gray-1); border-radius: 8px; overflow: hidden; min-height: 360px; }
.iv-cal-col.is-today { border-color: var(--outline-blue-1); }
.iv-cal-colhead { display: flex; align-items: center; gap: 6px; padding: 8px 10px; border-bottom: 1px solid var(--outline-gray-1); background: var(--surface-gray-1); }
.iv-cal-col.is-today .iv-cal-colhead { background: var(--surface-blue-1); }
.iv-cal-dow { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--ink-gray-5); }
.iv-cal-day { font-size: 14px; font-weight: 600; color: var(--ink-gray-9); }
.iv-cal-n { margin-left: auto; font-size: 11px; color: var(--ink-gray-5); background: var(--surface-gray-2); border-radius: 99px; padding: 0 6px; }
.iv-cal-body { padding: 6px; display: flex; flex-direction: column; gap: 6px; }
.iv-cal-empty { text-align: center; color: var(--ink-gray-3); font-size: 12px; padding: 12px 0; }
.iv-cal-card { text-align: left; border: 0; border-left: 3px solid var(--iv-bar); background: var(--iv-tint); border-radius: 5px; padding: 6px 8px; cursor: pointer; display: flex; flex-direction: column; gap: 1px; }
.iv-cal-card:hover { filter: brightness(0.97); }
.iv-cal-card-time { font-size: 11px; color: var(--ink-gray-6); font-variant-numeric: tabular-nums; }
.iv-cal-card-name { font-size: 12px; font-weight: 600; color: var(--ink-gray-9); }
.iv-cal-card-round { font-size: 11px; color: var(--ink-gray-6); }
.iv-cal-card-foot { display: flex; align-items: center; justify-content: space-between; margin-top: 2px; }

/* ── PANEL MATRIX ── */
.iv-matrix-wrap { display: grid; grid-template-columns: 1fr 240px; gap: 12px; align-items: start; }
.iv-matrix { background: var(--surface-white); border: 1px solid var(--outline-gray-1); border-radius: 8px; overflow: auto; }
.iv-matrix-grid { display: grid; min-width: 980px; }
.iv-matrix-corner, .iv-matrix-slothead { position: sticky; top: 0; z-index: 2; background: var(--surface-gray-1); border-bottom: 1px solid var(--outline-gray-2); padding: 8px 10px; font-size: 11px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.03em; color: var(--ink-gray-5); }
.iv-matrix-slothead { text-align: center; border-left: 1px solid var(--outline-gray-1); font-variant-numeric: tabular-nums; }
.iv-matrix-corner { left: 0; z-index: 3; }
.iv-matrix-rowhead { position: sticky; left: 0; z-index: 1; display: flex; align-items: center; gap: 8px; padding: 8px 10px; background: var(--surface-white); border-bottom: 1px solid var(--outline-gray-1); border-right: 1px solid var(--outline-gray-2); }
.iv-matrix-iv { min-width: 0; flex: 1; }
.iv-matrix-iv-name { font-size: 12px; font-weight: 500; color: var(--ink-gray-9); }
.iv-matrix-iv-role { font-size: 11px; color: var(--ink-gray-5); }
.iv-matrix-load { font-size: 11px; color: var(--ink-gray-5); background: var(--surface-gray-2); border-radius: 99px; padding: 1px 6px; font-variant-numeric: tabular-nums; }
.iv-matrix-load.is-over { background: var(--surface-red-2); color: var(--ink-red-4); }
.iv-matrix-cell { border-bottom: 1px solid var(--outline-gray-1); border-left: 1px solid var(--outline-gray-1); padding: 4px; min-height: 56px; }
.iv-matrix-cell.is-free { background: repeating-linear-gradient(45deg, transparent, transparent 6px, var(--surface-gray-1) 6px, var(--surface-gray-1) 7px); }
.iv-matrix-cell.is-conflict { background: var(--surface-red-1); }
.iv-mx-card { position: relative; display: flex; background: var(--iv-tint); border-left: 3px solid var(--iv-bar); border-radius: 5px; margin-bottom: 4px; }
.iv-mx-card.is-live { box-shadow: 0 0 0 2px var(--outline-amber-2); }
.iv-mx-card-main { flex: 1; min-width: 0; text-align: left; border: 0; background: transparent; padding: 5px 6px; cursor: pointer; }
.iv-mx-card-name { font-size: 11.5px; font-weight: 600; color: var(--ink-gray-9); }
.iv-mx-card-sub { font-size: 10.5px; color: var(--ink-gray-6); }
.iv-mx-card-tags { display: flex; align-items: center; gap: 4px; margin-top: 2px; }
.iv-mx-mode { font-size: 10px; color: var(--ink-gray-5); }
.iv-mx-fb { font-size: 9px; font-weight: 600; color: var(--ink-amber-3); background: var(--surface-amber-2); border-radius: 3px; padding: 0 3px; }
.iv-live-dot { width: 6px; height: 6px; border-radius: 99px; background: var(--ink-amber-3); animation: iv-pulse 1.4s infinite; }
@keyframes iv-pulse { 0%,100% { opacity: 1; } 50% { opacity: 0.3; } }
.iv-mx-card-menu { border: 0; background: transparent; padding: 2px 4px; color: var(--ink-gray-5); cursor: pointer; align-self: flex-start; }
.iv-mx-card-menu:hover { color: var(--ink-gray-9); }
.iv-mx-menu { position: absolute; top: 22px; right: 0; z-index: 20; width: 168px; background: var(--surface-white); border: 1px solid var(--outline-gray-2); border-radius: 8px; box-shadow: var(--shadow-lg); padding: 4px; }
.iv-mx-menu button { display: flex; align-items: center; gap: 8px; width: 100%; padding: 6px 8px; border: 0; background: transparent; border-radius: 5px; font: inherit; font-size: 12px; color: var(--ink-gray-8); cursor: pointer; text-align: left; }
.iv-mx-menu button:hover { background: var(--surface-gray-2); }
.iv-mx-menu button.is-danger { color: var(--ink-red-4); }
.iv-mx-menu svg { color: var(--ink-gray-5); }

.iv-matrix-side { display: flex; flex-direction: column; gap: 12px; }
.iv-side-block { background: var(--surface-white); border: 1px solid var(--outline-gray-1); border-radius: 8px; padding: 12px; }
.iv-side-title { display: flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; color: var(--ink-gray-5); margin-bottom: 10px; }
.iv-side-badge { margin-left: auto; font-size: 11px; background: var(--surface-gray-2); border-radius: 99px; padding: 0 6px; color: var(--ink-gray-6); }
.iv-side-load { margin-bottom: 8px; }
.iv-side-load-top { display: flex; justify-content: space-between; font-size: 12px; color: var(--ink-gray-7); margin-bottom: 3px; }
.iv-side-bar { height: 5px; background: var(--surface-gray-2); border-radius: 99px; overflow: hidden; }
.iv-side-bar span { display: block; height: 100%; background: var(--blue-500); border-radius: 99px; }
.iv-side-bar span.is-over { background: var(--ink-red-4); }
.iv-side-row { display: flex; align-items: center; gap: 8px; width: 100%; padding: 6px 8px; border: 0; background: transparent; border-radius: 5px; font: inherit; font-size: 12px; color: var(--ink-gray-8); cursor: pointer; text-align: left; }
.iv-side-row:hover { background: var(--surface-gray-2); }
.iv-side-row svg { color: var(--ink-gray-5); flex-shrink: 0; }
.iv-side-row .fui-badge { margin-left: auto; }
.iv-side-empty { font-size: 12px; color: var(--ink-gray-4); padding: 4px 0; }

/* ── CANDIDATE QUEUE ── */
.iv-queue { display: flex; flex-direction: column; gap: 14px; }
.iv-queue-bulkbar { display: flex; align-items: center; gap: 6px; padding: 8px 12px; background: var(--surface-white); border: 1px solid var(--outline-gray-1); border-radius: 8px; }
.iv-queue-bulk-label { font-size: 13px; font-weight: 500; color: var(--ink-gray-7); margin-right: 4px; }
.iv-qgroup { background: var(--surface-white); border: 1px solid var(--outline-gray-1); border-radius: 8px; overflow: hidden; }
.iv-qgroup-head { display: flex; align-items: center; gap: 8px; padding: 9px 14px; background: var(--surface-gray-1); border-bottom: 1px solid var(--outline-gray-1); }
.iv-qgroup-dot { width: 8px; height: 8px; border-radius: 99px; }
.iv-qg-await { background: var(--ink-gray-4); } .iv-qg-today { background: var(--blue-500); }
.iv-qg-progress { background: var(--ink-amber-3); } .iv-qg-fb { background: var(--ink-amber-3); }
.iv-qg-noshow { background: var(--ink-red-4); } .iv-qg-resched { background: var(--ink-amber-3); }
.iv-qgroup-title { font-size: 13px; font-weight: 600; color: var(--ink-gray-9); }
.iv-qgroup-count { font-size: 11px; color: var(--ink-gray-5); background: var(--surface-gray-2); border-radius: 99px; padding: 1px 7px; }
.iv-qtable { display: flex; flex-direction: column; }
.iv-qrow { display: grid; align-items: center; gap: 10px; grid-template-columns: 28px 1.4fr 1.4fr 1.2fr 70px 1fr 1.1fr 1fr 80px; padding: 9px 14px; border-bottom: 1px solid var(--outline-gray-1); cursor: pointer; }
.iv-qrow:last-child { border-bottom: 0; }
.iv-qrow:hover:not(.iv-qrow-head) { background: var(--surface-gray-1); }
.iv-qrow-head { font-size: 11px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.03em; color: var(--ink-gray-5); cursor: default; background: transparent; }
.iv-qcand { display: flex; align-items: center; gap: 7px; min-width: 0; font-size: 13px; color: var(--ink-gray-9); font-weight: 500; }
.iv-qmuted { font-size: 12px; color: var(--ink-gray-5); }
.iv-qscore { font-size: 13px; font-weight: 600; color: var(--ink-gray-8); font-variant-numeric: tabular-nums; }
.iv-qpanel { display: flex; align-items: center; gap: 6px; font-size: 12px; color: var(--ink-gray-7); min-width: 0; }
.iv-prio { font-size: 11px; font-weight: 500; padding: 1px 7px; border-radius: 99px; }
.iv-prio-high { background: var(--surface-red-2); color: var(--ink-red-4); }
.iv-prio-normal { background: var(--surface-gray-2); color: var(--ink-gray-6); }

/* ── DRAWER ── */
.iv-drawer-backdrop { position: fixed; inset: 0; background: rgba(0,0,0,0.28); z-index: 150; display: flex; justify-content: flex-end; animation: fui-fade 120ms ease-out; }
.iv-drawer { width: 460px; max-width: 92vw; height: 100%; background: var(--surface-white); border-left: 1px solid var(--outline-gray-2); display: flex; flex-direction: column; box-shadow: var(--shadow-2xl); animation: iv-slidein 160ms ease-out; }
@keyframes iv-slidein { from { transform: translateX(24px); opacity: 0.6; } }
.iv-drawer-head { padding: 14px 16px 12px; border-bottom: 1px solid var(--outline-gray-1); }
.iv-drawer-head-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.iv-drawer-head-actions { display: flex; gap: 2px; }
.iv-drawer-title { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.iv-drawer-name { font-size: 16px; font-weight: 600; color: var(--ink-gray-9); }
.iv-drawer-sub { font-size: 12px; color: var(--ink-gray-5); }
.iv-drawer-pills { display: flex; flex-wrap: wrap; gap: 6px; }
.iv-drawer-body { flex: 1; overflow-y: auto; padding: 4px 0; }
.iv-drawer-section { border-bottom: 1px solid var(--outline-gray-1); }
.iv-drawer-section-head { display: flex; align-items: center; gap: 8px; width: 100%; padding: 11px 16px; border: 0; background: transparent; cursor: pointer; }
.iv-drawer-section-head svg { color: var(--ink-gray-5); }
.iv-drawer-section-title { flex: 1; text-align: left; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; color: var(--ink-gray-6); }
.iv-drawer-caret { color: var(--ink-gray-4); transition: transform 120ms; }
.iv-drawer-caret.is-open { transform: rotate(180deg); }
.iv-drawer-section-body { padding: 2px 16px 14px; }
.iv-drow { display: flex; gap: 12px; padding: 4px 0; font-size: 13px; }
.iv-drow-k { width: 116px; flex-shrink: 0; color: var(--ink-gray-5); }
.iv-drow-v { flex: 1; color: var(--ink-gray-8); min-width: 0; word-break: break-word; }
.iv-link { color: var(--ink-blue-3); display: inline-flex; align-items: center; gap: 4px; }
.iv-drawer-panelist { display: flex; align-items: center; gap: 8px; padding: 6px 0; }
.iv-drawer-panelist-meta { flex: 1; min-width: 0; }
.iv-drawer-panelist-name { font-size: 13px; font-weight: 500; color: var(--ink-gray-9); display: flex; align-items: center; gap: 6px; }
.iv-drawer-panelist-role { font-size: 11px; color: var(--ink-gray-5); }
.iv-drawer-panelist-status { display: flex; flex-direction: column; align-items: flex-end; gap: 3px; }
.iv-lead-tag { font-size: 10px; font-weight: 500; color: var(--ink-blue-3); background: var(--surface-blue-2); border-radius: 3px; padding: 0 4px; text-transform: uppercase; letter-spacing: 0.03em; }
.iv-calresp { font-size: 11px; }
.iv-calresp-accepted { color: var(--ink-green-3); }
.iv-calresp-declined { color: var(--ink-red-4); }
.iv-calresp-pending { color: var(--ink-gray-5); }
.iv-logi { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; }
.iv-logi-green { color: var(--ink-green-3); } .iv-logi-red { color: var(--ink-red-4); }
.iv-logi-gray { color: var(--ink-gray-5); } .iv-logi-amber { color: var(--ink-amber-3); }
.iv-logi-error { display: flex; align-items: center; gap: 8px; margin-top: 8px; padding: 8px 10px; background: var(--surface-red-1); border: 1px solid var(--outline-red-1); border-radius: 6px; font-size: 12px; color: var(--ink-red-4); }
.iv-logi-error svg { flex-shrink: 0; }
.iv-logi-retry { margin-left: auto; display: inline-flex; align-items: center; gap: 4px; background: var(--surface-white); border: 1px solid var(--outline-red-1); border-radius: 5px; padding: 3px 7px; font: inherit; font-size: 11px; color: var(--ink-red-4); cursor: pointer; }
.iv-comm-row { display: flex; align-items: center; gap: 8px; padding: 6px 0; }
.iv-comm-status { width: 7px; height: 7px; border-radius: 99px; flex-shrink: 0; background: var(--ink-gray-4); }
.iv-comm-sent { background: var(--ink-gray-4); } .iv-comm-delivered { background: var(--blue-500); }
.iv-comm-opened { background: var(--ink-green-3); } .iv-comm-failed { background: var(--ink-red-4); }
.iv-comm-meta { flex: 1; min-width: 0; }
.iv-comm-tpl { font-size: 12.5px; color: var(--ink-gray-8); }
.iv-comm-sub { font-size: 11px; color: var(--ink-gray-5); }
.iv-comm-right { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; }
.iv-comm-ts { font-size: 10px; color: var(--ink-gray-4); font-variant-numeric: tabular-nums; }
.iv-drawer-foot { border-top: 1px solid var(--outline-gray-1); padding: 10px 14px; background: var(--surface-gray-1); }

/* timeline */
.iv-timeline { display: flex; flex-direction: column; }
.iv-tl-item { display: flex; gap: 10px; position: relative; padding-bottom: 12px; }
.iv-tl-item:not(:last-child)::before { content: ''; position: absolute; left: 4px; top: 12px; bottom: 0; width: 1.5px; background: var(--outline-gray-2); }
.iv-tl-dot { width: 9px; height: 9px; border-radius: 99px; margin-top: 3px; flex-shrink: 0; z-index: 1; background: var(--ink-gray-4); }
.iv-tl-blue { background: var(--blue-500); } .iv-tl-green { background: var(--ink-green-3); }
.iv-tl-amber { background: var(--ink-amber-3); } .iv-tl-red { background: var(--ink-red-4); } .iv-tl-gray { background: var(--ink-gray-4); }
.iv-tl-body { min-width: 0; }
.iv-tl-text { font-size: 13px; color: var(--ink-gray-8); }
.iv-tl-meta { font-size: 11px; color: var(--ink-gray-5); }
.iv-timeline-lg .iv-tl-text { font-size: 14px; }

/* action bar */
.iv-actionbar { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.iv-action-more { border: 1px solid var(--outline-gray-2); background: var(--surface-white); border-radius: 5px; width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center; color: var(--ink-gray-6); cursor: pointer; }
.iv-action-more:hover { border-color: var(--outline-gray-3); }

/* ── DETAIL VIEW ── */
.iv-doc-openlink { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; color: var(--ink-gray-7); }
.iv-doc-openlink svg { color: var(--ink-gray-5); }
.iv-tab-count { margin-left: 6px; font-size: 10px; background: var(--surface-gray-2); border-radius: 99px; padding: 1px 6px; color: var(--ink-gray-6); font-variant-numeric: tabular-nums; }
.iv-doc-actionbar { flex-shrink: 0; padding: 10px 28px; border-top: 1px solid var(--outline-gray-1); background: var(--surface-white); }
.iv-logi-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px 24px; }
.iv-logifield { display: flex; flex-direction: column; gap: 3px; }
.iv-logifield-label { font-size: 12px; color: var(--ink-gray-6); }
.iv-roundcfg { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 8px 24px; }
.iv-roundcfg-box { background: var(--surface-gray-1); border: 1px solid var(--outline-gray-1); border-radius: 8px; padding: 12px 14px; margin-top: 4px; }
.iv-roundcfg-item { display: flex; flex-direction: column; gap: 2px; }
.iv-roundcfg-item span { font-size: 11px; color: var(--ink-gray-5); }
.iv-roundcfg-item strong { font-size: 13px; font-weight: 500; color: var(--ink-gray-9); }
.iv-ctx-head { display: flex; align-items: center; gap: 12px; padding-bottom: 4px; }
.iv-ctx-name { font-size: 16px; font-weight: 600; color: var(--ink-gray-9); }
.iv-ctx-sub { font-size: 12px; color: var(--ink-gray-5); }
.iv-ctx-tags { margin-left: auto; display: flex; gap: 6px; }
.iv-ctx-results { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; }
.iv-ctx-result { background: var(--surface-gray-1); border: 1px solid var(--outline-gray-1); border-radius: 8px; padding: 10px 12px; display: flex; flex-direction: column; gap: 3px; }
.iv-ctx-result.is-pass { background: var(--surface-green-1); border-color: var(--outline-green-1); }
.iv-ctx-result-label { font-size: 11px; color: var(--ink-gray-5); }
.iv-ctx-result-val { font-size: 14px; font-weight: 600; color: var(--ink-gray-9); }
.iv-prevfb { display: flex; flex-direction: column; }
.iv-prevfb-row { display: grid; grid-template-columns: 1.2fr 1fr 2fr auto; align-items: center; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--outline-gray-1); }
.iv-prevfb-row:last-child { border-bottom: 0; }
.iv-prevfb-round { font-size: 13px; font-weight: 500; color: var(--ink-gray-8); }
.iv-prevfb-by { font-size: 12px; color: var(--ink-gray-6); }
.iv-prevfb-note { font-size: 12px; color: var(--ink-gray-5); }

/* child table (panel) */
.iv-ct { border: 1px solid var(--outline-gray-2); border-radius: 8px; overflow: hidden; }
.iv-ct-head, .iv-ct-row { display: grid; align-items: center; gap: 10px; padding: 8px 12px; }
.iv-ct-head { background: var(--surface-gray-1); border-bottom: 1px solid var(--outline-gray-2); font-size: 11px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.03em; color: var(--ink-gray-5); }
.iv-ct-row { border-bottom: 1px solid var(--outline-gray-1); font-size: 13px; }
.iv-ct-row:last-of-type { border-bottom: 0; }
.iv-ct-iv { display: flex; align-items: center; gap: 8px; min-width: 0; font-weight: 500; color: var(--ink-gray-9); }
.iv-ct-actions { display: flex; gap: 2px; }
.iv-ct-foot { display: flex; gap: 14px; padding: 8px 12px; background: var(--surface-gray-1); border-top: 1px solid var(--outline-gray-1); }

/* feedback tab */
.iv-fb-summary { display: flex; align-items: center; gap: 20px; padding: 10px 14px; background: var(--surface-gray-1); border: 1px solid var(--outline-gray-1); border-radius: 8px; margin-bottom: 4px; }
.iv-fb-summary-stat { display: flex; flex-direction: column; }
.iv-fb-summary-val { font-size: 18px; font-weight: 600; color: var(--ink-gray-9); font-variant-numeric: tabular-nums; }
.iv-fb-summary-label { font-size: 11px; color: var(--ink-gray-5); }
.iv-fb-cards { display: flex; flex-direction: column; gap: 10px; }
.iv-fb-card { border: 1px solid var(--outline-gray-2); border-radius: 8px; padding: 12px 14px; }
.iv-fb-card-head { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.iv-fb-card-by { font-size: 13px; font-weight: 500; color: var(--ink-gray-9); }
.iv-fb-card-score { font-size: 16px; font-weight: 600; color: var(--ink-gray-9); }
.iv-fb-card-score span { font-size: 12px; color: var(--ink-gray-4); font-weight: 420; }
.iv-fb-card-scores { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 6px 18px; margin-bottom: 8px; }
.iv-fb-score { display: flex; align-items: center; gap: 8px; }
.iv-fb-score-k { flex: 1; font-size: 12px; color: var(--ink-gray-6); min-width: 0; }
.iv-fb-score-bar { width: 60px; height: 5px; background: var(--surface-gray-2); border-radius: 99px; overflow: hidden; flex-shrink: 0; }
.iv-fb-score-bar span { display: block; height: 100%; background: var(--blue-500); border-radius: 99px; }
.iv-fb-score-v { font-size: 12px; font-weight: 600; color: var(--ink-gray-8); width: 12px; text-align: right; }
.iv-fb-card-note { font-size: 12.5px; color: var(--ink-gray-7); line-height: 1.5; margin-top: 2px; }
.iv-fb-card-note strong { color: var(--ink-gray-9); margin-right: 6px; font-weight: 500; }
.iv-fb-card-foot { font-size: 11px; color: var(--ink-gray-5); margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--outline-gray-1); }

/* ── WIZARD shells ── */
.iv-sched-shell { width: 760px; max-width: calc(100vw - 32px); }
.iv-sched-body { max-height: calc(100vh - 260px); }
.iv-sched-foot { margin-top: 0; padding: 14px 18px; border-top: 1px solid var(--outline-gray-1); background: var(--surface-gray-1); display: flex; align-items: center; gap: 8px; }
.iv-wz-step-label { font-size: 13px; }
.iv-sched-step { display: flex; flex-direction: column; gap: 10px; }
.iv-sched-steptitle { font-size: 14px; font-weight: 600; color: var(--ink-gray-9); display: flex; align-items: baseline; gap: 10px; }
.iv-sched-steptitle span { font-size: 12px; font-weight: 420; color: var(--ink-gray-5); }

.iv-cand-picklist, .iv-panel-pick { display: flex; flex-direction: column; gap: 6px; max-height: 340px; overflow-y: auto; }
.iv-cand-pick, .iv-panel-pickrow { display: flex; align-items: center; gap: 10px; padding: 9px 11px; border: 1px solid var(--outline-gray-2); border-radius: 8px; background: var(--surface-white); cursor: pointer; text-align: left; font: inherit; position: relative; }
.iv-cand-pick:hover, .iv-panel-pickrow:hover { border-color: var(--outline-gray-3); }
.iv-cand-pick.is-on, .iv-panel-pickrow.is-on { border-color: var(--outline-blue-1); background: var(--surface-blue-1); }
.iv-cand-pick.is-disabled { opacity: 0.6; cursor: not-allowed; background: var(--surface-gray-1); }
.iv-cand-pick-cb { width: 16px; height: 16px; border: 1.5px solid var(--outline-gray-3); border-radius: 5px; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; color: var(--ink-white); }
.iv-cand-pick.is-on .iv-cand-pick-cb, .iv-panel-pickrow.is-on .iv-cand-pick-cb { background: var(--blue-500); border-color: var(--blue-500); }
.iv-cand-pick-meta, .iv-panel-pick-meta { flex: 1; min-width: 0; }
.iv-cand-pick-name, .iv-panel-pick-name { font-size: 13px; font-weight: 500; color: var(--ink-gray-9); display: flex; align-items: center; gap: 6px; }
.iv-cand-pick-sub, .iv-panel-pick-sub { font-size: 11px; color: var(--ink-gray-5); }
.iv-cand-pick-stats { display: flex; flex-direction: column; align-items: flex-end; gap: 1px; }
.iv-cand-pick-score { font-size: 12px; font-weight: 600; color: var(--ink-gray-8); }
.iv-cand-pick-screen { font-size: 11px; color: var(--ink-green-3); }
.iv-cand-pick-block { position: absolute; right: 11px; bottom: 6px; display: inline-flex; align-items: center; gap: 4px; font-size: 10px; color: var(--ink-red-4); }
.iv-panel-pick-load { font-size: 11px; color: var(--ink-gray-5); background: var(--surface-gray-2); border-radius: 99px; padding: 1px 7px; font-variant-numeric: tabular-nums; }
.iv-panel-pick-load.is-over { background: var(--surface-red-2); color: var(--ink-red-4); }
.iv-suggest-tag { font-size: 10px; color: var(--ink-green-3); background: var(--surface-green-2); border-radius: 3px; padding: 0 5px; }
.iv-panel-pick-lead { display: inline-flex; align-items: center; gap: 5px; font-size: 11px; color: var(--ink-gray-6); margin-left: 6px; }
.iv-radio { width: 14px; height: 14px; border: 1.5px solid var(--outline-gray-3); border-radius: 99px; display: inline-block; position: relative; }
.iv-radio.is-on { border-color: var(--blue-500); }
.iv-radio.is-on::after { content: ''; position: absolute; inset: 2.5px; border-radius: 99px; background: var(--blue-500); }
.iv-radio-wrap { display: inline-flex; }

.iv-wz-note { display: flex; align-items: center; gap: 8px; padding: 9px 12px; background: var(--surface-blue-1); border: 1px solid var(--outline-blue-1); border-radius: 7px; font-size: 12px; color: var(--ink-gray-7); }
.iv-wz-note svg { color: var(--ink-blue-3); flex-shrink: 0; }
.iv-wz-warn { display: flex; align-items: center; gap: 8px; padding: 9px 12px; background: var(--surface-amber-1); border: 1px solid var(--outline-amber-1); border-radius: 7px; font-size: 12px; color: var(--ink-amber-3); }

.iv-slot-list { display: flex; flex-direction: column; gap: 7px; }
.iv-slot { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border: 1px solid var(--outline-gray-2); border-radius: 8px; background: var(--surface-white); cursor: pointer; text-align: left; font: inherit; }
.iv-slot:hover { border-color: var(--outline-gray-3); }
.iv-slot.is-on { border-color: var(--blue-500); background: var(--surface-blue-1); }
.iv-slot.is-disabled { opacity: 0.55; cursor: not-allowed; }
.iv-slot-radio { width: 16px; height: 16px; border: 1.5px solid var(--outline-gray-3); border-radius: 99px; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; }
.iv-slot.is-on .iv-slot-radio { border-color: var(--blue-500); }
.iv-slot-radio span { width: 8px; height: 8px; border-radius: 99px; background: var(--blue-500); }
.iv-slot-when { width: 130px; flex-shrink: 0; }
.iv-slot-date { font-size: 13px; font-weight: 500; color: var(--ink-gray-9); }
.iv-slot-time { font-size: 12px; color: var(--ink-gray-5); font-variant-numeric: tabular-nums; }
.iv-slot-avail { flex: 1; display: flex; flex-wrap: wrap; gap: 6px; }
.iv-slot-chip { font-size: 11px; color: var(--ink-gray-6); background: var(--surface-gray-2); border-radius: 99px; padding: 1px 8px; }
.iv-linkgen { display: flex; align-items: flex-end; gap: 8px; }
.iv-linkgen .rq-field { flex: 1; }
.iv-attach-row { display: flex; gap: 24px; flex-wrap: wrap; }
.iv-instr-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 4px; }
.iv-instr-tpl { display: flex; align-items: center; gap: 6px; padding: 3px 8px; border: 1px solid var(--outline-gray-2, #E2E2E2); border-radius: 6px; background: var(--surface-white); color: var(--ink-gray-6); }
.iv-instr-tpl:hover { border-color: var(--ink-gray-4); }
.iv-instr-select { border: none; background: none; outline: none; font-size: 12px; color: var(--ink-gray-7); cursor: pointer; max-width: 180px; }
.iv-notif-toggles { display: flex; flex-direction: column; gap: 10px; padding: 4px 0; }
.iv-remind-sched { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.iv-remind-label { font-size: 12px; color: var(--ink-gray-6); }
.iv-review { margin-top: 6px; border: 1px solid var(--outline-gray-2); border-radius: 8px; padding: 12px 14px; background: var(--surface-gray-1); }
.iv-review-title { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; color: var(--ink-gray-5); margin-bottom: 8px; }
.iv-review-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 24px; }
.iv-review-row { display: flex; flex-direction: column; gap: 2px; }
.iv-review-k { font-size: 11px; color: var(--ink-gray-5); }
.iv-review-v { font-size: 13px; color: var(--ink-gray-9); font-weight: 500; }

/* ── FEEDBACK FORM ── */
.iv-fb-shell { width: 720px; max-width: calc(100vw - 32px); }
.iv-fb-head-id { font-family: var(--font-mono); font-size: 11px; color: var(--ink-gray-5); margin-left: 8px; }
.iv-fb-context { display: flex; align-items: center; gap: 12px; padding: 12px 18px; background: var(--surface-gray-1); border-bottom: 1px solid var(--outline-gray-1); }
.iv-fb-context-main { min-width: 0; }
.iv-fb-context-name { font-size: 15px; font-weight: 600; color: var(--ink-gray-9); }
.iv-fb-context-sub { font-size: 12px; color: var(--ink-gray-5); }
.iv-fb-context-meta { margin-left: auto; display: flex; flex-direction: column; gap: 4px; align-items: flex-end; }
.iv-fb-context-chip { font-size: 11px; color: var(--ink-gray-6); display: inline-flex; align-items: center; gap: 4px; }
.iv-fb-body { max-height: calc(100vh - 320px); display: flex; flex-direction: column; gap: 12px; }
.iv-fb-section-label { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; color: var(--ink-gray-5); display: flex; align-items: center; gap: 4px; }
.iv-rubric { display: flex; flex-direction: column; gap: 8px; }
.iv-rubric-row { display: grid; grid-template-columns: 1.4fr auto 1.4fr; align-items: center; gap: 14px; }
.iv-rubric-k { font-size: 13px; color: var(--ink-gray-8); display: flex; align-items: center; gap: 6px; }
.iv-rubric-w { font-size: 10px; color: var(--ink-gray-5); background: var(--surface-gray-2); border-radius: 3px; padding: 0 4px; }
.iv-rubric-scale { display: inline-flex; gap: 4px; }
.iv-rubric-dot { width: 30px; height: 28px; border: 1px solid var(--outline-gray-2); border-radius: 6px; background: var(--surface-white); font: inherit; font-size: 12px; color: var(--ink-gray-5); cursor: pointer; }
.iv-rubric-dot:hover { border-color: var(--outline-gray-3); }
.iv-rubric-dot.is-filled { background: var(--surface-blue-2); border-color: var(--outline-blue-1); color: var(--ink-blue-3); }
.iv-rubric-dot.is-on { background: var(--blue-500); border-color: var(--blue-500); color: var(--ink-white); font-weight: 600; }
.iv-rubric-comment { height: 28px; }
.iv-fb-error { display: flex; align-items: center; gap: 5px; font-size: 12px; color: var(--ink-red-4); }
.iv-fb-weighted { display: flex; align-items: center; justify-content: space-between; padding: 10px 14px; background: var(--surface-gray-1); border: 1px solid var(--outline-gray-1); border-radius: 8px; }
.iv-fb-weighted span { font-size: 12px; color: var(--ink-gray-6); }
.iv-fb-weighted strong { font-size: 20px; font-weight: 600; color: var(--ink-gray-9); }
.iv-fb-weighted strong span { font-size: 13px; color: var(--ink-gray-4); font-weight: 420; }
.iv-rec-group { display: flex; gap: 8px; flex-wrap: wrap; }
.iv-rec-btn { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border: 1px solid var(--outline-gray-2); border-radius: 8px; background: var(--surface-white); font: inherit; font-size: 13px; color: var(--ink-gray-7); cursor: pointer; }
.iv-rec-btn svg { color: var(--ink-gray-4); }
.iv-rec-btn.is-on { font-weight: 600; }
.iv-rec-btn.iv-rec-green { background: var(--surface-green-2); border-color: var(--outline-green-2); color: var(--ink-green-3); }
.iv-rec-btn.iv-rec-green svg { color: var(--ink-green-3); }
.iv-rec-btn.iv-rec-red { background: var(--surface-red-2); border-color: var(--outline-red-1); color: var(--ink-red-4); }
.iv-rec-btn.iv-rec-red svg { color: var(--ink-red-4); }
.iv-rec-btn.iv-rec-orange { background: var(--surface-amber-2); border-color: var(--outline-amber-2); color: var(--ink-amber-3); }
.iv-rec-btn.iv-rec-orange svg { color: var(--ink-amber-3); }
.iv-rec-btn.iv-rec-blue { background: var(--surface-blue-2); border-color: var(--outline-blue-1); color: var(--ink-blue-3); }
.iv-rec-btn.iv-rec-blue svg { color: var(--ink-blue-3); }

/* ── CONSOLIDATION ── */
.iv-consol-shell { width: 760px; max-width: calc(100vw - 32px); }
.iv-consol-body { max-height: calc(100vh - 240px); display: flex; flex-direction: column; gap: 12px; }
.iv-consol-head { display: flex; align-items: center; gap: 12px; }
.iv-consol-avg { display: flex; flex-direction: column; align-items: flex-end; }
.iv-consol-avg-val { font-size: 22px; font-weight: 600; color: var(--ink-gray-9); }
.iv-consol-avg-val span { font-size: 13px; color: var(--ink-gray-4); font-weight: 420; }
.iv-consol-avg-label { font-size: 11px; color: var(--ink-gray-5); }
.iv-consol-recs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.iv-consol-rec { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 10px; border-radius: 8px; border: 1px solid var(--outline-gray-2); font-size: 12px; }
.iv-consol-rec-n { font-size: 20px; font-weight: 600; }
.iv-consol-go { background: var(--surface-green-1); border-color: var(--outline-green-1); color: var(--ink-green-3); }
.iv-consol-nogo { background: var(--surface-red-1); border-color: var(--outline-red-1); color: var(--ink-red-4); }
.iv-consol-hold { background: var(--surface-amber-1); border-color: var(--outline-amber-1); color: var(--ink-amber-3); }
.iv-consol-missing { background: var(--surface-gray-1); color: var(--ink-gray-5); }
.iv-consol-table { border: 1px solid var(--outline-gray-2); border-radius: 8px; overflow: hidden; }
.iv-consol-trow { display: grid; align-items: center; gap: 8px; padding: 8px 12px; border-bottom: 1px solid var(--outline-gray-1); }
.iv-consol-trow:last-child { border-bottom: 0; }
.iv-consol-thead { background: var(--surface-gray-1); font-size: 11px; text-transform: uppercase; letter-spacing: 0.03em; color: var(--ink-gray-5); }
.iv-consol-tfoot { background: var(--surface-gray-1); font-weight: 600; }
.iv-consol-crit { font-size: 12.5px; color: var(--ink-gray-7); display: flex; align-items: center; gap: 6px; }
.iv-consol-score { font-size: 13px; font-weight: 600; color: var(--ink-gray-8); text-align: center; font-variant-numeric: tabular-nums; }
.iv-consol-score.is-hi { color: var(--ink-green-3); }
.iv-consol-score.is-lo { color: var(--ink-red-4); }
.iv-consol-themes { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.iv-consol-theme { border: 1px solid var(--outline-gray-1); border-radius: 8px; padding: 10px 12px; }
.iv-consol-theme-label { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; margin-bottom: 6px; }
.iv-consol-theme-label.is-pos { color: var(--ink-green-3); }
.iv-consol-theme-label.is-neg { color: var(--ink-red-4); }
.iv-consol-theme-item { font-size: 12.5px; color: var(--ink-gray-7); line-height: 1.5; padding: 3px 0; }
.iv-consol-missing-box { display: flex; align-items: center; gap: 8px; padding: 10px 12px; background: var(--surface-amber-1); border: 1px solid var(--outline-amber-1); border-radius: 8px; font-size: 12px; color: var(--ink-amber-3); }
.iv-consol-missing-box span { flex: 1; }
.iv-decision-group { display: flex; flex-wrap: wrap; gap: 8px; }
.iv-decision-btn { padding: 8px 14px; border: 1px solid var(--outline-gray-2); border-radius: 8px; background: var(--surface-white); font: inherit; font-size: 13px; color: var(--ink-gray-7); cursor: pointer; }
.iv-decision-btn:hover { border-color: var(--outline-gray-3); }
.iv-decision-btn.is-on { background: var(--ink-gray-9); border-color: var(--ink-gray-9); color: var(--ink-white); font-weight: 500; }

/* ── ACTION DIALOGS ── */
.iv-dlg-subject { display: flex; align-items: center; gap: 10px; padding: 10px 12px; background: var(--surface-gray-1); border: 1px solid var(--outline-gray-1); border-radius: 8px; margin-bottom: 12px; }
.iv-dlg-subject-name { font-size: 14px; font-weight: 600; color: var(--ink-gray-9); }
.iv-dlg-subject-sub { font-size: 12px; color: var(--ink-gray-5); }
.iv-resched-current { display: flex; align-items: center; gap: 10px; padding: 8px 12px; background: var(--surface-gray-1); border-radius: 8px; margin-bottom: 12px; }
.iv-resched-label { font-size: 12px; color: var(--ink-gray-5); }
.iv-resched-old { font-size: 13px; font-weight: 500; color: var(--ink-gray-9); text-decoration: line-through; text-decoration-color: var(--ink-gray-4); }
.iv-slot-list-sm .iv-slot { padding: 8px 10px; }

/* ── GD GROUPING ── */
.iv-gd-config { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; padding: 14px; background: var(--surface-white); border: 1px solid var(--outline-gray-1); border-radius: 8px; margin-bottom: 10px; }
.iv-gd-summary { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--ink-gray-6); padding: 8px 4px 14px; }
.iv-gd-summary strong { color: var(--ink-gray-9); }
.iv-gd-summary-sep { color: var(--ink-gray-3); }
.iv-gd-groups { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 12px; }
.iv-gd-card { background: var(--surface-white); border: 1px solid var(--outline-gray-2); border-radius: 8px; padding: 12px 14px; }
.iv-gd-card-head { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.iv-gd-card-no { font-size: 14px; font-weight: 600; color: var(--ink-gray-9); }
.iv-gd-card-logistics { display: flex; flex-direction: column; gap: 3px; margin-bottom: 8px; }
.iv-gd-card-logistics span { font-size: 12px; color: var(--ink-gray-6); display: inline-flex; align-items: center; gap: 6px; }
.iv-gd-card-logistics svg { color: var(--ink-gray-4); }
.iv-gd-card-eval { display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 4px 6px; font-size: 12px; color: var(--ink-gray-8); margin-bottom: 8px; }
.iv-gd-evalrole { font-size: 10px; text-transform: uppercase; letter-spacing: 0.03em; color: var(--ink-gray-4); grid-column: 1; }
.iv-gd-members { display: flex; flex-direction: column; gap: 4px; padding: 8px 0; border-top: 1px solid var(--outline-gray-1); border-bottom: 1px solid var(--outline-gray-1); margin-bottom: 8px; }
.iv-gd-member { display: flex; align-items: center; gap: 7px; font-size: 12.5px; color: var(--ink-gray-8); }
.iv-gd-member-meta { margin-left: auto; font-size: 11px; color: var(--ink-gray-5); }
.iv-gd-card-foot { display: flex; align-items: center; gap: 6px; }
.iv-gd-fb { font-size: 11px; color: var(--ink-gray-5); }

/* ── NO-SHOW QUEUE ── */
.iv-ns-table { background: var(--surface-white); border: 1px solid var(--outline-gray-1); border-radius: 8px; overflow: hidden; }
.iv-ns-row { display: grid; align-items: center; gap: 12px; grid-template-columns: 1.3fr 1fr 1fr 1fr 1.4fr 1.1fr 1fr 60px 1.6fr; padding: 10px 14px; border-bottom: 1px solid var(--outline-gray-1); font-size: 13px; }
.iv-ns-row:last-child { border-bottom: 0; }
.iv-ns-head { background: var(--surface-gray-1); font-size: 11px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.03em; color: var(--ink-gray-5); }
.iv-ns-actions { display: flex; gap: 6px; }

@media (max-width: 1100px) {
  .iv-matrix-wrap { grid-template-columns: 1fr; }
}
