/* Room-first archive dashboard. Scoped to avoid changing the preserved ERP demo. */
.ka-app { --ka-ink:#172033; --ka-muted:#6b778b; --ka-subtle:#98a3b4; --ka-line:#dfe6ee; --ka-panel:#fff; --ka-bg:#f5f7fa; --ka-blue:#396fd3; --ka-blue-soft:#edf3ff; --ka-mint:#15876a; --ka-mint-soft:#eaf8f1; --ka-violet:#735bc2; --ka-violet-soft:#f2efff; --ka-amber:#b36d2f; --ka-amber-soft:#fff4e7; min-height:100vh; overflow-x:hidden; color:var(--ka-ink); background:var(--ka-bg); font-family:'Archive Sans','Apple SD Gothic Neo','Noto Sans KR',sans-serif; line-height:1.55; }
.ka-app *, .ka-app *::before, .ka-app *::after { box-sizing:border-box; }
.ka-app button, .ka-app input, .ka-app select { font:inherit; }
.ka-app button, .ka-app a { -webkit-tap-highlight-color:transparent; }
.ka-app button { cursor:pointer; }
.ka-sidebar { position:fixed; inset:0 auto 0 0; z-index:5; display:flex; width:250px; flex-direction:column; border-right:1px solid var(--ka-line); background:#fbfcfd; }
.ka-brand { display:flex; align-items:center; gap:10px; }
.ka-sidebar .ka-brand { padding:27px 25px 24px; }
.ka-brand-mark { display:grid; width:32px; height:32px; place-items:center; border-radius:10px; color:#fff; background:#1f5dbd; font-family:Arial,sans-serif; font-size:17px; font-weight:900; }
.ka-brand b { display:block; font-size:17px; letter-spacing:-.06em; }
.ka-brand small { display:block; margin-top:1px; color:var(--ka-subtle); font-size:10px; letter-spacing:.03em; }
.ka-side-status { display:grid; grid-template-columns:10px 1fr; column-gap:8px; margin:0 18px 18px; padding:12px 13px; border:1px solid #dcebe4; border-radius:10px; background:#f5fbf8; }
.ka-side-status i, .ka-live-status i { width:7px; height:7px; margin-top:6px; border-radius:50%; background:#2aa676; box-shadow:0 0 0 3px #d8f1e5; }
.ka-side-status span { color:#2d7056; font-size:11px; font-weight:800; }
.ka-side-status small { grid-column:2; color:#789187; font-size:9px; }
.ka-side-nav { display:grid; gap:3px; padding:0 13px; overflow:auto; }
.ka-nav-label { margin:17px 12px 5px; color:#9da8b7; font-size:9px; font-weight:850; letter-spacing:.1em; }
.ka-side-nav button { display:flex; width:100%; min-width:0; min-height:40px; align-items:center; gap:10px; padding:0 11px; border:0; border-radius:8px; color:#5d6a7e; background:transparent; text-align:left; font-size:12px; font-weight:700; }
.ka-side-nav button:hover { color:var(--ka-blue); background:#f0f5ff; }
.ka-side-nav button.is-active { color:#235db8; background:#e9f1ff; }
.ka-side-nav button i { width:17px; color:#8391a3; font-style:normal; font-size:15px; text-align:center; }
.ka-side-nav button.is-active i { color:var(--ka-blue); }
.ka-side-nav button span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ka-side-nav { overflow-x:hidden; }
.ka-side-nav button em { margin-left:auto; color:#9ca8b8; font-size:10px; font-style:normal; font-weight:800; }
.ka-sidebar-footer { display:grid; gap:3px; margin-top:auto; padding:20px 25px; border-top:1px solid var(--ka-line); }
.ka-sidebar-footer b { font-size:11px; }
.ka-sidebar-footer span { color:var(--ka-subtle); font-size:9px; }
.ka-main { min-height:100vh; margin-left:250px; }
.ka-content { width:min(calc(100% - 72px), 1180px); margin:0 auto; padding:58px 0 80px; }
.ka-mobile-header { display:none; }
.ka-page-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:30px; }
.ka-eyebrow, .ka-section-label, .ka-room-kicker { color:#5d78a6; font-size:10px; font-weight:850; letter-spacing:.12em; }
.ka-page-heading h1 { margin:7px 0 8px; font-size:36px; line-height:1.12; letter-spacing:-.08em; }
.ka-page-heading p { max-width:660px; margin:0; color:var(--ka-muted); font-size:13px; }
.ka-heading-actions { display:flex; align-items:center; gap:12px; }
.ka-live-status { display:flex; align-items:center; gap:8px; color:#527162; font-size:10px; font-weight:800; white-space:nowrap; }
.ka-button { min-height:38px; padding:0 14px; border:1px solid var(--ka-line); border-radius:8px; color:#536174; background:#fff; font-size:11px; font-weight:800; }
.ka-button:hover, .ka-button:focus-visible { border-color:#a9c1e8; color:var(--ka-blue); outline:none; }
.ka-metrics { display:grid; grid-template-columns:repeat(4,1fr); gap:11px; margin-bottom:28px; }
.ka-metric { display:grid; min-width:0; min-height:116px; align-content:space-between; padding:17px 18px; border:1px solid var(--ka-line); border-radius:12px; background:var(--ka-panel); }
.ka-metric span { color:var(--ka-muted); font-size:11px; font-weight:750; }
.ka-metric strong { margin-top:6px; font-size:28px; line-height:1; letter-spacing:-.06em; }
.ka-metric small { color:var(--ka-subtle); font-size:10px; }
.ka-metric--blue strong { color:var(--ka-blue); }.ka-metric--mint strong { color:var(--ka-mint); }.ka-metric--violet strong { color:var(--ka-violet); }.ka-metric--amber strong { color:var(--ka-amber); }
.ka-priority-panel, .ka-room-section, .ka-recent-section { margin-top:28px; }
.ka-priority-panel { padding:22px; border:1px solid #e6dfd5; border-radius:13px; background:#fffcf8; }
.ka-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:17px; }
.ka-section-heading h2 { margin:5px 0 0; font-size:21px; letter-spacing:-.07em; }
.ka-section-heading p { margin:0; color:var(--ka-muted); font-size:11px; text-align:right; }
.ka-priority-list { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; }
.ka-priority-list button { display:grid; grid-template-columns:130px 1fr auto; align-items:center; gap:12px; min-width:0; min-height:48px; padding:0 13px; border:1px solid #eee5d9; border-radius:8px; color:var(--ka-ink); background:#fff; text-align:left; }
.ka-priority-list button > * { min-width:0; }
.ka-priority-list button:hover { border-color:#e2c49e; background:#fffaf3; }
.ka-priority-list span { overflow:hidden; color:#9d7b5a; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.ka-priority-list b { overflow:hidden; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.ka-priority-list i { color:var(--ka-amber); font-style:normal; }
.ka-room-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:13px; }
.ka-room-card { display:flex; min-height:365px; flex-direction:column; padding:19px; border:1px solid var(--ka-line); border-radius:13px; background:#fff; }
.ka-room-card:hover { border-color:#bfd0e8; box-shadow:0 8px 24px rgba(39,67,104,.06); }
.ka-room-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.ka-room-card h3 { margin:7px 0 0; font-size:16px; line-height:1.35; letter-spacing:-.06em; }
.ka-room-count { padding:4px 7px; border-radius:6px; color:#5274ad; background:var(--ka-blue-soft); font-size:10px; font-weight:850; white-space:nowrap; }
.ka-room-stats { display:flex; justify-content:space-between; gap:8px; margin:17px 0 13px; padding:10px 0; border-top:1px solid #edf1f5; border-bottom:1px solid #edf1f5; color:var(--ka-subtle); font-size:10px; }
.ka-room-stats b { color:var(--ka-ink); font-size:12px; }
.ka-room-summary { display:-webkit-box; min-height:66px; margin:0; overflow:hidden; color:#4f5d70; font-size:12px; line-height:1.7; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.ka-room-topics, .ka-record-topics { display:flex; flex-wrap:wrap; gap:5px; margin-top:13px; }
.ka-topic { padding:4px 7px; border:1px solid #dfe8f5; border-radius:5px; color:#5275aa; background:#f7faff; font-size:9px; font-weight:750; }
.ka-room-followup { margin-top:17px; padding:12px; border-radius:8px; background:#fafbfd; }
.ka-room-followup b { color:#7a8799; font-size:10px; }
.ka-room-followup ul { display:grid; gap:5px; margin:7px 0 0; padding-left:15px; color:#566477; font-size:10px; line-height:1.45; }
.ka-room-followup p { margin:7px 0 0; color:var(--ka-subtle); font-size:10px; }
.ka-room-open { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding:17px 0 0; border:0; color:var(--ka-blue); background:transparent; font-size:11px; font-weight:850; text-align:left; }
.ka-room-open span { font-size:17px; font-weight:400; }
.ka-text-button, .ka-back-button { padding:0; border:0; color:var(--ka-blue); background:transparent; font-size:11px; font-weight:850; }
.ka-record-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:11px; }
.ka-media-panel, .ka-conversation-section { margin-top:24px; padding:22px; border:1px solid var(--ka-line); border-radius:14px; background:#fff; }
.ka-media-panel .ka-section-heading, .ka-conversation-section .ka-section-heading { margin-bottom:16px; }
.ka-media-panel .ka-section-heading p, .ka-conversation-section .ka-section-heading p { margin-top:5px; text-align:left; }
.ka-media-actions { display:flex; align-items:center; gap:12px; color:#7c8da3; font-size:10px; font-weight:800; white-space:nowrap; }
.ka-media-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:9px; }
.ka-media-card { display:flex; min-width:0; min-height:80px; flex-direction:column; justify-content:space-between; padding:11px; border:1px solid #e1e8f0; border-radius:9px; color:var(--ka-ink); background:#fbfcfe; text-decoration:none; }
.ka-media-card:hover { border-color:#b8cce8; background:#f6f9ff; }
.ka-media-card img { width:100%; height:76px; margin:-2px 0 8px; border-radius:6px; object-fit:cover; background:#e9eef5; }
.ka-media-icon { display:grid; width:29px; height:29px; margin-bottom:7px; place-items:center; border-radius:8px; color:#3b6eae; background:#eaf2ff; font-size:15px; }
.ka-media-card div { min-width:0; }
.ka-media-card b { display:block; overflow:hidden; color:#53657c; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.ka-media-card small { display:block; margin-top:4px; overflow:hidden; color:#9aa8b8; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.ka-record-total { color:#71839b; font-size:10px; font-weight:800; white-space:nowrap; }
.ka-date-filter { display:grid; gap:2px; min-width:126px; color:#8795a6; font-size:8px; font-weight:800; }
.ka-date-filter input { height:36px; padding:0 8px; border:1px solid var(--ka-line); border-radius:7px; color:#647186; background:#fff; font:inherit; font-size:10px; }
.ka-load-more { display:flex; width:100%; min-height:46px; align-items:center; justify-content:center; gap:7px; margin-top:13px; border:1px solid #cedced; border-radius:8px; color:#356bb2; background:#f7faff; font-size:11px; font-weight:850; }
.ka-load-more:hover { border-color:#9ebbe4; background:#eef5ff; }
.ka-load-more span { color:#8a9bb0; font-size:9px; font-weight:700; }
.ka-all-loaded { margin:14px 0 0; color:#98a5b5; font-size:10px; text-align:center; }
.ka-room-brief { margin:0 0 24px; padding:23px; border:1px solid #cddcf0; border-radius:15px; background:linear-gradient(135deg,#fafdff 0%,#f5f8fd 100%); box-shadow:0 8px 24px rgba(42,77,123,.05); }
.ka-room-brief-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding-bottom:18px; border-bottom:1px solid #dfe8f2; }
.ka-room-brief-head h2 { margin:6px 0 5px; font-size:22px; letter-spacing:-.07em; }
.ka-room-brief-head p { margin:0; color:var(--ka-muted); font-size:11px; }
.ka-brief-date { color:#6c86a8; font-size:10px; white-space:nowrap; }
.ka-brief-grid { display:grid; grid-template-columns:1.2fr .8fr 1fr; gap:0; margin-top:19px; }
.ka-brief-block { min-width:0; padding:0 19px; border-left:1px solid #dfe8f2; }
.ka-brief-block:first-child { padding-left:0; border-left:0; }
.ka-brief-block:last-child { padding-right:0; }
.ka-brief-block h3 { margin:0 0 12px; color:#526b8d; font-size:11px; letter-spacing:-.02em; }
.ka-brief-subheading { margin-top:22px !important; padding-top:16px; border-top:1px solid #e2eaf3; }
.ka-topic-summary-list { display:grid; gap:9px; }
.ka-topic-summary-item { padding:9px 10px; border:1px solid #e2eaf3; border-radius:8px; background:#fff; }
.ka-topic-summary-item > div { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.ka-topic-summary-item b { color:#294f84; font-size:10px; }
.ka-topic-summary-item span { color:#8a9bb1; font-size:9px; }
.ka-topic-summary-item p { display:-webkit-box; margin:5px 0 0; overflow:hidden; color:#66778e; font-size:10px; line-height:1.5; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.ka-keyword-list { display:flex; flex-wrap:wrap; gap:6px; }
.ka-keyword { padding:6px 8px; border:1px solid #d7e2f2; border-radius:6px; color:#456a9c; background:#fff; font-size:10px; font-weight:750; }
.ka-keyword b { margin-left:3px; color:#1f5dbd; font-size:9px; }
.ka-brief-actions { display:grid; gap:6px; margin:0; padding-left:15px; color:#65758b; font-size:10px; line-height:1.5; }
.ka-flow-list { display:grid; gap:11px; margin:0; padding:0; list-style:none; }
.ka-flow-list li { padding-bottom:10px; border-bottom:1px solid #e2eaf3; }
.ka-flow-list li:last-child { padding-bottom:0; border-bottom:0; }
.ka-flow-list li > div { display:flex; justify-content:space-between; gap:7px; color:#7a8ba1; font-size:9px; }
.ka-flow-list li > div span { color:#3d6ba4; font-weight:800; }
.ka-flow-list li p { display:-webkit-box; margin:4px 0 0; overflow:hidden; color:#5f7086; font-size:10px; line-height:1.5; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.ka-empty-panel { padding:13px; border:1px dashed #cdd9e8; border-radius:8px; background:#fff; }
.ka-empty-panel strong { display:block; color:#506783; font-size:10px; }
.ka-empty-panel p { margin:6px 0 0; color:#78889d; font-size:10px; line-height:1.6; }
.ka-record-card { min-width:0; padding:18px; border:1px solid var(--ka-line); border-radius:11px; background:#fff; }
.ka-record-card--compact { min-height:224px; }
.ka-record-meta { display:flex; align-items:center; flex-wrap:wrap; gap:7px; color:var(--ka-subtle); font-size:9px; }
.ka-source { padding:3px 6px; border-radius:4px; font-weight:850; }.ka-source--report { color:#2866bf; background:#edf4ff; }.ka-source--self { color:#237a62; background:#ebf8f1; }
.ka-record-card h3 { display:-webkit-box; min-height:54px; margin:13px 0 0; overflow:hidden; font-size:13px; line-height:1.65; letter-spacing:-.03em; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.ka-highlight-list { display:grid; gap:6px; margin:14px 0 0; padding-left:16px; color:#5c6a7c; font-size:10px; line-height:1.55; }
.ka-empty-copy, .ka-muted { color:var(--ka-subtle); font-size:10px; }
.ka-toolbar { display:flex; align-items:center; gap:9px; margin:20px 0; padding:11px; border:1px solid var(--ka-line); border-radius:10px; background:#fff; }
.ka-room-filters { display:flex; min-width:0; gap:4px; overflow:auto; }
.ka-room-filters button { flex:0 0 auto; padding:8px 9px; border:0; border-radius:6px; color:#778396; background:transparent; font-size:10px; font-weight:750; white-space:nowrap; }
.ka-room-filters button:hover, .ka-room-filters button.is-active { color:#255fb6; background:var(--ka-blue-soft); }
.ka-room-filters em { margin-left:4px; color:#a0abba; font-size:9px; font-style:normal; }
.ka-search { display:flex; min-width:210px; height:36px; align-items:center; gap:7px; margin-left:auto; padding:0 10px; border:1px solid var(--ka-line); border-radius:7px; color:#8190a3; background:#fbfcfd; }
.ka-search input { width:100%; min-width:0; border:0; outline:0; color:var(--ka-ink); background:transparent; font-size:11px; }
.ka-sort { height:36px; padding:0 9px; border:1px solid var(--ka-line); border-radius:7px; color:#647186; background:#fff; font-size:10px; }
.ka-record-list { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.ka-record-list .ka-record-card { min-height:330px; }
.ka-more { margin-top:17px; border-top:1px solid #edf1f5; }
.ka-more summary { padding-top:12px; color:var(--ka-blue); cursor:pointer; font-size:10px; font-weight:800; list-style:none; }
.ka-more summary::-webkit-details-marker { display:none; }.ka-more summary::before { content:'+'; margin-right:5px; }.ka-more[open] summary::before { content:'−'; }
.ka-more-body { display:grid; grid-template-columns:1fr 1fr; gap:17px; padding-top:12px; }
.ka-more-body section > b { color:#7c8797; font-size:10px; }.ka-more-body ul { display:grid; gap:6px; margin:7px 0 0; padding-left:15px; color:#5b6879; font-size:10px; }.ka-more-body p { color:var(--ka-subtle); font-size:10px; }.ka-links { display:grid; gap:6px; margin-top:7px; }.ka-links a { overflow:hidden; color:var(--ka-blue); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.ka-empty-state { grid-column:1 / -1; padding:70px 20px; border:1px dashed #cfd8e3; border-radius:12px; background:#fff; text-align:center; }.ka-empty-state strong { font-size:15px; }.ka-empty-state p { margin:7px 0 0; color:var(--ka-muted); font-size:11px; }
.ka-notice { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:20px; padding:11px 13px; border:1px solid #f0d4ba; border-radius:8px; color:#8c5b2c; background:#fff8f0; font-size:11px; }.ka-notice button { border:0; color:#9f6a34; background:transparent; font-size:10px; font-weight:850; }
@media (max-width:1050px) { .ka-room-grid { grid-template-columns:repeat(2,1fr); }.ka-record-grid { grid-template-columns:repeat(2,1fr); }.ka-media-grid { grid-template-columns:repeat(3,1fr); }.ka-brief-grid { grid-template-columns:1fr 1fr; gap:19px 0; }.ka-brief-block--flow { grid-column:1 / -1; padding:19px 0 0; border-top:1px solid #dfe8f2; border-left:0; } }
@media (max-width:760px) { .ka-sidebar { display:none; }.ka-main { margin-left:0; }.ka-mobile-header { display:flex; height:64px; align-items:center; justify-content:space-between; padding:0 18px; border-bottom:1px solid var(--ka-line); background:#fbfcfd; }.ka-mobile-header .ka-brand { padding:0; }.ka-mobile-header .ka-brand-mark { width:28px; height:28px; font-size:15px; }.ka-mobile-header button { border:0; color:var(--ka-blue); background:transparent; font-size:11px; font-weight:850; }.ka-content { width:calc(100% - 32px); padding:34px 0 50px; }.ka-page-heading { display:block; margin-bottom:23px; }.ka-page-heading h1 { font-size:30px; }.ka-page-heading p { max-width:none; line-height:1.65; }.ka-heading-actions { flex-wrap:wrap; justify-content:space-between; margin-top:18px; }.ka-live-status { min-width:0; flex:1 1 180px; }.ka-metrics { grid-template-columns:1fr; gap:8px; }.ka-metric { min-height:88px; padding:13px; }.ka-metric strong { font-size:23px; }.ka-section-heading { display:block; }.ka-section-heading p { margin-top:7px; text-align:left; }.ka-priority-list { grid-template-columns:1fr; }.ka-priority-list button { grid-template-columns:95px minmax(0,1fr) auto; overflow:hidden; }.ka-room-grid, .ka-record-grid, .ka-record-list { grid-template-columns:1fr; }.ka-room-card { min-height:0; }.ka-toolbar { display:block; padding:9px; }.ka-room-filters { margin-bottom:8px; }.ka-search { margin:0 0 8px; }.ka-date-filter { margin-top:8px; }.ka-sort { width:100%; margin-top:8px; }.ka-record-list .ka-record-card { min-height:0; }.ka-more-body { grid-template-columns:1fr; gap:9px; }.ka-room-brief { padding:17px; }.ka-room-brief-head { display:block; }.ka-room-brief-head h2 { font-size:19px; }.ka-brief-date { display:block; margin-top:10px; }.ka-brief-grid { grid-template-columns:1fr; gap:0; }.ka-brief-block, .ka-brief-block:first-child, .ka-brief-block:last-child, .ka-brief-block--flow { padding:18px 0 0; border-top:1px solid #dfe8f2; border-left:0; }.ka-brief-block:first-child { padding-top:0; border-top:0; }.ka-brief-block:last-child { padding-bottom:0; }.ka-media-panel, .ka-conversation-section { padding:17px; }.ka-media-actions { align-items:flex-start; margin-top:10px; }.ka-media-grid { grid-template-columns:repeat(2,1fr); }.ka-record-total { display:block; margin-top:9px; } }
