:root { --ink:#13201d; --muted:#62716d; --paper:#f8f7f2; --card:#fffefa; --line:#d9ded8; --accent:#166c52; --accent-dark:#0d4e3a; --warn:#aa3c20; }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,"Noto Sans KR",system-ui,sans-serif; line-height:1.55; }
.shell { width:min(900px,calc(100% - 40px)); margin:0 auto; padding:72px 0; }
.eyebrow { color:var(--accent); font-weight:750; font-size:.76rem; letter-spacing:.13em; margin:0 0 10px; }
.shell>h1 { font-size:clamp(2.25rem,6vw,4.5rem); letter-spacing:-.06em; line-height:1.08; margin:0 0 22px; }
.lede { font-size:1.1rem; color:var(--muted); max-width:560px; margin-bottom:42px; }
.card { background:var(--card); border:1px solid var(--line); border-radius:18px; padding:28px; margin:20px 0; box-shadow:0 4px 18px #13201d0a; }
h2 { font-size:1.25rem; margin:0 0 20px; }
label { display:block; font-weight:650; margin-top:17px; }
.hint { font-size:.8rem; color:var(--muted); font-weight:400; }
input,textarea,select { font:inherit; width:100%; margin-top:7px; border:1px solid #bfc9c3; border-radius:9px; padding:11px 12px; background:#fff; }
textarea { resize:vertical; }
.check-label { display:flex; align-items:flex-start; gap:8px; font-weight:650; }.check-label input { width:auto; margin:5px 0 0; padding:0; }.check-label .hint { padding-top:2px; }
.actions,.editor-actions { display:flex; gap:10px; margin-top:22px; align-items:center; }
button { font:inherit; cursor:pointer; border:0; border-radius:9px; padding:11px 16px; background:var(--accent); color:#fff; font-weight:700; }
button:hover { background:var(--accent-dark); } button:disabled { background:#aeb7b2; cursor:not-allowed; }
#stop { background:#e9efea; color:var(--ink); } #status { color:var(--muted); min-height:25px; margin-bottom:0; }
.upload p { color:var(--muted); }.upload input { margin-bottom:10px; }
.back { color:var(--accent); font-weight:650; text-decoration:none; }.top-link { float:right; }.top-links { float:right; display:flex; gap:14px; }
.result h1 { font-size:clamp(2rem,5vw,3.4rem); margin-bottom:28px; }
.meta { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:13px; overflow:hidden; }
.meta div { background:var(--card); padding:16px; }.meta small { display:block; color:var(--muted); margin-bottom:3px; }.meta strong { font-size:.95rem; }
.status { color:var(--accent); }.status.failed { color:var(--warn); } audio { width:100%; }
.processing-progress { padding:22px 28px; }.progress-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }.progress-head h2 { margin-bottom:4px; }.progress-head p { margin:0; }.processing-progress label { display:flex; justify-content:space-between; margin:16px 0 5px; font-size:.88rem; }.processing-progress progress { width:100%; height:12px; accent-color:var(--accent); }
.markdown h1 { font-size:1.55rem; }.markdown h2 { margin-top:28px; }.markdown table { border-collapse:collapse; width:100%; }.markdown th,.markdown td { padding:9px; border:1px solid var(--line); text-align:left; }
.summary-actions { gap:10px; margin-top:32px; padding-top:20px; border-top:1px solid var(--line); }.summary-actions .button-secondary { border:0; cursor:pointer; }
.summary-editor-toolbar { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:10px; padding:9px; border:1px solid var(--line); border-radius:10px 10px 0 0; background:#f4f8f5; }.summary-editor-toolbar button { padding:6px 9px; border-radius:6px; background:#e5eee8; color:var(--ink); font-size:.82rem; }.summary-editor-toolbar button:hover { background:#d4e4d9; }.summary-rich-editor { min-height:360px; padding:18px; border:1px solid #bfc9c3; border-radius:0 0 10px 10px; background:#fff; outline:none; }.summary-rich-editor:focus { border-color:var(--accent); box-shadow:0 0 0 3px #166c5222; }.summary-rich-editor h1:first-child { margin-top:0; }
.term-modal { width:min(760px,calc(100% - 32px)); border:0; border-radius:16px; padding:0; color:var(--ink); box-shadow:0 18px 60px #13201d44; }.term-modal::backdrop { background:#13201d77; }.term-modal form { padding:24px; }.modal-head { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; }.modal-head h2 { margin:0 0 5px; }.modal-head p { margin:0; }.modal-close { flex:0 0 auto; padding:3px 10px; background:transparent; color:var(--muted); font-size:1.7rem; line-height:1; }.modal-close:hover { background:#edf2ee; color:var(--ink); }.term-table-wrap { overflow-x:auto; margin-top:20px; }.term-table { width:100%; border-collapse:collapse; }.term-table th,.term-table td { border-bottom:1px solid var(--line); padding:8px; text-align:left; }.term-table th { font-size:.82rem; color:var(--muted); }.term-table input { margin:0; min-width:170px; }.term-table .term-save { min-width:0; width:auto; }.term-save-label { display:flex; align-items:center; gap:5px; margin:0; font-size:.82rem; font-weight:500; white-space:nowrap; }.delete-term-row { padding:6px 9px; background:#f3e8e5; color:var(--warn); }.delete-term-row:hover { background:#ead8d2; }.modal-actions { display:flex; align-items:center; gap:9px; margin-top:20px; }.modal-actions .button-secondary { border:0; cursor:pointer; }.modal-spacer { flex:1; }
.monitor-workers { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }.monitor-card { margin:0; }.monitor-card h3 { font-size:.95rem; margin:20px 0 6px; }.monitor-card ul { margin:0; padding-left:20px; font-size:.86rem; }.monitor-state { display:inline-block; margin-left:8px; font-size:.78rem; color:var(--muted); }.monitor-state.connected { color:var(--accent); }.monitor-state.disconnected { color:var(--warn); }
.model-settings { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }.model-settings form { display:grid; gap:10px; align-content:start; }.model-settings h3 { margin:0; }.model-settings p { margin:0; }.model-settings label { margin:0; }.model-settings button { justify-self:start; margin-top:7px; }.section-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }.section-head h2 { margin-bottom:5px; }.section-head p { margin:0; }.term-create-form { display:grid; grid-template-columns:1fr 1fr auto auto; align-items:end; gap:9px; margin:18px 0; }.term-create-form input { margin:0; }.term-create-form .check-label { margin:0 4px; white-space:nowrap; }.row-actions { display:flex; gap:6px; }.row-actions button { padding:6px 9px; font-size:.8rem; }.row-actions .delete-admin-term { background:#f3e8e5; color:var(--warn); }.monitor-count { margin:10px 0; font-size:.86rem; color:var(--muted); }.active-model-job { display:grid; grid-template-columns:1fr 42px; align-items:center; gap:4px 8px; }.active-model-job progress { width:100%; grid-column:1; height:7px; accent-color:var(--accent); }.active-model-job small { grid-column:2; grid-row:2; color:var(--muted); font-size:.75rem; }
.dashboard .card { overflow:hidden; }.keyword-cloud { display:flex; flex-wrap:wrap; align-items:center; gap:10px; min-height:80px; }.keyword { padding:7px 11px; background:#e8f2eb; color:var(--ink); }.keyword:hover { background:#cfe4d5; }.keyword small { margin-left:4px; color:var(--muted); }.keyword-1 { background:#e9f0fa; }.keyword-2 { background:#fff1df; }.keyword-3 { background:#f5eafa; }.keyword-4 { background:#e5f4f3; }.keyword-5 { background:#fbe9e9; }.participant-ranking { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 20px; margin:0; padding-left:28px; }.participant-ranking button { display:flex; width:100%; justify-content:space-between; align-items:center; padding:8px 10px; background:#f1f6f2; color:var(--ink); text-align:left; }.participant-ranking button:hover { background:#dbeade; }.participant-ranking span { color:var(--muted); font-size:.85rem; }.time-distribution { display:grid; gap:7px; }.time-row { display:grid; grid-template-columns:36px minmax(120px,1fr) 100px; align-items:center; gap:10px; font-size:.82rem; }.time-bars { display:grid; gap:3px; }.time-bar { display:block; min-width:2px; height:8px; border-radius:9px; }.time-bar.meetings { background:var(--accent); }.time-bar.duration { background:#8aabd1; }.time-row small { color:var(--muted); text-align:right; }.topic-graph { overflow-x:auto; border:1px solid var(--line); border-radius:12px; background:#fbfdfb; }.topic-graph svg { display:block; width:800px; max-width:none; }.graph-line { stroke:#8eb7a0; opacity:.72; }.graph-node { cursor:pointer; }.graph-node rect { fill:#e4f0e7; stroke:#77a589; }.graph-node.participant rect { fill:#e9f0fa; stroke:#86a7ca; }.graph-node.selected rect { fill:#b9d9c2; stroke:var(--accent); stroke-width:2; }.graph-node text { fill:var(--ink); font-size:13px; pointer-events:none; }.graph-caption { fill:var(--muted); font-size:12px; font-weight:700; }.analytics-meetings { display:grid; gap:8px; }.analytics-meetings a { display:block; padding:12px 14px; border:1px solid var(--line); border-radius:10px; color:var(--ink); text-decoration:none; background:#fbfdfb; }.analytics-meetings a:hover { border-color:var(--accent); }.analytics-meetings small { display:block; color:var(--muted); margin-top:2px; }
.error { padding:12px; border-radius:10px; background:#fff0eb; color:var(--warn); }
.collapsible { padding:0; }.collapsible details { padding:0 28px 28px; }.collapsible summary { display:flex; align-items:center; justify-content:space-between; gap:16px; cursor:pointer; padding:28px 0 18px; list-style:none; }.collapsible summary::-webkit-details-marker { display:none; }.collapsible summary h2 { margin:0; }.collapsible summary span { font-size:.8rem; color:var(--muted); font-weight:500; }.collapsible details:not([open]) summary { padding-bottom:28px; }
.transcript-help { margin-top:0; }.speaker-mapping { border:1px solid var(--line); border-radius:12px; margin:18px 0; background:#fafcf9; }.speaker-mapping summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; padding:16px; list-style:none; }.speaker-mapping summary::-webkit-details-marker { display:none; }.speaker-mapping summary h3 { margin:0; font-size:1rem; }.speaker-mapping summary span { color:var(--muted); font-size:.8rem; font-weight:500; }.speaker-mapping-content { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 12px; padding:0 16px 16px; }.speaker-mapping-content>p,.speaker-mapping-content>.merge-speaker-option,.speaker-mapping-content>datalist { grid-column:1 / -1; }.speaker-mapping p { margin:4px 0 2px; }.merge-speaker-option { margin:0; padding:4px 0; font-size:.86rem; }
.speaker-map { display:flex; flex-direction:column; align-items:stretch; gap:7px; min-width:0; margin:0; padding:10px; border-radius:9px; }.speaker-map b { display:block; min-width:0; overflow-wrap:anywhere; }.speaker-map input { width:100%; min-width:0; margin:0; padding:7px 9px; }.speaker-map .play-representative,.speaker-map .hint { align-self:flex-start; }.speaker-map .play-representative { display:grid; grid-template-columns:1fr; min-width:108px; padding:6px 9px; line-height:1.25; text-align:center; white-space:nowrap; }.speaker-map .play-representative span,.speaker-map .play-representative time { display:block; }.speaker-map .play-representative time { margin-top:2px; font-variant-numeric:tabular-nums; }
.speaker-audio-meta { display:inline-flex; align-items:center; gap:7px; flex-wrap:wrap; }.speaker-total-duration { color:var(--muted); font-variant-numeric:tabular-nums; white-space:nowrap; }
.speaker-linking { border:1px solid #c9d9cf; border-radius:12px; margin:18px 0; background:#f4faf6; }.speaker-linking summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; padding:16px; list-style:none; }.speaker-linking summary::-webkit-details-marker { display:none; }.speaker-linking summary h3 { margin:0; font-size:1rem; }.speaker-linking summary span { color:var(--muted); font-size:.8rem; font-weight:500; }.speaker-linking-content { padding:0 16px 16px; }.speaker-link-list { margin:10px 0; padding:0; list-style:none; display:grid; gap:7px; }.speaker-link-list li { display:flex; flex-wrap:wrap; align-items:center; gap:7px; border:1px solid var(--line); border-radius:8px; padding:8px 10px; background:#fff; font-size:.86rem; }.speaker-link-score { font-variant-numeric:tabular-nums; color:var(--accent); }.speaker-link-state { color:var(--muted); }.speaker-link-actions { display:flex; gap:6px; align-items:center; margin-left:auto; }.speaker-link-actions button { padding:5px 8px; font-size:.78rem; }
.voice-group { margin-top:18px; }.voice-group h4 { margin:0; font-size:.92rem; }.voice-group h4 small { color:var(--muted); font-weight:500; }.voice-group>.hint { margin:5px 0 8px; }.voice-speaker-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; list-style:none; padding:0; margin:0; }.voice-speaker { border:1px solid var(--line); border-radius:9px; background:#fff; padding:10px; }.voice-speaker-head { display:flex; justify-content:space-between; align-items:center; gap:8px; }.voice-speaker-head b { font-size:.9rem; }.voice-speaker label { display:grid; gap:4px; margin:9px 0 0; font-size:.78rem; color:var(--muted); }.voice-speaker input { margin:0; padding:6px 8px; color:var(--ink); }.play-representative { padding:5px 8px; border-radius:7px; font-size:.76rem; background:var(--accent); }.speaker-candidate { margin:8px 0 0; color:var(--muted); font-size:.8rem; } .speaker-nearest { margin:8px 0 0; color:var(--accent); font-size:inherit; } .speaker-analysis-rule { margin:12px 0; padding:10px 12px; border:1px solid #d39a35; border-radius:8px; background:#fff7df; color:#704600; font-size:.88rem; line-height:1.5; } .speaker-analysis-rule b { display:block; font-size:.92rem; } .speaker-analysis-rule strong { color:#a13d00; margin-right:4px; } .speaker-analysis-excluded { margin:8px 0 0; padding:7px 8px; border-radius:7px; background:#fff0e9; color:#a13d00; font-size:.86rem; font-weight:700; } .speaker-analysis-excluded small { color:#8a5a45; font-weight:500; }.voice-speaker .speaker-link-actions { margin:8px 0 0; justify-content:flex-start; }
.segments { display:grid; gap:10px; }.segment { border:1px solid var(--line); border-left:5px solid #76a98e; border-radius:10px; padding:12px; background:#f5faf6; }.segment.speaker-1,.speaker-map.speaker-1 { border-left-color:#6e9acb; background:#f4f8fc; }.segment.speaker-2,.speaker-map.speaker-2 { border-left-color:#c78e54; background:#fff8ef; }.segment.speaker-3,.speaker-map.speaker-3 { border-left-color:#aa78aa; background:#fbf5fb; }.segment.speaker-4,.speaker-map.speaker-4 { border-left-color:#c17b81; background:#fff5f5; }.segment.speaker-5,.speaker-map.speaker-5 { border-left-color:#7ba7a7; background:#f3fafa; }
.segment-head { display:flex; align-items:center; gap:9px; margin-bottom:8px; }.play-segment { padding:5px 8px; border-radius:7px; font-size:.8rem; background:var(--accent); }.segment-speaker-name { width:min(220px,42vw); margin:0; padding:5px 8px; font-weight:800; }.segment-speaker { margin:0 0 0 auto; max-width:180px; font:inherit; padding:5px; border:1px solid var(--line); border-radius:7px; background:#fff; }.segment-text { margin:0; border-color:#ccd6cf; background:#ffffffcf; min-height:58px; }
.merged-segment { background:#f0f8f2; }.merged-segment .segment-text,.merged-segment .segment-speaker-name { cursor:pointer; }.expand-merge { margin-top:8px; padding:4px 0; color:var(--muted); background:transparent; border:0; text-decoration:underline; font-size:.78rem; }
.meeting-list { padding:0; overflow:hidden; }.meeting-row { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 22px; border-bottom:1px solid var(--line); text-decoration:none; color:var(--ink); }.meeting-row:last-child { border:0; }.meeting-row:hover { background:#f2f8f4; }.meeting-row strong,.meeting-row small { display:block; }.meeting-row small { color:var(--muted); font-size:.86rem; margin-top:3px; }.meeting-row .status { white-space:nowrap; }
@media(max-width:600px) { .shell { width:min(100% - 28px,900px); padding:45px 0; }.card { padding:20px; }.meta { grid-template-columns:1fr; }.actions { flex-direction:column; }.collapsible details { padding:0 20px 20px; }.collapsible summary { padding:20px 0 14px; }.speaker-mapping-content,.voice-speaker-list { grid-template-columns:1fr; }.speaker-map { width:100%; margin-right:0; }.segment-head { flex-wrap:wrap; }.segment-speaker { margin-left:0; width:100%; max-width:none; }.meeting-row { padding:16px; align-items:flex-start; flex-direction:column; gap:5px; }.model-settings,.participant-ranking { grid-template-columns:1fr; }.term-create-form { grid-template-columns:1fr; }.time-row { grid-template-columns:32px minmax(80px,1fr) 78px; gap:6px; }.section-head { flex-direction:column; }.processing-progress { padding:20px; } }
.inline-form { display:flex; align-items:center; gap:10px; }.inline-form input { margin:0; }.import-card h2 { margin-bottom:10px; }.import-card p { margin:9px 0 0; }.meeting-info { color:var(--ink); text-decoration:none; min-width:0; }.meeting-info:hover strong { color:var(--accent); }.meeting-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:flex-end; }.meeting-actions a,.danger-link { color:var(--accent); text-decoration:none; font-size:.85rem; font-weight:700; background:transparent; padding:0; }.danger-link { color:var(--warn); }.meeting-actions form { margin:0; }.empty-list { padding:20px 22px; }.pagination { display:flex; justify-content:center; align-items:center; gap:16px; margin:24px 0; }.pagination a { color:var(--accent); font-weight:700; text-decoration:none; }.button-secondary { display:inline-flex; align-items:center; justify-content:center; border-radius:9px; padding:11px 16px; background:#e9efea; color:var(--ink); text-decoration:none; font-weight:700; }
@media(max-width:600px) { .inline-form { align-items:stretch; flex-direction:column; }.meeting-actions { justify-content:flex-start; }.meeting-row { width:100%; } }
.mail-deliveries { display:grid; gap:8px; }.mail-delivery { display:grid; grid-template-columns:minmax(72px,1fr) minmax(150px,2fr) auto; align-items:center; gap:10px; border-bottom:1px solid var(--line); padding:10px 0; }.mail-delivery:last-child { border:0; }.mail-delivery span,.mail-delivery small { color:var(--muted); font-size:.84rem; }.mail-delivery small { grid-column:2 / -1; }.mail-status { font-size:.82rem; color:var(--accent); }.mail-status.failed { color:var(--warn); }.mail-status.skipped { color:var(--muted); }
@media(max-width:600px) { .mail-delivery { grid-template-columns:1fr auto; }.mail-delivery span,.mail-delivery small { grid-column:1 / -1; } }
.admin-shell { width:min(1240px,calc(100% - 40px)); margin:0 auto; padding:38px 0 64px; display:grid; grid-template-columns:200px minmax(0,1fr); gap:30px; }.admin-sidebar { position:sticky; top:20px; align-self:start; padding:18px 14px; border:1px solid var(--line); border-radius:15px; background:var(--card); box-shadow:0 4px 18px #13201d0a; }.admin-sidebar h1 { font-size:1.4rem; margin:5px 0 20px; }.admin-sidebar nav { display:grid; gap:4px; }.admin-sidebar nav a { padding:9px 10px; border-radius:8px; color:var(--ink); text-decoration:none; font-size:.9rem; font-weight:650; }.admin-sidebar nav a:hover,.admin-sidebar nav a.active { background:#e4f0e7; color:var(--accent-dark); }.admin-content { min-width:0; }.admin-page-header { margin:3px 0 22px; }.admin-page-header h1 { margin:0 0 7px; font-size:clamp(1.85rem,4vw,2.8rem); letter-spacing:-.05em; }.admin-page-header>p:not(.eyebrow) { margin:0; color:var(--muted); }.admin-page-header.compact { display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:12px; }.admin-page-header.compact .eyebrow { width:100%; margin-bottom:0; }.period-filter { display:flex; align-items:end; flex-wrap:wrap; gap:7px; }.period-filter label { margin:0; font-size:.78rem; }.period-filter input { width:142px; margin-top:3px; padding:7px 8px; }.period-filter button { padding:8px 11px; }.dashboard-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.chart-card { padding:18px; margin:0; min-height:0; }.chart-card-wide { grid-column:1 / -1; }.chart-head { display:flex; justify-content:space-between; gap:10px; margin-bottom:7px; }.chart-head h2 { margin:0 0 2px; font-size:1.02rem; }.chart-head p { margin:0; }.d3-chart { width:100%; position:relative; }.d3-chart svg { display:block; width:100%; height:auto; overflow:visible; }.word-cloud-chart { min-height:218px; }.ranking-chart { min-height:218px; }.scatter-chart { min-height:248px; }.network-chart { min-height:330px; border:1px solid #e4e9e3; border-radius:10px; background:#fbfdfb; overflow:hidden; }.chart-empty { display:grid; place-items:center; min-height:180px; margin:0; text-align:center; }.d3-word { cursor:pointer; font-family:Inter,"Noto Sans KR",sans-serif; font-weight:750; }.d3-word:hover { fill:var(--accent-dark) !important; }.d3-bar { fill:#3c8c70; cursor:pointer; }.d3-bar:hover { fill:var(--accent-dark); }.d3-value,.d3-axis-label { fill:var(--muted); font-size:11px; }.d3-point { fill:#3c8c70; fill-opacity:.75; stroke:#fff; stroke-width:1.2px; cursor:pointer; }.d3-point:hover { fill:var(--warn); fill-opacity:1; }.network-links line { stroke:#a7c7b2; stroke-opacity:.72; }.network-node { cursor:grab; }.network-node:active { cursor:grabbing; }.network-node.topic rect { fill:#dceee2; stroke:#5d9a72; }.network-node.participant circle { fill:#e7eef8; stroke:#779bc0; }.network-node text { fill:var(--ink); font-size:11px; pointer-events:none; }.analytics-meetings-card { margin-top:14px; }.analytics-meetings-card .section-head h2 { margin:0; }
@media(max-width:800px) { .admin-shell { width:min(100% - 28px,900px); grid-template-columns:1fr; padding-top:26px; gap:18px; }.admin-sidebar { position:static; }.admin-sidebar nav { grid-template-columns:repeat(2,minmax(0,1fr)); }.dashboard-grid { grid-template-columns:1fr; }.chart-card-wide { grid-column:auto; }.admin-page-header.compact { display:block; }.period-filter { margin-top:14px; }.network-chart { min-height:300px; } }
@media(max-width:520px) { .admin-sidebar nav { grid-template-columns:1fr; }.period-filter label,.period-filter input { width:100%; }.period-filter button { flex:1; }.chart-card { padding:15px; }.network-chart { min-height:270px; } }
.admin-sidebar nav .admin-menu-link { width:100%; border:0; padding:9px 10px; border-radius:8px; background:transparent; color:var(--ink); text-align:left; font-size:.9rem; font-weight:650; }
.admin-sidebar nav .admin-menu-link:hover,.admin-sidebar nav .admin-menu-link.active { background:#e4f0e7; color:var(--accent-dark); }
.admin-panel { min-width:0; }.admin-collapsible { padding:0; overflow:hidden; }.admin-collapsible>summary { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:22px 24px 16px; cursor:pointer; list-style:none; }.admin-collapsible>summary::-webkit-details-marker { display:none; }.admin-collapsible>summary h2 { margin:0 0 3px; }.admin-collapsible>summary .eyebrow { margin:0 0 5px; }.admin-collapsible>summary small { color:var(--muted); font-size:.8rem; font-weight:400; }.admin-collapsible>summary .collapse-label { flex:0 0 auto; padding-top:3px; color:var(--muted); font-size:.78rem; font-weight:500; }.admin-collapsible:not([open])>summary { padding-bottom:22px; }.admin-collapsible>:not(summary) { margin-left:24px; margin-right:24px; }.admin-collapsible>:last-child { margin-bottom:24px; }
.model-settings { margin-top:0 !important; }.monitor-heading { margin-top:0 !important; }.monitor-card { margin-top:0; }.monitor-card h3 { margin-left:0; margin-right:0; }.monitor-card ul { margin-left:0; margin-right:0; }.monitor-connection-hint { padding:9px 11px; border-radius:9px; background:#fff0eb; color:var(--warn); }
.speaker-linking-settings { display:grid; gap:12px; max-width:560px; }.speaker-linking-settings label:not(.check-label) { display:grid; gap:4px; max-width:260px; }.speaker-linking-settings input[type="number"] { margin:0; }.speaker-linking-settings button { justify-self:start; }.speaker-linking-settings-status { min-height:1.4rem; margin:0; }
.term-pagination { display:flex; align-items:center; justify-content:center; gap:10px; margin-top:16px; color:var(--muted); font-size:.83rem; }.term-pagination button { padding:7px 10px; }.term-duplicate-warning { min-height:1.35rem; margin:5px 0 0; color:var(--warn); font-size:.82rem; }
.dashboard .admin-collapsible>summary { padding:16px 18px 12px; }.dashboard .admin-collapsible:not([open])>summary { padding-bottom:16px; }.dashboard .admin-collapsible>:not(summary) { margin-left:18px; margin-right:18px; }.dashboard .admin-collapsible>:last-child { margin-bottom:18px; }.dashboard .chart-card { overflow:hidden; }.ranking-head { align-items:center; margin:0 0 4px; }.ranking-head .hint { margin:0; }.ranking-head button { padding:6px 9px; font-size:.78rem; }.ranking-chart.ranking-expanded { max-height:300px; overflow-y:auto; padding-right:2px; }.d3-chart svg { height:auto; min-width:100%; }.network-chart svg,.scatter-chart svg { min-height:inherit; }.analytics-meetings-card .section-head { justify-content:flex-end; margin-top:0 !important; }
@media(max-width:600px) { .admin-collapsible>summary { padding:18px 20px 13px; }.admin-collapsible>:not(summary) { margin-left:20px; margin-right:20px; }.admin-collapsible>:last-child { margin-bottom:20px; }.dashboard .admin-collapsible>summary { padding:15px; }.dashboard .admin-collapsible>:not(summary) { margin-left:15px; margin-right:15px; }.dashboard .admin-collapsible>:last-child { margin-bottom:15px; }.term-pagination { flex-wrap:wrap; } }
.dashboard-grid { grid-template-columns:1fr; }.network-node.connected.topic rect { fill:#f4d985; stroke:#b8860b; stroke-width:2px; }.network-node.connected.participant circle { fill:#f4d985; stroke:#b8860b; stroke-width:2px; }.network-node.selected.topic rect { fill:#166c52; stroke:#0d4e3a; stroke-width:2px; }.network-node.selected.participant circle { fill:#166c52; stroke:#0d4e3a; stroke-width:2px; }.network-node.selected.topic text { fill:#fff; font-weight:750; }.network-node.selected.participant text { font-weight:750; }.network-node.dimmed { opacity:.32; }.network-links line.active { stroke:#b8860b; stroke-opacity:1; stroke-width:3px; }
.topic-graph-view { position:relative; }.network-toolbar { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:6px; margin:0 0 8px; }.network-toolbar button { padding:5px 8px; font-size:.78rem; }.network-chart { cursor:grab; overflow:hidden; }.network-chart:active { cursor:grabbing; }.topic-graph-view:fullscreen { width:100vw; height:100vh; padding:20px; background:var(--paper); }.topic-graph-view:fullscreen .network-toolbar { margin-bottom:12px; }.topic-graph-view:fullscreen .network-chart { height:calc(100vh - 72px); border-radius:12px; }.topic-graph-view:fullscreen .network-chart svg { width:100%; height:100%; min-height:0; }
.result .meta { grid-template-columns:repeat(4,1fr); }.monitor-connection-hint { line-height:1.5; }.monitor-connection-hint b { display:block; margin-bottom:4px; }.monitor-connection-hint ol { margin:0; padding-left:18px; }.monitor-connection-hint code { padding:1px 3px; border-radius:4px; background:#fff8f4; color:#7c321f; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; }
.voice-source-label { display:block; color:var(--muted); font-size:.7rem; font-weight:500; }
.speaker-name-apply { grid-column:1 / -1; display:flex; align-items:center; flex-wrap:wrap; gap:9px; padding-top:4px; }.speaker-name-apply button { padding:7px 10px; font-size:.82rem; }.named-voice-heading { margin:18px 0 8px; font-size:.94rem; }.named-speaker-list { display:grid; gap:7px; list-style:none; margin:0; padding:0; }.named-speaker-row { display:flex; align-items:center; gap:10px; padding:8px 10px; border:1px solid var(--line); border-radius:9px; background:#fff; }.named-person-input { display:flex; align-items:center; gap:6px; flex:0 0 230px; margin:0; color:var(--muted); font-size:.76rem; }.named-person-input input { width:150px; margin:0; padding:5px 8px; }.named-speaker-clips { display:flex; align-items:center; flex:1; flex-wrap:wrap; gap:6px; }.named-speaker-clips .play-representative { white-space:nowrap; }.apply-name-hint { margin:9px 0 0; }
@media(max-width:600px) { .named-speaker-row { align-items:flex-start; flex-direction:column; }.named-person-input { flex-basis:auto; width:100%; }.named-person-input input { flex:1; width:auto; }.named-speaker-clips { width:100%; } }
@media(min-width:601px) and (max-width:700px) { .result .meta { grid-template-columns:repeat(2,1fr); } }
