/* ═══════════════════════════════════════════════════════════════════════════
   meetterms.css — Run 56 (S6): the panel's meeting-gate styles.
   1. The Meeting terms section of the Messages tab (rendered by meetterms.js
      into the empty #meetTermsSection after .tpl-layout). It reuses the message
      editor's own classes (.tpl-cols, .tpl-textarea, .tpl-rtl, .tpl-actions,
      .tpl-preview) so the two editors on one tab look alike; only the frame and
      the version / entry rows are new here.
   2. The two class-detail blocks admin.js draws only when they have something to
      say (amendment R4): the "Join links" row and "Meeting terms accepted".
   Logical properties only (no left/right), the panel's own tokens (admin.css).
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 1. Messages tab → Meeting terms ── */
.mt-section {
    margin-block-start: var(--space-lg);
    padding: var(--space-lg);
    background: var(--bg-card);
    border: 1px solid var(--border-default);
    border-radius: var(--radius-lg);
    min-width: 0;
}
.mt-section:empty { display: none; }
.mt-head .mt-intro { margin-block: 6px 0; }
.mt-status { margin-block: var(--space-md) 0; font-size: 0.85rem; color: var(--text-secondary); }
.mt-status.error { color: var(--error-color); }
.mt-body { display: flex; flex-direction: column; gap: var(--space-lg); margin-block-start: var(--space-lg); }
.mt-body[hidden] { display: none; }
.mt-card {
    padding: var(--space-md);
    background: var(--bg-input);
    border: 1px solid var(--border-default);
    border-radius: var(--radius-md);
    min-width: 0;
}
.mt-card-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--space-sm);
    flex-wrap: wrap;
    margin-block-end: var(--space-md);
}
.mt-card-title {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}
.mt-version { margin: 0; }
.mt-lang { display: block; margin-block-end: 6px; }
.mt-textarea { min-height: 220px; }
.mt-error:empty { display: none; }
.mt-versions { margin-block-start: var(--space-md); }
.mt-versions[hidden] { display: none; }
.mt-version-list { display: flex; flex-direction: column; gap: var(--space-sm); }
.mt-version-item {
    padding: var(--space-sm) var(--space-md);
    border: 1px solid var(--border-default);
    border-radius: var(--radius-sm);
}
.mt-version-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-sm);
    flex-wrap: wrap;
    font-size: 0.85rem;
    color: var(--text-secondary);
}
/* .tpl-reset carries margin-left:auto for the message editor's column head;
   here the row's own space-between places it. */
.mt-show-text { margin-inline-start: auto; }
.mt-version-text { margin-block-start: var(--space-sm); }
.mt-version-text[hidden] { display: none; }
.mt-version-body { max-height: 260px; }
.mt-entry-row {
    display: flex;
    align-items: center;
    gap: var(--space-md);
    flex-wrap: wrap;
}
.mt-entry-field {
    display: inline-flex;
    align-items: center;
    gap: var(--space-sm);
    font-size: 0.88rem;
    color: var(--text-secondary);
}
.mt-num { inline-size: 5.5em; padding-inline: 10px; }

/* ── 2. The class detail (admin.js renderApptDetail) ── */
.meet-gate-actions { margin-block-end: 4px; }
.meet-gate-hint { margin: 0; }
.meet-acc-row .mini-main { overflow-wrap: anywhere; }
