.meetings-page { max-width:1700px; margin:0 auto; }
.meetings-page .page-heading p { font-size:14px; color:var(--muted); margin-top:8px; }
.meeting-header-actions { display:flex; gap:10px; }
.meeting-layout { display:grid; grid-template-columns:320px minmax(0,1fr); gap:20px; align-items:start; }
.meeting-library { overflow:hidden; }
.meeting-library>header { display:flex; align-items:center; justify-content:space-between; padding:18px 20px 8px; }
.meeting-library h2 { font-size:15px; }
.meeting-search { display:flex; align-items:center; gap:10px; margin:12px 16px; border:1px solid var(--line); border-radius:8px; padding:0 12px; }
.meeting-search:focus-within { border-color:var(--accent); }
.meeting-search svg { width:16px; flex-shrink:0; color:var(--muted); }
.meeting-search input { background:transparent; border:0; color:var(--text); width:100%; min-width:0; min-height:44px; outline:0; }
.meeting-record { display:flex; text-align:left; width:100%; gap:13px; padding:18px; border:0; border-top:1px solid var(--line); background:transparent; color:var(--text); transition:background .16s; }
.meeting-record:hover,.meeting-record.selected { background:linear-gradient(110deg,rgba(183,183,183,.13),transparent); }
.meeting-record.selected { box-shadow:inset 3px 0 var(--accent); }
.meeting-record>span:nth-child(2) { flex:1; min-width:0; }
.meeting-record strong { display:block; font-size:14px; overflow-wrap:anywhere; line-height:1.6; }
.meeting-record small { display:block; color:var(--muted); font-size:11px; margin:4px 0; }
.meeting-record>svg { width:16px; color:var(--muted); align-self:center; flex-shrink:0; }
.meeting-record-icon { display:grid; place-items:center; width:36px; height:36px; border-radius:9px; background:rgba(183,183,183,.08); color:var(--accent); flex-shrink:0; }
.meeting-record-icon svg { width:17px; }
.meeting-state { font-size:11px; color:var(--muted); text-transform:capitalize; }
.meeting-state.is-live { color:var(--text); }
.meeting-setup { border-top:1px solid var(--line); padding:16px 18px; color:var(--muted); font-size:12px; line-height:1.8; }
.meeting-setup summary { cursor:pointer; min-height:30px; color:var(--text); }
.meeting-setup-body p { margin:12px 0; }
.meeting-more { margin:16px; }
.meeting-detail { min-height:620px; overflow:hidden; }
.meeting-detail-head { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:26px 30px; background:linear-gradient(115deg,rgba(183,183,183,.08),transparent 70%); }
.meeting-detail-head h2 { font-size:24px; margin:8px 0; overflow-wrap:anywhere; }
.meeting-detail-head p { font-size:13px; color:var(--muted); }
.meeting-times { display:flex; gap:40px; padding:0 30px 24px; font-size:13px; }
.meeting-times small { display:block; color:var(--muted); font-size:11px; margin-bottom:5px; }
.meeting-tabs { display:flex; gap:20px; padding:0 30px; border-bottom:1px solid var(--line); }
.meeting-tabs button { display:flex; align-items:center; gap:8px; min-height:49px; border:0; border-bottom:2px solid transparent; padding:10px 4px; color:var(--muted); background:transparent; }
.meeting-tabs button[aria-pressed=true] { color:var(--accent); border-color:var(--accent); }
.meeting-tabs span { font-size:11px; padding:2px 6px; background:var(--accent-soft); border-radius:5px; }
.meeting-content { padding:26px 30px; }
.meeting-summary-intro { padding-bottom:24px; border-bottom:1px solid var(--line); }
.meeting-eyebrow { font-size:11px; color:var(--accent); }
.meeting-summary-intro p { font-size:17px; line-height:1.8; margin:12px 0; }
.meeting-summary-intro small,.meeting-muted,.meeting-speaker-key { color:var(--muted); font-size:12px; line-height:1.8; }
.meeting-summary-section { margin-top:26px; }
.meeting-summary-section h3 { display:flex; gap:10px; align-items:center; font-size:14px; margin-bottom:14px; }
.meeting-summary-section h3 span { font-size:11px; font-weight:400; color:var(--muted); }
.meeting-summary-section article { display:flex; gap:16px; padding:14px 0; }
.meeting-summary-section article p { margin:0; line-height:1.8; font-size:14px; }
.meeting-point-number { flex-shrink:0; color:var(--muted); font-size:11px; border:1px solid var(--line); border-radius:6px; width:29px; height:29px; display:grid; place-items:center; }
.meeting-source { color:var(--accent); font-size:12px; display:flex; gap:8px; align-items:center; min-height:36px; background:transparent; border:0; padding:0; }
.meeting-source svg { width:14px; }
.meeting-speaker-key { margin-top:24px; }
.meeting-empty,.meeting-summary-pending { text-align:center; padding:70px 24px; }
.meeting-empty>svg,.meeting-summary-pending>svg { width:30px; height:30px; color:var(--accent); margin-bottom:16px; }
.meeting-empty h2,.meeting-summary-pending h3 { font-size:18px; }
.meeting-empty p,.meeting-summary-pending p { font-size:13px; color:var(--muted); line-height:1.8; max-width:480px; margin:12px auto 20px; }
.transcript-search-wrap { margin:0 0 14px; }
.meeting-segment { display:flex; gap:24px; border-bottom:1px solid var(--line); padding:20px 0; scroll-margin-top:200px; }
.meeting-segment:focus { background:var(--accent-soft); outline:1px solid var(--accent); border-radius:8px; }
.meeting-segment time { color:var(--accent); font-size:12px; min-width:40px; padding-top:2px; }
.meeting-segment strong { font-size:13px; }
.meeting-segment p { font-size:14px; line-height:1.9; margin:8px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; }
.meeting-attendees details { border-bottom:1px solid var(--line); }
.meeting-attendees summary { display:flex; align-items:center; gap:12px; min-height:70px; cursor:pointer; }
.meeting-attendees summary strong { flex:1; font-size:14px; }
.meeting-attendees summary>span:not(:first-child) { font-size:12px; color:var(--muted); }
.meeting-attendees summary svg { width:16px; }
.meeting-person-initial { border-radius:50%; width:34px; height:34px; display:grid; place-items:center; background:var(--accent-soft); color:var(--accent); }
.meeting-attendees details>div { padding:0 0 18px 46px; font-size:13px; line-height:1.8; color:var(--muted); }
.meeting-list-empty,.meeting-loading { padding:24px; color:var(--muted); font-size:13px; }
.meeting-warning,.meeting-error { background:rgba(177,177,177,.08); border:1px solid rgba(177,177,177,.25); color:var(--text); padding:14px 18px; border-radius:8px; line-height:1.8; font-size:13px; }
.meeting-warning { margin:0 30px 20px; }
.meeting-start-dialog { width:min(530px,calc(100vw - 32px)); background:var(--panel,#161616); color:var(--text,#eee); border:1px solid var(--line,#3e3e3e); border-radius:14px; padding:26px; max-height:90vh; overflow:auto; }
.meeting-start-dialog::backdrop { background:#0009; backdrop-filter:blur(4px); }
.meeting-start-dialog header,.meeting-start-dialog footer { display:flex; gap:12px; align-items:center; justify-content:space-between; }
.meeting-start-dialog h2 { font-size:21px; }
.meeting-start-dialog form>label { display:flex; flex-direction:column; gap:10px; margin:22px 0; font-size:13px; }
.meeting-start-dialog input:not([type=checkbox],[type=radio]) { padding:12px; background:var(--bg,#0c0c0c); color:var(--text); border:1px solid var(--line); border-radius:7px; }
.meeting-start-dialog fieldset { padding:0; margin:20px 0; border:0; }
.meeting-start-dialog legend { font-size:13px; margin-bottom:10px; }
.meeting-channel { display:flex; gap:12px; align-items:center; padding:14px; border:1px solid var(--line); border-radius:8px; margin-bottom:10px; cursor:pointer; }
.meeting-channel:has(input:checked) { background:var(--accent-soft); border-color:var(--accent); }
.meeting-channel span { flex:1; }
.meeting-channel strong,.meeting-channel small { display:block; font-size:13px; }
.meeting-channel small { color:var(--muted); font-size:10px; margin-top:4px; }
.meeting-channel svg { width:18px; color:var(--accent); }
.meeting-start-dialog p { font-size:12px; line-height:1.9; color:var(--muted); }
.meeting-start-dialog form>.meeting-consent { flex-direction:row; align-items:flex-start; line-height:1.8; }
.meeting-start-dialog .meeting-dialog-error { color:var(--text); }
@media(max-width:900px){.meeting-layout{grid-template-columns:250px minmax(0,1fr)}.meeting-detail-head,.meeting-content{padding:20px}.meeting-times,.meeting-tabs{padding-left:20px;padding-right:20px}.meeting-detail-head{align-items:flex-start;flex-direction:column}.meeting-times{gap:20px}.meeting-tabs{gap:10px}}
@media(max-width:650px){.meeting-layout{grid-template-columns:1fr}.meeting-library{max-height:350px;overflow:auto}.meeting-detail{min-height:400px}.meetings-page .page-heading{align-items:flex-start;gap:16px;flex-direction:column}.meeting-detail-head h2{font-size:21px}.meeting-segment{gap:14px}.meeting-tabs{justify-content:space-between;gap:0}.meeting-record{padding:14px}.meeting-start-dialog{padding:20px}}
@media(prefers-reduced-motion:reduce){.meeting-record{transition:none}}

.meeting-record-actions{display:flex;flex-wrap:wrap;gap:8px}
.meetings-page .btn.danger,.meeting-start-dialog .btn.danger{color:var(--text);border-color:#86868650;background:#86868610}
.meetings-page .btn.danger:hover,.meeting-start-dialog .btn.danger:hover{border-color:#868686;background:#86868622}
[data-theme=light] .meetings-page .btn.danger,[data-theme=light] .meeting-start-dialog .btn.danger{color:var(--text)}
