:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) {
    --meeting-surface:var(--app-surface-1,#091426); --meeting-raised:var(--app-surface-raised,#10243d);
    --meeting-soft:var(--app-surface-2,#0d1c31); --meeting-ink:var(--app-text-primary,#edf7ff);
    --meeting-muted:var(--app-text-secondary,#b7cadf); --meeting-border:var(--app-border,rgba(123,201,255,.16));
    --meeting-accent:var(--app-accent,#00cfff); --meeting-strong:var(--app-accent-strong,#087fa4);
    --meeting-danger:#ff8ca8; --meeting-success:#76e5c3;
    color:var(--meeting-ink); color-scheme:var(--app-color-scheme,dark);
}
[data-theme="light"] :is(.meetings-workspace,.meeting-guest-layout,.meeting-window) { --meeting-danger:#a51c46; --meeting-success:#096d60; }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) [hidden] { display:none!important; }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) :is(button,input,select,summary):focus-visible { outline:3px solid var(--app-focus-ring,#73e7ff); outline-offset:3px; }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) .btn { display:inline-flex; align-items:center; justify-content:center; gap:.45rem; border-radius:.7rem; padding:.6rem .9rem; font-weight:600; font-size:.87rem; transition:background .18s,border-color .18s,box-shadow .18s; }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) .btn-primary { color:#fff; background:linear-gradient(120deg,var(--meeting-strong),#126f9e); border-color:var(--meeting-strong); box-shadow:0 4px 14px color-mix(in srgb,var(--meeting-accent) 12%,transparent); }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) .btn-primary:hover:not(:disabled) { background:var(--meeting-strong); box-shadow:0 0 0 3px color-mix(in srgb,var(--meeting-accent) 16%,transparent); }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) :is(.btn-outline-primary,.btn-outline-secondary,.btn-secondary) { color:var(--meeting-ink); background:var(--meeting-soft); border-color:var(--meeting-border); }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) :is(.btn-outline-primary,.btn-outline-secondary,.btn-secondary):hover:not(:disabled) { border-color:var(--meeting-accent); background:var(--meeting-raised); }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) .btn-outline-danger { color:var(--meeting-danger); background:transparent; border-color:color-mix(in srgb,var(--meeting-danger) 45%,transparent); }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) .btn-outline-danger:hover:not(:disabled) { background:color-mix(in srgb,var(--meeting-danger) 12%,transparent); }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) .btn-danger { color:#fff; background:#a72548; border-color:#a72548; }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) button:disabled { opacity:.5; cursor:not-allowed; }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) :is(.form-control,.form-select) { color:var(--meeting-ink); background-color:var(--meeting-soft); border:1px solid var(--meeting-border); border-radius:.65rem; padding:.65rem .8rem; min-width:0; margin-top:.4rem; }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) .form-control::placeholder { color:var(--meeting-muted); opacity:.75; }
:is(.meetings-workspace,.meeting-guest-layout,.meeting-window) label { font-size:.83rem; font-weight:600; }
.meeting-muted,.meeting-privacy,.meeting-filter-hint { color:var(--meeting-muted); font-size:.82rem; line-height:1.6; }
.meeting-eyebrow { display:block; color:var(--meeting-accent); font-size:.68rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; margin-bottom:.35rem; }
.meeting-row { display:flex; align-items:center; flex-wrap:wrap; gap:.6rem; }
.meetings-workspace { max-width:1480px; margin:auto; padding:1.25rem; }
.meeting-hero { display:flex; align-items:center; gap:1.4rem; padding:2rem; margin-bottom:1.5rem; border:1px solid var(--meeting-border); border-radius:1.3rem; background:radial-gradient(ellipse at 90% 0%,color-mix(in srgb,var(--meeting-accent) 16%,transparent),transparent 60%),linear-gradient(125deg,var(--meeting-raised),var(--meeting-surface)); box-shadow:0 10px 35px color-mix(in srgb,var(--app-shadow-color) 40%,transparent); }
.meeting-hero-mark,.meeting-room-mark { flex-shrink:0; display:grid; place-items:center; width:4.3rem; height:4.3rem; border:1px solid color-mix(in srgb,var(--meeting-accent) 40%,transparent); background:color-mix(in srgb,var(--meeting-accent) 8%,transparent); border-radius:1.2rem; font-size:1.9rem; color:var(--meeting-accent); }
.meeting-hero h1 { margin:0 0 .6rem; font-size:2rem; font-weight:700; letter-spacing:-.04em; }
.meeting-hero p { margin:0; max-width:64ch; color:var(--meeting-muted); font-size:.94rem; }
.meeting-hero-chip { margin-left:auto; flex-shrink:0; border:1px solid var(--meeting-border); background:var(--meeting-surface); border-radius:2rem; padding:.65rem .85rem; font-size:.73rem; color:var(--meeting-muted); }
.meeting-create,.meeting-filters,.meeting-card,.meeting-join-card { background:linear-gradient(140deg,var(--meeting-raised),var(--meeting-surface)); border:1px solid var(--meeting-border); border-radius:1.1rem; padding:1.4rem; }
.meeting-create { margin:1rem 0; }
.meeting-create>label,.meeting-join-card label { display:block; margin:.75rem 0; }
.meeting-section-heading h2,.meeting-section-title h2,.meeting-create h2 { font-size:1.18rem; font-weight:650; margin:0; }
.meeting-compose-fields { display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:1rem; margin:1.1rem 0; }
.meeting-compose-fields label { min-width:0; }
.meeting-mode-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:1rem; margin-bottom:1rem; }
.meeting-create>.meeting-mode-option,.meeting-mode-row>.meeting-mode-option { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.8rem; margin:0 0 1rem; padding:.85rem 1rem; color:var(--meeting-ink); border:1px solid var(--meeting-border); border-radius:.9rem; background:color-mix(in srgb,var(--meeting-soft) 78%,transparent); cursor:pointer; transition:border-color .18s,background .18s,box-shadow .18s; }
.meeting-mode-row>.meeting-mode-option { margin:0; }
.meeting-create>.meeting-mode-option:hover,.meeting-create>.meeting-mode-option.is-selected,.meeting-mode-row>.meeting-mode-option:hover,.meeting-mode-row>.meeting-mode-option.is-selected { border-color:color-mix(in srgb,var(--meeting-accent) 55%,var(--meeting-border)); background:color-mix(in srgb,var(--meeting-accent) 7%,var(--meeting-surface)); }
.meeting-create>.meeting-mode-option.is-selected,.meeting-mode-row>.meeting-mode-option.is-selected { box-shadow:inset 3px 0 0 var(--meeting-accent); }
.meeting-mode-option__icon { display:grid; place-items:center; width:2.5rem; height:2.5rem; color:var(--meeting-accent); border:1px solid color-mix(in srgb,var(--meeting-accent) 34%,var(--meeting-border)); border-radius:.75rem; background:color-mix(in srgb,var(--meeting-accent) 9%,transparent); font-size:1.15rem; }
.meeting-mode-option__copy { min-width:0; }
.meeting-mode-option__copy strong,.meeting-mode-option__copy small { display:block; }
.meeting-mode-option__copy strong { font-size:.86rem; }
.meeting-mode-option__copy small { margin-top:.2rem; color:var(--meeting-muted); font-size:.72rem; font-weight:400; line-height:1.45; }
.meeting-mode-option input:checked+.meeting-switch-track { background:var(--meeting-strong); border-color:var(--meeting-strong); }
.meeting-mode-option input:checked+.meeting-switch-track::after { transform:translateX(.85rem); background:#fff; }
.meeting-mode-option input:focus-visible+.meeting-switch-track { outline:3px solid var(--app-focus-ring); outline-offset:3px; }
.meeting-mode-row>.meeting-policy-option { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:.8rem; margin:0; padding:.85rem 1rem; color:var(--meeting-ink); border:1px solid var(--meeting-border); border-radius:.9rem; background:color-mix(in srgb,var(--meeting-soft) 78%,transparent); }
.meeting-policy-option>.form-select { margin:0; }
.meeting-mode-row>.meeting-policy-option>.form-select { grid-column:1/-1; }
.meeting-recurrence-fields { display:grid; grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(260px,1.4fr); align-items:end; gap:.8rem; margin:-.35rem 0 1rem; padding:.9rem 1rem; border:1px solid color-mix(in srgb,var(--meeting-accent) 28%,var(--meeting-border)); border-radius:.9rem; background:linear-gradient(115deg,color-mix(in srgb,var(--meeting-accent) 7%,var(--meeting-soft)),var(--meeting-soft)); }
.meeting-recurrence-fields>label { min-width:0; }
.meeting-recurrence-fields>p { margin:0; font-size:.72rem; }
.meeting-recurrence-fields>p>i { color:var(--meeting-success); }
.meeting-compose-footer { display:flex; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap; }
.meeting-compose-footer p { margin:0; }
.meeting-action-hint { margin:.65rem 0 0; color:var(--meeting-muted); font-size:.74rem; line-height:1.5; }
.meeting-section-title { justify-content:space-between; margin:1.8rem 0 1rem; }
.meeting-count { display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--meeting-border); border-radius:.55rem; background:var(--meeting-soft); color:var(--meeting-accent); font-size:.76rem; min-width:1.8rem; min-height:1.8rem; padding:.15rem .45rem; vertical-align:middle; }
.meeting-filters { display:grid; grid-template-columns:minmax(170px,1.4fr) repeat(2,minmax(140px,1fr)) auto auto; align-items:end; gap:1rem; margin-bottom:1.2rem; padding:1.15rem; }
.meeting-filters>label { min-width:0; }
.meeting-input-icon { position:relative; }
.meeting-input-icon>i { position:absolute; left:.8rem; top:50%; transform:translateY(-50%); color:var(--meeting-accent); }
.meeting-input-icon input { padding-left:2.25rem!important; }
.meeting-filter-hint { grid-column:1/-1; margin:0; font-size:.76rem; }
.meeting-filter-switch { display:flex; align-items:center; gap:.5rem; position:relative; align-self:center; cursor:pointer; padding-top:1.1rem; }
.meeting-filter-switch input { position:absolute; opacity:0; width:1px; height:1px; }
.meeting-switch-track { display:inline-block; position:relative; flex-shrink:0; width:2.1rem; height:1.2rem; border-radius:2rem; background:color-mix(in srgb,var(--meeting-muted) 30%,var(--meeting-surface)); border:1px solid var(--meeting-border); transition:background .2s; }
.meeting-switch-track::after { content:""; position:absolute; width:.82rem; height:.82rem; top:.12rem; left:.13rem; border-radius:50%; background:var(--meeting-ink); transition:transform .2s; }
.meeting-filter-switch input:checked+.meeting-switch-track,.meeting-device.is-on .meeting-switch-track { background:var(--meeting-strong); border-color:var(--meeting-strong); }
.meeting-filter-switch input:checked+.meeting-switch-track::after,.meeting-device.is-on .meeting-switch-track::after { transform:translateX(.85rem); background:#fff; }
.meeting-filter-switch input:focus-visible+.meeting-switch-track { outline:3px solid var(--app-focus-ring); outline-offset:3px; }
.meeting-filter-switch:has(input:disabled) { opacity:.5; cursor:wait; }
.meeting-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr)); gap:1rem; }
.meeting-card { display:flex; flex-direction:column; min-width:0; position:relative; overflow:hidden; transition:border-color .2s,box-shadow .2s; }
.meeting-card::before { content:""; position:absolute; top:0; left:1.4rem; right:1.4rem; height:2px; background:linear-gradient(90deg,var(--meeting-accent),transparent); }
.meeting-card:hover { border-color:var(--app-border-strong); box-shadow:0 8px 26px color-mix(in srgb,var(--app-shadow-color) 40%,transparent); }
.meeting-card.has-action-panel { border-color:color-mix(in srgb,var(--meeting-accent) 60%,var(--meeting-border)); box-shadow:0 0 0 3px color-mix(in srgb,var(--meeting-accent) 10%,transparent),0 10px 30px color-mix(in srgb,var(--app-shadow-color) 42%,transparent); }
.meeting-card.is-past::before { opacity:.25; }
.meeting-card-top { display:flex; align-items:center; justify-content:space-between; gap:.75rem; margin-bottom:1.2rem; }
.meeting-date-tile { display:flex; flex-direction:column; align-items:center; min-width:3.4rem; padding:.45rem; border-radius:.85rem; border:1px solid var(--meeting-border); background:var(--meeting-soft); }
.meeting-date-tile strong { font-size:1.4rem; line-height:1.2; }
.meeting-date-tile>span { color:var(--meeting-accent); font-size:.65rem; text-transform:uppercase; font-weight:700; letter-spacing:.06em; }
.meeting-status { display:inline-flex; align-items:center; gap:.4rem; min-width:0; padding:.35rem .65rem; border:1px solid var(--meeting-border); border-radius:2rem; color:var(--meeting-muted); font-size:.7rem; font-weight:600; text-align:right; }
.meeting-status>span,.meeting-presence,.meeting-pulse-dot { display:inline-block; width:.4rem; height:.4rem; flex-shrink:0; border-radius:50%; background:currentColor; }
.meeting-status.is-ready { color:var(--meeting-success); background:color-mix(in srgb,var(--meeting-success) 7%,transparent); }
.meeting-mode-badges { display:flex; flex-wrap:wrap; gap:.35rem; margin-bottom:.55rem; }
.meeting-mode-badge { display:inline-flex; align-items:center; gap:.35rem; width:fit-content; margin:0 0 .55rem; padding:.3rem .55rem; color:var(--meeting-accent); border:1px solid color-mix(in srgb,var(--meeting-accent) 30%,var(--meeting-border)); border-radius:2rem; background:color-mix(in srgb,var(--meeting-accent) 7%,transparent); font-size:.64rem; font-weight:700; letter-spacing:.025em; }
.meeting-mode-badges>.meeting-mode-badge { margin:0; }
.meeting-mode-badge.is-microphone,.meeting-mode-summary.is-microphone>i { color:var(--meeting-success); }
.meeting-mode-badge.is-series { color:#b796ff; border-color:color-mix(in srgb,#b796ff 38%,var(--meeting-border)); background:color-mix(in srgb,#b796ff 9%,transparent); }
.meeting-card h3 { font-size:1.08rem; font-weight:650; overflow-wrap:anywhere; line-height:1.4; }
.meeting-card-time { color:var(--meeting-muted); font-size:.79rem; line-height:1.65; }
.meeting-card-time i { color:var(--meeting-accent); }
.meeting-card-actions { display:grid; gap:.65rem; margin-top:auto; padding-top:.4rem; }
.meeting-card-actions>.meeting-row { gap:.5rem; }
.meeting-card-actions>.meeting-row>.btn { flex:1; font-size:.75rem; padding:.5rem .4rem; }
.meeting-open { width:100%; }
.meeting-open>.bi-arrow-up-right { margin-left:auto; }
.meeting-invite-button { width:100%; }
.meeting-invite-button>.bi-chevron-right { margin-left:auto; font-size:.68rem; }
.meeting-text-danger { color:var(--meeting-danger); border:0; background:transparent; padding:.4rem; font-size:.75rem; width:fit-content; margin:auto; }
.meeting-text-danger:hover { text-decoration:underline; }
.meeting-manage-button { width:100%; margin-top:.7rem; }
.meeting-manager { scroll-margin-top:1rem; }
.meeting-manager-header,.meeting-manager-title { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.meeting-manager-header { padding-bottom:1rem; border-bottom:1px solid var(--meeting-border); }
.meeting-manager-header h2,.meeting-manager h3 { margin:0; }
.meeting-manager h3 { font-size:.95rem; font-weight:650; }
.meeting-lifecycle-state { display:flex; align-items:center; gap:.55rem; color:var(--meeting-muted); margin:1rem 0 0; padding:.7rem .9rem; border:1px solid var(--meeting-border); border-radius:.7rem; background:var(--meeting-soft); }
.meeting-lifecycle-state i { color:var(--meeting-accent); }
.meeting-manager-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.8fr); gap:1rem; padding:1rem 0; }
.meeting-manager-schedule,.meeting-manager-invitations,.meeting-timeline { border:1px solid var(--meeting-border); border-radius:.9rem; background:var(--meeting-surface); padding:1rem; }
.meeting-mode-summary { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:.65rem; margin-top:.8rem; padding:.7rem .8rem; color:var(--meeting-muted); border:1px solid var(--meeting-border); border-radius:.75rem; background:var(--meeting-soft); }
.meeting-mode-summary>i { color:var(--meeting-accent); font-size:1.05rem; }
.meeting-mode-summary strong,.meeting-mode-summary span { display:block; }
.meeting-mode-summary strong { color:var(--meeting-ink); font-size:.75rem; }
.meeting-mode-summary span { margin-top:.15rem; font-size:.66rem; line-height:1.4; }
.meeting-mode-summary.is-stream { border-color:color-mix(in srgb,var(--meeting-accent) 34%,var(--meeting-border)); background:color-mix(in srgb,var(--meeting-accent) 6%,var(--meeting-soft)); }
.meeting-series-summary { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:.65rem; margin-top:.8rem; padding:.7rem .8rem; color:var(--meeting-muted); border:1px solid color-mix(in srgb,#b796ff 36%,var(--meeting-border)); border-radius:.75rem; background:color-mix(in srgb,#b796ff 7%,var(--meeting-soft)); }
.meeting-series-summary>i { color:#b796ff; font-size:1.05rem; }
.meeting-series-summary strong,.meeting-series-summary span { display:block; }
.meeting-series-summary strong { color:var(--meeting-ink); font-size:.75rem; }
.meeting-series-summary span { margin-top:.15rem; font-size:.66rem; line-height:1.4; }
.meeting-manager-schedule>label { display:block; margin-top:1rem; }
.meeting-manager-schedule>.meeting-row { align-items:stretch; }
.meeting-manager-schedule>.meeting-row>label { flex:1; min-width:190px; margin-top:.8rem; }
.meeting-delivery-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.65rem; padding:.7rem 0; border-bottom:1px solid var(--meeting-border); }
.meeting-delivery-row:last-child { border-bottom:0; }
.meeting-delivery-row strong { display:block; font-size:.8rem; }
.meeting-delivery-row div>span { display:block; color:var(--meeting-muted); font-size:.66rem; margin-top:.2rem; overflow-wrap:anywhere; }
.meeting-delivery { display:inline-flex; align-items:center; gap:.3rem; justify-self:end; border:1px solid var(--meeting-border); border-radius:2rem; padding:.3rem .5rem; color:var(--meeting-muted); font-size:.64rem; white-space:nowrap; }
.meeting-delivery.is-sent { color:var(--meeting-success); background:color-mix(in srgb,var(--meeting-success) 7%,transparent); }
.meeting-delivery.is-failed { color:var(--meeting-danger); }
.meeting-delivery.is-retrying { color:var(--meeting-accent); }
.meeting-rsvp-summary { display:inline-flex; align-items:center; gap:.35rem; margin-top:.75rem; padding:.25rem .5rem; border:1px solid var(--meeting-border); border-radius:2rem; color:var(--meeting-muted); background:var(--meeting-soft); font-size:.64rem; }
.meeting-rsvp-summary time { margin-left:.15rem; opacity:.78; }
.meeting-rsvp-summary.is-accepted { color:var(--meeting-success); border-color:color-mix(in srgb,var(--meeting-success) 35%,var(--meeting-border)); background:color-mix(in srgb,var(--meeting-success) 8%,transparent); }
.meeting-rsvp-summary.is-tentative { color:var(--meeting-accent); border-color:color-mix(in srgb,var(--meeting-accent) 35%,var(--meeting-border)); }
.meeting-rsvp-summary.is-declined { color:var(--meeting-danger); border-color:color-mix(in srgb,var(--meeting-danger) 35%,var(--meeting-border)); background:color-mix(in srgb,var(--meeting-danger) 6%,transparent); }
.meeting-timeline { margin-top:.2rem; }
.meeting-timeline-item { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:start; gap:.7rem; position:relative; padding:.8rem 0; border-bottom:1px solid var(--meeting-border); }
.meeting-timeline-item:last-child { border-bottom:0; }
.meeting-timeline-dot { width:.6rem; height:.6rem; border-radius:50%; margin-top:.35rem; background:var(--meeting-accent); box-shadow:0 0 0 5px color-mix(in srgb,var(--meeting-accent) 8%,transparent); }
.meeting-timeline-item strong { font-size:.78rem; }
.meeting-timeline-item p { color:var(--meeting-muted); font-size:.71rem; margin:.2rem 0 0; }
.meeting-timeline-item time { color:var(--meeting-muted); font-size:.66rem; white-space:nowrap; }
.meeting-outcome { display:grid; gap:1rem; margin:1rem 0; padding:1rem; border:1px solid color-mix(in srgb,var(--meeting-accent) 30%,var(--meeting-border)); border-radius:1rem; background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--meeting-accent) 9%,transparent),transparent 40%),var(--meeting-soft); }
.meeting-outcome__header { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.meeting-outcome__header h3 { margin:0; font-size:1.05rem; }
.meeting-outcome__state { display:flex; align-items:center; justify-content:center; gap:.55rem; min-height:7rem; color:var(--meeting-muted); font-size:.78rem; }
.meeting-outcome__notice { display:flex; align-items:flex-start; gap:.5rem; margin:0; padding:.65rem .75rem; color:var(--meeting-muted); border:1px dashed var(--meeting-border); border-radius:.7rem; background:var(--meeting-surface); font-size:.72rem; }
.meeting-outcome__notice i { color:var(--meeting-accent); }
.meeting-outcome-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.65rem; }
.meeting-outcome-metrics article { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; column-gap:.65rem; padding:.75rem; border:1px solid var(--meeting-border); border-radius:.8rem; background:color-mix(in srgb,var(--meeting-surface) 86%,transparent); }
.meeting-outcome-metrics article>i { grid-row:1/3; display:grid; place-items:center; width:2.2rem; height:2.2rem; color:var(--meeting-accent); border-radius:.65rem; background:color-mix(in srgb,var(--meeting-accent) 9%,transparent); }
.meeting-outcome-metrics article>strong { font-size:1rem; line-height:1.2; }
.meeting-outcome-metrics article>span { color:var(--meeting-muted); font-size:.62rem; }
.meeting-outcome-metrics article.needs-attention { border-color:color-mix(in srgb,var(--meeting-danger) 42%,var(--meeting-border)); }
.meeting-outcome-metrics article.needs-attention>i { color:var(--meeting-danger); background:color-mix(in srgb,var(--meeting-danger) 8%,transparent); }
.meeting-outcome-grid { display:grid; grid-template-columns:1fr 1fr; gap:.8rem; }
.meeting-outcome-card { min-width:0; padding:.9rem; border:1px solid var(--meeting-border); border-radius:.85rem; background:color-mix(in srgb,var(--meeting-surface) 91%,transparent); }
.meeting-outcome-card__title { display:flex; align-items:flex-start; justify-content:space-between; gap:.8rem; margin-bottom:.7rem; }
.meeting-outcome-card__title h4 { margin:0; font-size:.88rem; }
.meeting-outcome-card__title p { margin:.18rem 0 0; color:var(--meeting-muted); font-size:.66rem; line-height:1.45; }
.meeting-outcome-card__title>small { color:var(--meeting-muted); font-size:.62rem; white-space:nowrap; }
.meeting-attendance-list,.meeting-question-summary-list,.meeting-followup-list { display:grid; gap:.45rem; max-height:15rem; overflow:auto; padding-right:.2rem; scrollbar-width:thin; }
.meeting-attendance-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.55rem; padding:.55rem; border:1px solid var(--meeting-border); border-radius:.7rem; background:var(--meeting-soft); }
.meeting-attendance-row>div:nth-child(2) { min-width:0; }
.meeting-attendance-row strong,.meeting-attendance-row span { display:block; }
.meeting-attendance-row>div:nth-child(2)>strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.72rem; }
.meeting-attendance-row>div:nth-child(2)>span,.meeting-attendance-time>span { margin-top:.1rem; color:var(--meeting-muted); font-size:.59rem; }
.meeting-attendance-time { text-align:right; white-space:nowrap; }
.meeting-attendance-time>strong { color:var(--meeting-accent); font-size:.68rem; }
.meeting-outcome-complete { display:flex; align-items:center; gap:.65rem; min-height:5rem; padding:.75rem; color:var(--meeting-muted); border:1px dashed color-mix(in srgb,var(--meeting-success) 35%,var(--meeting-border)); border-radius:.7rem; font-size:.66rem; }
.meeting-outcome-complete>i { color:var(--meeting-success); font-size:1.4rem; }
.meeting-outcome-complete strong,.meeting-outcome-complete span { display:block; }
.meeting-outcome-complete strong { color:var(--meeting-ink); font-size:.74rem; }
.meeting-outcome-complete span { margin-top:.16rem; }
.meeting-question-summary { padding:.6rem; border:1px solid var(--meeting-border); border-left:3px solid var(--meeting-accent); border-radius:.7rem; background:var(--meeting-soft); }
.meeting-question-summary.is-pinned { box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--meeting-accent) 16%,transparent); }
.meeting-question-summary>div { display:flex; align-items:center; justify-content:space-between; gap:.5rem; }
.meeting-question-summary strong { font-size:.68rem; }
.meeting-question-summary time { color:var(--meeting-muted); font-size:.57rem; white-space:nowrap; }
.meeting-question-summary p { margin:.35rem 0 0; font-size:.69rem; line-height:1.45; white-space:pre-wrap; }
.meeting-question-summary small { display:block; margin-top:.4rem; padding-top:.35rem; color:var(--meeting-success); border-top:1px solid var(--meeting-border); font-size:.61rem; }
.meeting-outcome-notes textarea { resize:vertical; font-size:.76rem; line-height:1.55; }
.meeting-outcome-card__footer { display:flex; align-items:center; justify-content:space-between; gap:.7rem; margin-top:.6rem; }
.meeting-outcome-card__footer>small { color:var(--meeting-muted); font-size:.6rem; }
.meeting-followup-form { display:grid; grid-template-columns:minmax(180px,1.6fr) repeat(3,minmax(120px,.7fr)) auto; align-items:end; gap:.6rem; }
.meeting-followup-form label { min-width:0; font-size:.68rem; }
.meeting-followup-form :is(.form-control,.form-select) { font-size:.72rem; }
.meeting-followup-form>.btn { min-height:2.55rem; font-size:.7rem; }
.meeting-followup-list { max-height:12rem; margin-top:.8rem; padding-top:.8rem; border-top:1px solid var(--meeting-border); }
.meeting-followup-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.6rem; padding:.55rem; border:1px solid var(--meeting-border); border-radius:.7rem; background:var(--meeting-soft); }
.meeting-followup-row>div { min-width:0; }
.meeting-followup-row strong,.meeting-followup-row div>span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.meeting-followup-row strong { font-size:.69rem; }
.meeting-followup-row div>span { margin-top:.12rem; color:var(--meeting-muted); font-size:.59rem; }
.meeting-followup-priority,.meeting-followup-status { padding:.2rem .4rem; border:1px solid var(--meeting-border); border-radius:2rem; font-size:.57rem; font-weight:700; white-space:nowrap; }
.meeting-followup-priority { color:var(--meeting-accent); }
.meeting-followup-priority.is-high,.meeting-followup-priority.is-urgent { color:var(--meeting-danger); border-color:color-mix(in srgb,var(--meeting-danger) 35%,var(--meeting-border)); }
.meeting-followup-status { color:var(--meeting-accent); }
.meeting-followup-status.is-resolved { color:var(--meeting-success); }
.meeting-empty { text-align:center; padding:3rem 1rem; border:1px dashed var(--meeting-border); border-radius:1.1rem; background:var(--meeting-surface); color:var(--meeting-muted); }
.meeting-empty>i { font-size:2rem; color:var(--meeting-accent); }
.meeting-empty h3 { margin:.8rem 0 .4rem; font-size:1.15rem; color:var(--meeting-ink); }
.meeting-empty p { font-size:.88rem; margin:0; }
.meeting-action-layer { position:fixed; inset:0; z-index:11000; pointer-events:auto; background:color-mix(in srgb,var(--app-overlay,#020713) 64%,transparent); backdrop-filter:blur(7px); animation:meeting-panel-backdrop .18s ease-out; }
.meeting-action-layer.is-anchored { pointer-events:none; background:transparent; backdrop-filter:none; animation:none; }
.meeting-action-panel { position:fixed; left:50%; top:50%; z-index:11001; width:min(27rem,calc(100vw - 2rem)); max-height:calc(100dvh - 2rem); overflow:auto; pointer-events:auto; color:var(--meeting-ink); border:1px solid color-mix(in srgb,var(--meeting-accent) 34%,var(--meeting-border)); border-radius:1.1rem; background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--meeting-accent) 12%,transparent),transparent 45%),linear-gradient(145deg,var(--meeting-raised),var(--meeting-surface)); box-shadow:0 28px 90px color-mix(in srgb,var(--app-shadow-color,#000) 72%,transparent),0 0 0 1px color-mix(in srgb,var(--meeting-accent) 8%,transparent),inset 0 1px 0 color-mix(in srgb,var(--meeting-ink) 8%,transparent); transform:translate(-50%,-50%); animation:meeting-panel-enter .22s cubic-bezier(.2,.9,.3,1.08); scrollbar-width:thin; scrollbar-color:color-mix(in srgb,var(--meeting-accent) 42%,transparent) transparent; }
.meeting-action-panel.is-wide { width:min(52rem,calc(100vw - 2rem)); }
.meeting-action-panel.is-management { width:min(62rem,calc(100vw - 2rem)); }
.meeting-action-panel.is-anchored { left:var(--meeting-panel-left); top:var(--meeting-panel-top); transform:none; animation-name:meeting-panel-anchor-enter; }
.meeting-action-panel__header { position:sticky; top:0; z-index:1; display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; padding:1.1rem 1.15rem .95rem; border-bottom:1px solid var(--meeting-border); background:color-mix(in srgb,var(--meeting-raised) 94%,transparent); backdrop-filter:blur(18px); }
.meeting-action-panel__header h2 { margin:0; font-size:1.12rem; font-weight:700; }
.meeting-action-panel__header p { max-width:30ch; margin:.32rem 0 0; color:var(--meeting-muted); font-size:.75rem; line-height:1.4; overflow-wrap:anywhere; }
.meeting-action-panel__close { display:grid; width:2.2rem; height:2.2rem; flex:0 0 2.2rem; place-items:center; padding:0; color:var(--meeting-muted); border:1px solid var(--meeting-border); border-radius:.65rem; background:var(--meeting-soft); cursor:pointer; }
.meeting-action-panel__close:hover { color:var(--meeting-accent); border-color:var(--meeting-accent); }
.meeting-action-panel__body { padding:1.1rem 1.15rem 1.25rem; }
.meeting-management-panel__tools { display:flex; align-items:center; gap:.5rem; flex-shrink:0; }
.meeting-management-panel__tools>.btn { display:inline-flex; align-items:center; gap:.4rem; min-height:2.2rem; padding:.42rem .7rem; font-size:.72rem; }
.meeting-action-panel.is-management .meeting-lifecycle-state { margin-top:0; }
.meeting-action-panel.is-management .meeting-manager-grid { padding-top:0; }
.meeting-action-panel .meeting-link-controls { margin:0; }
.meeting-invite-form>label { display:block; margin-bottom:.9rem; }
.meeting-invite-form>.meeting-muted { margin:.2rem 0 1rem; }
.meeting-invite-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.35rem; margin-bottom:1rem; padding:.3rem; border:1px solid var(--meeting-border); border-radius:.8rem; background:var(--meeting-soft); }
.meeting-invite-tabs button { display:flex; align-items:center; justify-content:center; gap:.4rem; min-width:0; padding:.55rem .45rem; color:var(--meeting-muted); border:1px solid transparent; border-radius:.6rem; background:transparent; font-size:.72rem; font-weight:650; cursor:pointer; }
.meeting-invite-tabs button:hover { color:var(--meeting-ink); }
.meeting-invite-tabs button.is-active { color:var(--meeting-accent); border-color:color-mix(in srgb,var(--meeting-accent) 38%,var(--meeting-border)); background:var(--meeting-surface); box-shadow:0 4px 14px color-mix(in srgb,var(--app-shadow-color,#000) 20%,transparent); }
.meeting-entity-search { margin-bottom:.9rem; }
.meeting-entity-search>label { display:block; margin-bottom:.2rem; }
.meeting-entity-search__controls { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:.55rem; }
.meeting-entity-search__controls .meeting-input-icon { min-width:0; }
.meeting-entity-layout { display:grid; grid-template-columns:minmax(13rem,.72fr) minmax(0,1.28fr); gap:.8rem; min-height:20rem; }
.meeting-entity-results { display:flex; flex-direction:column; gap:.4rem; max-height:27rem; overflow:auto; padding-right:.2rem; scrollbar-width:thin; }
.meeting-entity-result { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:.6rem; width:100%; padding:.7rem; color:var(--meeting-ink); text-align:left; border:1px solid var(--meeting-border); border-radius:.75rem; background:color-mix(in srgb,var(--meeting-soft) 76%,transparent); cursor:pointer; }
.meeting-entity-result:hover,.meeting-entity-result.is-selected { border-color:color-mix(in srgb,var(--meeting-accent) 56%,var(--meeting-border)); background:color-mix(in srgb,var(--meeting-accent) 8%,var(--meeting-surface)); }
.meeting-entity-result.is-selected { box-shadow:inset 3px 0 0 var(--meeting-accent); }
.meeting-entity-result__icon { display:grid; place-items:center; width:2rem; height:2rem; color:var(--meeting-accent); border:1px solid color-mix(in srgb,var(--meeting-accent) 30%,var(--meeting-border)); border-radius:.55rem; background:color-mix(in srgb,var(--meeting-accent) 8%,transparent); }
.meeting-entity-result__copy { min-width:0; }
.meeting-entity-result__copy strong,.meeting-entity-result__copy small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.meeting-entity-result__copy strong { font-size:.76rem; }
.meeting-entity-result__copy small { margin-top:.18rem; color:var(--meeting-muted); font-size:.62rem; }
.meeting-entity-result>.bi-chevron-right { color:var(--meeting-muted); font-size:.65rem; }
.meeting-entity-recipients { min-width:0; padding:.85rem; border:1px solid var(--meeting-border); border-radius:.85rem; background:color-mix(in srgb,var(--meeting-surface) 90%,transparent); }
.meeting-entity-state { display:flex; align-items:center; justify-content:center; gap:.5rem; min-height:5rem; margin:.5rem 0; padding:1rem; color:var(--meeting-muted); text-align:center; border:1px dashed var(--meeting-border); border-radius:.75rem; font-size:.78rem; }
.meeting-entity-state.is-warning { min-height:auto; color:var(--meeting-warning); }
.meeting-entity-placeholder { display:grid; min-height:18rem; place-content:center; justify-items:center; gap:.6rem; color:var(--meeting-muted); text-align:center; }
.meeting-entity-placeholder i { font-size:1.8rem; color:var(--meeting-accent); }
.meeting-entity-placeholder p { max-width:24ch; margin:0; font-size:.8rem; line-height:1.5; }
.meeting-entity-selection-header { display:flex; align-items:flex-start; justify-content:space-between; gap:.75rem; margin-bottom:.55rem; }
.meeting-entity-selection-header h3 { margin:.25rem 0 0; font-size:1rem; }
.meeting-entity-selection-header p { margin:.2rem 0 0; color:var(--meeting-muted); font-size:.68rem; }
.meeting-entity-kind { display:inline-flex; align-items:center; gap:.3rem; color:var(--meeting-accent); font-size:.63rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.meeting-entity-selection-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.35rem; }
.meeting-entity-selection-actions button { padding:.2rem; color:var(--meeting-accent); border:0; background:transparent; font-size:.64rem; }
.meeting-entity-guidance { margin:0 0 .75rem; color:var(--meeting-muted); font-size:.7rem; line-height:1.5; }
.meeting-recipient-list { display:flex; flex-direction:column; gap:.42rem; max-height:19rem; overflow:auto; padding-right:.2rem; scrollbar-width:thin; }
.meeting-recipient { display:grid!important; grid-template-columns:auto auto minmax(0,1fr) auto; align-items:center; gap:.55rem; margin:0!important; padding:.62rem; border:1px solid var(--meeting-border); border-radius:.72rem; background:var(--meeting-soft); cursor:pointer; }
.meeting-recipient:has(input:checked) { border-color:color-mix(in srgb,var(--meeting-accent) 55%,var(--meeting-border)); background:color-mix(in srgb,var(--meeting-accent) 8%,var(--meeting-surface)); }
.meeting-recipient.is-invited,.meeting-recipient.is-unavailable { cursor:default; opacity:.72; }
.meeting-recipient input { width:1rem; height:1rem; accent-color:var(--meeting-accent); }
.meeting-recipient__avatar { display:grid; place-items:center; width:2rem; height:2rem; flex-shrink:0; color:var(--meeting-accent); border-radius:50%; background:color-mix(in srgb,var(--meeting-accent) 12%,var(--meeting-surface)); font-size:.63rem; font-weight:750; }
.meeting-recipient__copy { min-width:0; }
.meeting-recipient__copy strong,.meeting-recipient__copy span,.meeting-recipient__copy small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.meeting-recipient__copy strong { font-size:.74rem; }
.meeting-recipient__copy span { margin-top:.12rem; color:var(--meeting-muted); font-size:.62rem; }
.meeting-recipient__copy small { margin-top:.12rem; color:var(--meeting-muted); font-size:.61rem; }
.meeting-recipient__status { display:inline-flex; align-items:center; gap:.25rem; color:var(--meeting-accent); font-size:.59rem; white-space:nowrap; }
.meeting-recipient.is-invited .meeting-recipient__status { color:var(--meeting-success); }
.meeting-recipient.is-unavailable .meeting-recipient__status { color:var(--meeting-warning); }
.meeting-entity-footer { display:flex; align-items:center; justify-content:space-between; gap:.7rem; margin-top:.8rem; padding-top:.7rem; border-top:1px solid var(--meeting-border); }
.meeting-entity-footer>span { color:var(--meeting-muted); font-size:.68rem; }
@keyframes meeting-panel-enter { from { opacity:0; transform:translate(-50%,-47%) scale(.97); } to { opacity:1; transform:translate(-50%,-50%) scale(1); } }
@keyframes meeting-panel-anchor-enter { from { opacity:0; transform:translate(.7rem,.35rem) scale(.98); } to { opacity:1; transform:none; } }
@keyframes meeting-panel-backdrop { from { opacity:0; } to { opacity:1; } }
.meeting-link-controls { margin:1rem 0; min-width:0; overflow-wrap:anywhere; }
.meeting-link-controls h2 { font-size:1.05rem; }
.meeting-link-controls label { display:block; min-width:0; width:100%; }
.meeting-link-controls input { width:100%; min-width:0; }
.meeting-guest-layout { position:relative; min-height:100vh; overflow:hidden; background:radial-gradient(circle at 12% 12%,color-mix(in srgb,var(--meeting-accent) 14%,transparent),transparent 30%),radial-gradient(circle at 88% 84%,color-mix(in srgb,var(--meeting-success) 10%,transparent),transparent 34%),var(--app-canvas,var(--meeting-soft)); padding:1.5rem; }
.meeting-guest-layout::before { content:""; position:fixed; inset:0; pointer-events:none; opacity:.28; background-image:linear-gradient(color-mix(in srgb,var(--meeting-accent) 8%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--meeting-accent) 8%,transparent) 1px,transparent 1px); background-size:52px 52px; mask-image:linear-gradient(to bottom,#000,transparent 82%); }
.meeting-guest-brandbar { position:relative; z-index:1; max-width:1120px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.65rem .85rem; border:1px solid var(--meeting-border); border-radius:1rem; background:color-mix(in srgb,var(--meeting-surface) 88%,transparent); box-shadow:0 12px 36px color-mix(in srgb,var(--app-shadow-color,#000) 16%,transparent); backdrop-filter:blur(16px); }
.meeting-guest-brand { display:flex; align-items:center; gap:.7rem; color:var(--meeting-ink); text-decoration:none; }
.meeting-guest-brand:hover { color:var(--meeting-accent); }
.meeting-guest-brand__mark { display:grid; place-items:center; width:2.6rem; height:2.6rem; overflow:hidden; border:1px solid color-mix(in srgb,var(--meeting-accent) 28%,var(--meeting-border)); border-radius:.75rem; background:#fff; }
.meeting-guest-brand__mark img { width:100%; height:100%; object-fit:contain; }
.meeting-guest-brand strong,.meeting-guest-brand small { display:block; }
.meeting-guest-brand strong { font-size:.92rem; letter-spacing:.01em; }
.meeting-guest-brand small { margin-top:.05rem; color:var(--meeting-muted); font-size:.64rem; letter-spacing:.12em; text-transform:uppercase; }
.meeting-guest-secure { display:inline-flex; align-items:center; gap:.4rem; color:var(--meeting-success); font-size:.72rem; font-weight:650; }
.meeting-join-card { position:relative; z-index:1; max-width:720px; margin:3rem auto; padding:0; overflow:hidden; border-color:color-mix(in srgb,var(--meeting-accent) 25%,var(--meeting-border)); box-shadow:0 28px 80px color-mix(in srgb,var(--app-shadow-color,#000) 24%,transparent); }
.meeting-join-hero { position:relative; padding:2rem 2rem 1.6rem; text-align:center; background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--meeting-accent) 17%,transparent),transparent 64%),linear-gradient(145deg,var(--meeting-raised),var(--meeting-surface)); border-bottom:1px solid var(--meeting-border); }
.meeting-join-hero::after { content:""; position:absolute; left:15%; right:15%; bottom:-1px; height:1px; background:linear-gradient(90deg,transparent,var(--meeting-accent),transparent); }
.meeting-join-lockup { display:flex; align-items:center; justify-content:center; gap:.7rem; margin-bottom:1.2rem; }
.meeting-join-logo { display:grid; place-items:center; height:4.35rem; overflow:hidden; border:1px solid color-mix(in srgb,var(--meeting-accent) 25%,var(--meeting-border)); border-radius:1.15rem; background:#fff; box-shadow:0 12px 28px color-mix(in srgb,var(--app-shadow-color,#000) 20%,transparent); }
.meeting-join-logo img { display:block; width:100%; height:100%; padding:.35rem; object-fit:contain; }
.meeting-join-logo.is-squad { width:4.35rem; }
.meeting-join-logo.is-squad2u { width:7.2rem; }
.meeting-join-logo.is-fallback { color:#fff; background:linear-gradient(135deg,var(--meeting-strong),var(--meeting-accent)); font-size:1.05rem; font-weight:750; letter-spacing:.04em; }
.meeting-join-brand-link { display:grid; place-items:center; width:1.8rem; height:1.8rem; color:var(--meeting-accent); border:1px solid color-mix(in srgb,var(--meeting-accent) 30%,var(--meeting-border)); border-radius:50%; background:var(--meeting-surface); box-shadow:0 0 20px color-mix(in srgb,var(--meeting-accent) 20%,transparent); }
.meeting-join-hero .meeting-eyebrow { display:block; margin-bottom:.45rem; color:var(--meeting-accent); font-size:.67rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.meeting-join-hero h1 { margin:0; font-size:clamp(1.55rem,4vw,2.15rem); letter-spacing:-.035em; overflow-wrap:anywhere; }
.meeting-join-body { padding:1.7rem 2rem 2rem; }
.meeting-join-body>p:first-child { margin-top:0; color:var(--meeting-muted); line-height:1.6; }
.meeting-rsvp { margin:.9rem 0; padding:.85rem; border:1px solid color-mix(in srgb,var(--meeting-accent) 28%,var(--meeting-border)); border-radius:.85rem; background:color-mix(in srgb,var(--meeting-accent) 5%,var(--meeting-soft)); }
.meeting-rsvp p { margin:0; color:var(--meeting-muted); font-size:.8rem; line-height:1.5; }
.meeting-rsvp .meeting-privacy { margin-top:.65rem; }
.meeting-rsvp__actions { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:.7rem; }
.meeting-rsvp__actions .btn { font-size:.76rem; }
/* Keep the room below the fixed platform masthead. Its height is measured by
   MainLayout, including wrapped controls on narrower screens. Guest meeting
   pages do not define the variable and retain the original viewport spacing. */
.meeting-window { position:fixed; z-index:1080; top:max(3vh,calc(var(--app-masthead-height,0px) + .75rem)); right:2vw; bottom:3vh; left:2vw; background:var(--meeting-surface); border:1px solid var(--app-border-strong,var(--meeting-border)); border-radius:1.25rem; box-shadow:0 24px 100px var(--app-shadow-color,#0006); overflow:hidden; display:flex; flex-direction:column; }
.meeting-window.is-minimized { display:none; }
.meeting-window>.alert { margin:.8rem 1.2rem 0; }
.meeting-window-header { display:flex; justify-content:space-between; align-items:center; gap:1rem; border-bottom:1px solid var(--meeting-border); padding:1rem 1.4rem; background:linear-gradient(110deg,var(--meeting-raised),var(--meeting-surface)); }
.meeting-window-status { justify-content:flex-end; }
.meeting-time-remaining { display:inline-flex; align-items:center; gap:.38rem; min-width:max-content; padding:.35rem .65rem; color:var(--meeting-accent); border:1px solid color-mix(in srgb,var(--meeting-accent) 30%,var(--meeting-border)); border-radius:2rem; background:color-mix(in srgb,var(--meeting-accent) 7%,transparent); font-size:.7rem; }
.meeting-time-remaining strong { min-width:3.6rem; color:var(--meeting-ink); font-variant-numeric:tabular-nums; text-align:center; }
.meeting-time-remaining.is-ending-soon { color:#fff; border-color:#ff4f7d; background:linear-gradient(120deg,#a72548,#d22d58); box-shadow:0 0 0 0 color-mix(in srgb,#ff4f7d 45%,transparent); animation:meeting-ending-pulse 1s ease-in-out infinite; }
.meeting-time-remaining.is-ending-soon strong { color:#fff; }
.meeting-extend-button { display:inline-flex; align-items:center; gap:.3rem; padding:.34rem .55rem; color:var(--meeting-accent); border:1px solid color-mix(in srgb,var(--meeting-accent) 35%,var(--meeting-border)); border-radius:2rem; background:var(--meeting-soft); font-size:.68rem; font-weight:700; white-space:nowrap; }
.meeting-extend-button:hover:not(:disabled) { color:var(--meeting-ink); border-color:var(--meeting-accent); background:color-mix(in srgb,var(--meeting-accent) 10%,var(--meeting-soft)); }
@keyframes meeting-ending-pulse { 50% { box-shadow:0 0 0 .35rem transparent; filter:brightness(1.18); } }
.meeting-room-identity { display:flex; align-items:center; min-width:0; gap:.9rem; }
.meeting-room-mark { width:2.9rem; height:2.9rem; border-radius:.8rem; font-size:1.3rem; }
.meeting-window-header strong { display:block; font-size:1.12rem; overflow-wrap:anywhere; }
.meeting-window-header .meeting-eyebrow { font-size:.6rem; }
.meeting-connection { color:var(--meeting-muted); font-size:.75rem; margin-top:.3rem; }
.meeting-window .meeting-icon-button { padding:.45rem; width:2.2rem; height:2.2rem; }
.meeting-room-body { display:grid; grid-template-columns:minmax(0,1fr) 370px; flex:1; min-height:0; }
.meeting-stage { min-width:0; overflow:auto; padding:1.2rem; }
.meeting-sidebar { overflow:auto; border-left:1px solid var(--meeting-border); background:color-mix(in srgb,var(--meeting-soft) 50%,var(--meeting-surface)); padding:1.2rem; }
.meeting-sidebar h2 { font-size:1rem; margin:0; font-weight:650; }
.meeting-sidebar-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:1rem; }
.meeting-sidebar-heading .meeting-eyebrow { font-size:.58rem; }
.meeting-preview { max-width:920px; margin:auto; border:1px solid var(--meeting-border); border-radius:1rem; overflow:hidden; background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--meeting-accent) 10%,transparent),transparent 65%),var(--meeting-soft); }
.meeting-preview-placeholder { min-height:260px; display:flex; align-items:center; justify-content:center; flex-direction:column; padding:2rem 1rem; text-align:center; }
.meeting-preview-orbit { display:grid; place-items:center; width:4.5rem; height:4.5rem; border:1px solid color-mix(in srgb,var(--meeting-accent) 35%,transparent); border-radius:50%; box-shadow:0 0 0 12px color-mix(in srgb,var(--meeting-accent) 4%,transparent); color:var(--meeting-accent); font-size:1.8rem; margin:0 0 1.5rem; }
.meeting-preview-placeholder h2,.meeting-stage-empty h2 { font-size:1.3rem; letter-spacing:-.02em; margin:.3rem 0 .5rem; }
.meeting-preview-placeholder p,.meeting-stage-empty p { color:var(--meeting-muted); font-size:.86rem; max-width:48ch; margin:0; }
.meeting-preview video { display:block; width:100%; max-height:43vh; background:#07121e; }
.meeting-preview.has-camera .meeting-preview-placeholder { display:none; }
.meeting-preview-note { padding:.8rem 1rem; text-align:center; color:var(--meeting-muted); font-size:.74rem; border-top:1px solid var(--meeting-border); background:var(--meeting-surface); }
.meeting-preview-note i { color:var(--meeting-success); }
.meeting-stage-empty { min-height:260px; border:1px dashed var(--meeting-border); border-radius:1rem; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:2rem 1rem; background:var(--meeting-soft); }
.meeting-stage-empty>i { color:var(--meeting-accent); font-size:2.5rem; margin-bottom:1rem; }
.meeting-controls { display:flex; gap:.6rem; flex-wrap:wrap; align-items:center; }
.meeting-device-dock { margin:1.1rem 0; padding:.75rem; border:1px solid var(--meeting-border); border-radius:1rem; background:var(--meeting-raised); }
.meeting-device { border:1px solid var(--meeting-border); border-radius:.8rem; padding:.6rem .7rem; background:var(--meeting-surface); color:var(--meeting-ink); display:flex; align-items:center; gap:.55rem; min-height:3rem; font-size:.77rem; font-weight:600; transition:background .2s,border-color .2s; }
.meeting-device-switch { flex:1 0 auto; justify-content:space-between; }
.meeting-device img { width:1.8rem; height:1.8rem; object-fit:contain; flex-shrink:0; }
.meeting-device>i { font-size:1.25rem; color:var(--meeting-accent); }
.meeting-device:hover:not(:disabled) { border-color:var(--meeting-accent); }
.meeting-device.is-on { background:color-mix(in srgb,var(--meeting-accent) 9%,var(--meeting-surface)); border-color:color-mix(in srgb,var(--meeting-accent) 55%,var(--meeting-border)); }
.meeting-device.is-restricted:disabled { opacity:.78; border-style:dashed; }
[data-theme="light"] :is(.meeting-device,.meeting-hand-badge) img { filter:brightness(.68) saturate(1.3); }
.meeting-stream-notice { display:flex; align-items:flex-start; gap:.65rem; margin:-.25rem 0 .9rem; padding:.7rem .8rem; color:var(--meeting-muted); border:1px solid color-mix(in srgb,var(--meeting-accent) 30%,var(--meeting-border)); border-radius:.75rem; background:color-mix(in srgb,var(--meeting-accent) 6%,var(--meeting-surface)); font-size:.72rem; line-height:1.45; }
.meeting-stream-notice>i { flex-shrink:0; color:var(--meeting-accent); font-size:1rem; }
.meeting-stream-notice strong { color:var(--meeting-ink); }
.meeting-stream-notice.is-microphone { border-color:color-mix(in srgb,var(--meeting-success) 30%,var(--meeting-border)); }
.meeting-stream-notice.is-microphone>i { color:var(--meeting-success); }
.meeting-device-settings { border-bottom:1px solid var(--meeting-border); padding:.1rem .2rem .8rem; }
.meeting-device-settings summary { cursor:pointer; font-size:.8rem; color:var(--meeting-ink); }
.meeting-device-settings summary>span { display:block; color:var(--meeting-muted); font-size:.72rem; margin:.35rem 0 0 1rem; }
.meeting-device-selectors { padding-top:.8rem; align-items:stretch; }
.meeting-device-selectors label { flex:1; min-width:180px; }
.meeting-window .meeting-join-button { margin-top:1rem; padding:.7rem 1.4rem; }
.meeting-waiting { display:flex; align-items:center; gap:.6rem; margin:1rem 0 0; color:var(--meeting-accent); font-size:.88rem; }
.meeting-pulse-dot { animation:meeting-pulse 2s ease-in-out infinite; }
.meeting-privacy { margin:1rem 0 0; font-size:.74rem; max-width:90ch; }
.meeting-waiting-count { font-size:.74rem; color:var(--meeting-accent); padding:.55rem .7rem; background:color-mix(in srgb,var(--meeting-accent) 6%,transparent); border-radius:.5rem; }
.meeting-participant-list { display:grid; gap:.7rem; margin-bottom:1rem; }
.meeting-person { border:1px solid var(--meeting-border); background:var(--meeting-surface); border-radius:.85rem; padding:.8rem; display:grid; gap:.5rem; overflow-wrap:anywhere; }
.meeting-person.is-waiting { border-color:color-mix(in srgb,var(--meeting-accent) 50%,var(--meeting-border)); }
.meeting-person-identity { display:flex; gap:.65rem; align-items:center; min-width:0; }
.meeting-avatar { width:2.25rem; height:2.25rem; border-radius:.75rem; display:grid; place-items:center; flex-shrink:0; font-size:.8rem; font-weight:700; color:var(--meeting-accent); background:linear-gradient(135deg,color-mix(in srgb,var(--meeting-accent) 14%,var(--meeting-soft)),var(--meeting-soft)); border:1px solid var(--meeting-border); }
.meeting-person-copy { min-width:0; }
.meeting-person-copy strong { font-size:.82rem; display:block; }
.meeting-person-copy strong small { color:var(--meeting-muted); font-size:.65rem; font-weight:400; margin-left:.25rem; }
.meeting-person-status { display:flex; align-items:center; gap:.35rem; flex-wrap:wrap; font-size:.65rem; color:var(--meeting-muted); margin-top:.25rem; }
.meeting-presence.is-online { color:var(--meeting-success); }
.meeting-host-badge { color:var(--meeting-accent); background:color-mix(in srgb,var(--meeting-accent) 7%,transparent); padding:.1rem .4rem; border-radius:.3rem; }
.meeting-role-badge { padding:.1rem .4rem; border-radius:.3rem; color:var(--meeting-success); background:color-mix(in srgb,var(--meeting-success) 8%,transparent); }
.meeting-role-badge.is-presenter { color:var(--meeting-accent); background:color-mix(in srgb,var(--meeting-accent) 8%,transparent); }
.meeting-unverified { border:1px solid var(--meeting-border); border-radius:.4rem; padding:.25rem .4rem; background:var(--meeting-soft); color:var(--meeting-muted); width:fit-content; font-size:.65rem; }
.meeting-invitation-row { display:flex; align-items:center; gap:.4rem; min-width:0; }
.meeting-invitation-source { display:inline-flex; align-items:center; gap:.35rem; min-width:0; width:fit-content; padding:.22rem .45rem; color:var(--meeting-accent); border:1px solid color-mix(in srgb,var(--meeting-accent) 25%,var(--meeting-border)); border-radius:.45rem; background:color-mix(in srgb,var(--meeting-accent) 6%,var(--meeting-soft)); font-size:.63rem; }
.meeting-hand-badge { display:flex; align-items:center; gap:.4rem; font-size:.7rem; color:var(--meeting-accent); }
.meeting-hand-badge img { width:1.3rem; height:1.3rem; }
.meeting-muted-badge { display:inline-flex; align-items:center; gap:.35rem; width:fit-content; color:var(--meeting-muted); font-size:.66rem; }
.meeting-window .meeting-resend-invitation { flex:0 0 auto; margin-left:auto; padding:.22rem .42rem; border-radius:.45rem; font-size:.62rem; line-height:1.2; }
.meeting-phone-recovery { display:grid; gap:.48rem; padding:.6rem; border:1px solid color-mix(in srgb,var(--meeting-accent) 32%,var(--meeting-border)); border-radius:.7rem; background:linear-gradient(135deg,color-mix(in srgb,var(--meeting-accent) 7%,var(--meeting-soft)),var(--meeting-surface)); box-shadow:0 8px 22px color-mix(in srgb,var(--app-shadow-color) 14%,transparent); }
.meeting-phone-recovery label { display:grid; gap:.3rem; margin:0; color:var(--meeting-ink); font-size:.66rem; font-weight:700; }
.meeting-phone-recovery .form-control { min-width:0; border-color:var(--meeting-border); color:var(--meeting-ink); background:var(--meeting-surface); font-size:.72rem; }
.meeting-phone-recovery .form-control::placeholder { color:var(--meeting-muted); opacity:.75; }
.meeting-phone-recovery .form-control:focus { border-color:var(--meeting-accent); box-shadow:0 0 0 .18rem color-mix(in srgb,var(--meeting-accent) 15%,transparent); }
.meeting-phone-recovery p { margin:0; color:var(--meeting-muted); font-size:.62rem; line-height:1.4; }
.meeting-phone-recovery-actions { display:flex; flex-wrap:wrap; gap:.38rem; }
.meeting-window .meeting-phone-recovery-actions .btn { padding:.3rem .48rem; font-size:.64rem; }
.meeting-window .meeting-person-actions .btn { font-size:.68rem; padding:.35rem .55rem; }
.meeting-person-menu { width:100%; }
.meeting-person-menu>summary { width:100%; list-style:none; cursor:pointer; }
.meeting-person-menu>summary::-webkit-details-marker { display:none; }
.meeting-person-menu__items { display:grid; gap:.4rem; margin-top:.45rem; padding:.55rem; border:1px solid var(--meeting-border); border-radius:.65rem; background:var(--meeting-soft); }
.meeting-person-menu__items>.btn { width:100%; }
.meeting-conversation { margin-top:1rem; border:1px solid var(--meeting-border); border-radius:1rem; overflow:hidden; background:linear-gradient(145deg,color-mix(in srgb,var(--meeting-raised) 72%,transparent),var(--meeting-surface)); }
.meeting-conversation.is-open { border-color:color-mix(in srgb,var(--meeting-accent) 38%,var(--meeting-border)); box-shadow:0 8px 28px color-mix(in srgb,var(--app-shadow-color) 22%,transparent); }
.meeting-conversation-header { display:flex; align-items:center; gap:.45rem; padding:.55rem; }
.meeting-conversation-toggle { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; gap:.55rem; min-width:0; flex:1; padding:.2rem; color:var(--meeting-ink); background:transparent; border:0; text-align:left; }
.meeting-conversation-toggle>span:nth-child(2) { min-width:0; }
.meeting-conversation-toggle strong,.meeting-conversation-toggle small { display:block; }
.meeting-conversation-toggle strong { font-size:.82rem; }
.meeting-conversation-toggle small { margin-top:.12rem; color:var(--meeting-muted); font-size:.65rem; }
.meeting-conversation-icon { display:grid; place-items:center; width:2.25rem; height:2.25rem; border:1px solid color-mix(in srgb,var(--meeting-accent) 38%,var(--meeting-border)); border-radius:.7rem; color:var(--meeting-accent); background:color-mix(in srgb,var(--meeting-accent) 8%,transparent); }
.meeting-unread { display:grid!important; place-items:center; min-width:1.35rem; height:1.35rem; padding:0 .32rem; border-radius:1rem; color:#fff; background:var(--meeting-strong); font-size:.62rem; font-weight:700; box-shadow:0 0 0 4px color-mix(in srgb,var(--meeting-accent) 8%,transparent); animation:meeting-pulse 1.8s ease-in-out infinite; }
.meeting-conversation-body { border-top:1px solid var(--meeting-border); }
.meeting-conversation-notice { display:flex; gap:.5rem; align-items:flex-start; margin:.65rem; padding:.65rem; border:1px solid var(--meeting-border); border-radius:.65rem; color:var(--meeting-muted); background:var(--meeting-soft); font-size:.72rem; line-height:1.45; }
.meeting-conversation-notice i { color:var(--meeting-accent); font-size:1rem; }
.meeting-conversation-messages { display:grid; align-content:start; gap:.55rem; max-height:300px; min-height:110px; overflow:auto; padding:.7rem; overflow-wrap:anywhere; scrollbar-color:color-mix(in srgb,var(--meeting-accent) 32%,transparent) transparent; }
.meeting-conversation-empty { min-height:100px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.35rem; padding:1rem; color:var(--meeting-muted); text-align:center; font-size:.72rem; }
.meeting-conversation-empty>i { color:var(--meeting-accent); font-size:1.5rem; }
.meeting-conversation-empty strong { color:var(--meeting-ink); font-size:.82rem; }
.meeting-message { position:relative; padding:.7rem; border:1px solid var(--meeting-border); border-radius:.8rem; background:var(--meeting-surface); box-shadow:0 3px 12px color-mix(in srgb,var(--app-shadow-color) 14%,transparent); }
.meeting-message.is-own { border-color:color-mix(in srgb,var(--meeting-accent) 24%,var(--meeting-border)); background:color-mix(in srgb,var(--meeting-accent) 4%,var(--meeting-surface)); }
.meeting-message.is-question { border-left:3px solid var(--meeting-accent); }
.meeting-message.is-pinned { background:linear-gradient(120deg,color-mix(in srgb,var(--meeting-accent) 8%,var(--meeting-surface)),var(--meeting-surface)); box-shadow:0 0 0 2px color-mix(in srgb,var(--meeting-accent) 7%,transparent); }
.meeting-message.is-hidden { opacity:.68; border-style:dashed; }
.meeting-message-meta { display:flex; align-items:center; gap:.42rem; min-width:0; }
.meeting-avatar.is-small { width:1.85rem; height:1.85rem; border-radius:.58rem; font-size:.62rem; }
.meeting-message-meta>span:nth-child(2) { min-width:0; flex:1; }
.meeting-message-meta strong,.meeting-message-meta small { display:block; }
.meeting-message-meta strong { font-size:.72rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.meeting-message-meta small { margin-top:.08rem; color:var(--meeting-muted); font-size:.58rem; }
.meeting-message-kind,.meeting-message-pin { flex-shrink:0; color:var(--meeting-accent); font-size:.58rem; font-weight:700; }
.meeting-message>p { margin:.6rem 0 .25rem; color:var(--meeting-ink); font-size:.76rem; line-height:1.5; white-space:pre-wrap; }
.meeting-answer { margin-top:.6rem; padding:.6rem; border:1px solid color-mix(in srgb,var(--meeting-success) 30%,var(--meeting-border)); border-radius:.65rem; background:color-mix(in srgb,var(--meeting-success) 6%,var(--meeting-soft)); }
.meeting-answer>span { color:var(--meeting-success); font-size:.62rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.meeting-answer p { margin:.35rem 0; font-size:.72rem; line-height:1.45; white-space:pre-wrap; }
.meeting-answer small { color:var(--meeting-muted); font-size:.58rem; }
.meeting-message-state { color:var(--meeting-success); font-size:.62rem; margin-top:.35rem; }
.meeting-message-state:empty { display:none; }
.meeting-message-menu { margin-top:.45rem; }
.meeting-message-menu>summary { width:fit-content; list-style:none; cursor:pointer; color:var(--meeting-muted); font-size:.62rem; }
.meeting-message-menu>summary::-webkit-details-marker { display:none; }
.meeting-message-actions { display:flex; flex-wrap:wrap; gap:.35rem; margin-top:.45rem; }
.meeting-window .meeting-message-actions .btn { padding:.32rem .46rem; font-size:.61rem; }
.meeting-answer-editor { display:grid; gap:.45rem; margin-top:.55rem; padding:.55rem; border:1px solid var(--meeting-border); border-radius:.65rem; background:var(--meeting-soft); }
.meeting-answer-editor textarea { resize:vertical; font-size:.72rem; }
.meeting-composer { display:grid; gap:.55rem; padding:.7rem; border-top:1px solid var(--meeting-border); background:color-mix(in srgb,var(--meeting-soft) 64%,var(--meeting-surface)); }
.meeting-composer-kinds { display:grid; grid-template-columns:1fr 1fr; gap:.35rem; padding:.2rem; border:1px solid var(--meeting-border); border-radius:.7rem; background:var(--meeting-surface); }
.meeting-composer-kinds button { padding:.4rem; border:0; border-radius:.5rem; color:var(--meeting-muted); background:transparent; font-size:.66rem; font-weight:600; }
.meeting-composer-kinds button.is-active { color:var(--meeting-ink); background:color-mix(in srgb,var(--meeting-accent) 10%,var(--meeting-soft)); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--meeting-accent) 24%,transparent); }
.meeting-composer textarea { margin:0!important; resize:vertical; font-size:.74rem; }
.meeting-composer-footer { display:flex; align-items:center; justify-content:space-between; gap:.5rem; }
.meeting-composer-footer small { color:var(--meeting-muted); font-size:.6rem; }
.meeting-window .meeting-composer-footer .btn { padding:.45rem .65rem; font-size:.68rem; }
.meeting-room-footer { padding:.8rem 1.4rem; border-top:1px solid var(--meeting-border); background:var(--meeting-surface); }
.meeting-room-footer>.btn-danger { margin-left:auto; }
.meeting-media-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); align-items:start; gap:.7rem; }
.meeting-tile { position:relative; height:clamp(180px,28vh,300px); background:#07121e; border:2px solid var(--meeting-border); border-radius:1rem; overflow:hidden; }
.meeting-tile video { display:block; width:100%; height:100%; max-height:none; object-fit:contain; }
.meeting-tile>span { display:block; position:absolute; bottom:.6rem; left:.6rem; background:#07121ed9; color:#edf7ff; padding:.3rem .6rem; font-size:.75rem; border-radius:.5rem; max-width:calc(100% - 1.2rem); overflow-wrap:anywhere; }
.meeting-tile.is-speaking { border-color:var(--meeting-success); }
.meeting-tile.is-screen { grid-column:1/-1; height:clamp(260px,55vh,680px); }
.meeting-tile.is-spotlight { grid-column:1/-1; height:clamp(260px,55vh,680px); border-color:var(--meeting-accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--meeting-accent) 13%,transparent),0 16px 38px color-mix(in srgb,#000 30%,transparent); }
.meeting-camera-spotlight-label { display:none; position:absolute; z-index:1; top:.6rem; left:.6rem; padding:.26rem .55rem; color:var(--meeting-accent); border:1px solid color-mix(in srgb,var(--meeting-accent) 45%,transparent); border-radius:2rem; background:#07121ed9; font-size:.61rem; font-style:normal; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.meeting-tile.is-spotlight .meeting-camera-spotlight-label { display:block; }
.meeting-remote-audio { display:none; }
.meeting-spotlight-notice { display:flex; align-items:center; gap:.45rem; margin:.65rem 0 0; padding:.5rem .7rem; color:var(--meeting-accent); border:1px solid color-mix(in srgb,var(--meeting-accent) 30%,var(--meeting-border)); border-radius:.7rem; background:color-mix(in srgb,var(--meeting-accent) 7%,var(--meeting-soft)); font-size:.72rem; }
.meeting-spotlight-notice strong { margin-right:.25rem; }
.meeting-spotlight-notice button { margin-left:auto; padding:.2rem .45rem; color:var(--meeting-ink); border:1px solid var(--meeting-border); border-radius:.45rem; background:var(--meeting-surface); font-size:.62rem; }
.meeting-spotlight-button { width:fit-content; margin-top:.45rem; padding:.3rem .55rem; color:var(--meeting-muted); border:1px solid var(--meeting-border); border-radius:.55rem; background:var(--meeting-soft); font-size:.63rem; font-weight:650; transition:color .18s,border-color .18s,background .18s,box-shadow .18s; }
.meeting-spotlight-button:hover:not(:disabled),.meeting-spotlight-button.is-active { color:var(--meeting-accent); border-color:color-mix(in srgb,var(--meeting-accent) 55%,var(--meeting-border)); background:color-mix(in srgb,var(--meeting-accent) 9%,var(--meeting-soft)); }
.meeting-spotlight-button.is-active { box-shadow:0 0 0 3px color-mix(in srgb,var(--meeting-accent) 10%,transparent); }
.meeting-cheers-button { color:#f7c948!important; border-color:color-mix(in srgb,#f7c948 46%,var(--meeting-border))!important; background:linear-gradient(130deg,color-mix(in srgb,#f7c948 11%,var(--meeting-soft)),var(--meeting-soft))!important; }
.meeting-cheers-button:hover:not(:disabled) { color:#fff3be!important; border-color:#f7c948!important; box-shadow:0 0 0 3px color-mix(in srgb,#f7c948 13%,transparent); }
.meeting-cheers-button i { font-size:1.05rem; animation:meeting-cheers-sparkle 2.4s ease-in-out infinite; }
@keyframes meeting-cheers-sparkle { 50% { transform:scale(1.18) rotate(13deg); filter:drop-shadow(0 0 5px #f7c948); } }
.meeting-cheers-overlay { position:fixed; z-index:1090; inset:0; overflow:hidden; pointer-events:none; }
.meeting-cheers-piece { position:absolute; top:62%; left:50%; width:.55rem; height:.8rem; border-radius:.1rem; opacity:0; animation:meeting-cheers-burst 2.7s cubic-bezier(.16,.75,.31,1) var(--cheer-delay) forwards; }
.meeting-cheers-piece:nth-child(3n) { width:.7rem; height:.38rem; border-radius:50%; }
.meeting-cheers-piece:nth-child(4n) { width:.35rem; height:.95rem; }
.meeting-cheers-message { position:absolute; top:15%; left:50%; max-width:min(86vw,32rem); padding:.55rem .9rem; transform:translateX(-50%); color:#fff; border:1px solid color-mix(in srgb,#f7c948 58%,transparent); border-radius:2rem; background:linear-gradient(120deg,#0c233ee8,#162f4ee8); box-shadow:0 10px 30px #0005; font-size:.8rem; font-weight:700; animation:meeting-cheers-message 2.7s ease forwards; }
@keyframes meeting-cheers-burst { 0% { opacity:0; transform:translate(-50%,0) rotate(0); } 10% { opacity:1; } 72% { opacity:1; } 100% { opacity:0; transform:translate(calc(-50% + var(--cheer-x)),var(--cheer-y)) rotate(var(--cheer-r)); } }
@keyframes meeting-cheers-message { 0%,100% { opacity:0; transform:translate(-50%,-.75rem) scale(.94); } 12%,76% { opacity:1; transform:translate(-50%,0) scale(1); } }
@media (prefers-reduced-motion:reduce) { .meeting-cheers-button i { animation:none; } .meeting-cheers-overlay { display:none; } }
.meeting-restore { position:fixed; right:1.5rem; bottom:1.5rem; z-index:1081; padding:.85rem 1.15rem; border:1px solid var(--app-accent,#00cfff); border-radius:2rem; background:var(--app-surface-raised,#10243d); color:var(--app-text-primary,#edf7ff); box-shadow:0 5px 25px var(--app-shadow-color,#0004); }
.meeting-restore:focus-visible { outline:3px solid var(--app-focus-ring); outline-offset:3px; }
.meeting-restore i { display:inline-block; margin-right:.4rem; color:var(--app-accent,#00cfff); animation:meeting-pulse 2s ease-in-out infinite; }
@keyframes meeting-pulse { 50% { opacity:.4; } }
@media(max-width:1200px) {
    .meeting-hero-chip { display:none; }
    .meeting-filters { grid-template-columns:2fr 1fr 1fr; }
    .meeting-filter-switch { padding-top:0; }
    .meeting-filters>.meeting-row { grid-column:2/-1; justify-content:flex-end; }
    .meeting-room-body { grid-template-columns:minmax(0,1fr) 330px; }
}
@media(max-width:850px) {
    .meeting-hero { padding:1.3rem; }
    .meeting-compose-fields { grid-template-columns:1fr 1fr; }
    .meeting-compose-fields>label:first-child { grid-column:1/-1; }
    .meeting-window { top:max(1vh,calc(var(--app-masthead-height,0px) + .5rem)); right:1vw; bottom:1vh; left:1vw; }
    .meeting-room-body { display:block; overflow:auto; }
    .meeting-stage,.meeting-sidebar { overflow:visible; }
    .meeting-sidebar { border-left:0; border-top:1px solid var(--meeting-border); }
    .meeting-participant-list { grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); }
    .meeting-preview-placeholder { min-height:220px; }
    .meeting-manager-grid { grid-template-columns:1fr; }
    .meeting-outcome-metrics { grid-template-columns:1fr 1fr; }
    .meeting-outcome-grid { grid-template-columns:1fr; }
    .meeting-followup-form { grid-template-columns:1fr 1fr; }
    .meeting-followup-reason { grid-column:1/-1; }
    .meeting-recurrence-fields { grid-template-columns:1fr 1fr; }
    .meeting-recurrence-fields>p { grid-column:1/-1; }
    .meeting-entity-layout { grid-template-columns:1fr; min-height:0; }
    .meeting-entity-results { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); max-height:11rem; }
    .meeting-entity-placeholder { min-height:10rem; }
}
@media(max-width:580px) {
    .meetings-workspace { padding:.65rem; }
    .meeting-hero { align-items:flex-start; gap:.8rem; }
    .meeting-hero-mark { width:2.8rem; height:2.8rem; font-size:1.2rem; border-radius:.8rem; }
    .meeting-mode-row { grid-template-columns:1fr; }
    .meeting-mode-row>.meeting-policy-option { grid-template-columns:auto 1fr; }
    .meeting-policy-option>.form-select { grid-column:1/-1; }
    .meeting-hero h1 { font-size:1.6rem; }
    .meeting-hero p { font-size:.8rem; }
    .meeting-create,.meeting-card { padding:1rem; }
    .meeting-compose-fields { grid-template-columns:1fr; }
    .meeting-recurrence-fields { grid-template-columns:1fr; }
    .meeting-recurrence-fields>p { grid-column:auto; }
    .meeting-compose-footer>.meeting-row { width:100%; flex-direction:column; }
    .meeting-compose-footer .btn { flex:none; width:100%; white-space:normal; }
    .meeting-filters { grid-template-columns:1fr 1fr; gap:.8rem; }
    .meeting-search,.meeting-filter-switch,.meeting-filters>.meeting-row { grid-column:1/-1; }
    .meeting-filters>.meeting-row { justify-content:flex-start; }
    .meeting-window-header { padding:.8rem; align-items:flex-start; }
    .meeting-window-status { gap:.35rem; }
    .meeting-time-remaining>span { display:none; }
    .meeting-card-actions>.meeting-row { display:grid; grid-template-columns:1fr; width:100%; }
    .meeting-card-actions>.meeting-row>.btn { width:100%; white-space:normal; }
    .meeting-room-mark,.meeting-window-header>.meeting-row>.meeting-status { display:none; }
    .meeting-window-header strong { font-size:1rem; }
    .meeting-stage,.meeting-sidebar { padding:.8rem; }
    .meeting-device-dock { padding:.5rem; gap:.5rem; }
    .meeting-device { flex:1 0 auto; font-size:.72rem; }
    .meeting-device img { width:1.5rem; height:1.5rem; }
    .meeting-room-footer { padding:.6rem .8rem; gap:.4rem; }
    .meeting-window .meeting-room-footer .btn { font-size:.7rem; padding:.5rem; }
    .meeting-preview-note { font-size:.68rem; }
    .meeting-guest-layout { padding:.75rem; }
    .meeting-guest-brandbar { border-radius:.85rem; }
    .meeting-guest-secure { font-size:0; }
    .meeting-guest-secure i { font-size:1rem; }
    .meeting-join-card { margin:1.25rem auto; }
    .meeting-join-hero { padding:1.55rem 1rem 1.3rem; }
    .meeting-join-body { padding:1.35rem 1rem 1.5rem; }
    .meeting-join-logo { height:3.6rem; }
    .meeting-join-logo.is-squad { width:3.6rem; }
    .meeting-join-logo.is-squad2u { width:5.8rem; }
    .meeting-delivery-row { grid-template-columns:auto minmax(0,1fr); }
    .meeting-delivery { grid-column:2; justify-self:start; }
    .meeting-timeline-item { grid-template-columns:auto 1fr; }
    .meeting-timeline-item time { grid-column:2; }
    .meeting-outcome { padding:.7rem; }
    .meeting-outcome__header { align-items:flex-start; }
    .meeting-outcome__header>.btn { padding:.45rem; font-size:0; }
    .meeting-outcome__header>.btn i { font-size:.8rem; }
    .meeting-outcome-metrics { grid-template-columns:1fr; }
    .meeting-followup-form { grid-template-columns:1fr; }
    .meeting-followup-reason { grid-column:auto; }
    .meeting-followup-row { grid-template-columns:auto minmax(0,1fr); }
    .meeting-followup-status { grid-column:2; justify-self:start; }
    .meeting-action-panel,.meeting-action-panel.is-wide,.meeting-action-panel.is-management { top:auto; right:.65rem; bottom:.65rem; left:.65rem; width:auto; max-height:calc(100dvh - 1.3rem); border-radius:1rem; transform:none; animation:none; }
    .meeting-action-panel__header,.meeting-action-panel__body { padding-left:.9rem; padding-right:.9rem; }
    .meeting-management-panel__tools>.btn span { display:none; }
    .meeting-invite-tabs button { flex-direction:column; gap:.2rem; font-size:.64rem; }
    .meeting-entity-search__controls { grid-template-columns:1fr; }
    .meeting-entity-results { grid-template-columns:1fr; }
    .meeting-recipient { grid-template-columns:auto auto minmax(0,1fr); }
    .meeting-recipient__status { grid-column:3; justify-self:start; }
    .meeting-entity-footer { align-items:stretch; flex-direction:column; }
    .meeting-entity-footer .btn { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
    .meeting-restore i,.meeting-pulse-dot,.meeting-unread,.meeting-time-remaining { animation:none; }
    :is(.meetings-workspace,.meeting-window) * { transition:none!important; }
    .meeting-action-layer,.meeting-action-panel { animation:none; }
}
