.gm-layout { display: grid; grid-template-columns: minmax(290px,.8fr) minmax(0,1.3fr); gap: 22px; align-items: start; }
.gm-layout > *, .gm-history-column { min-width: 0; }
.gm-history-column { display: grid; gap: 20px; }
.gm-card { background: var(--surface); border: 1px solid var(--line); border-radius: 12px; padding: 22px; display: grid; gap: 16px; min-width: 0; }
.gm-composer { border-top: 3px solid var(--gold); }
.gm-fields { margin: 0; padding: 0; border: 0; display: grid; gap: 17px; min-width: 0; }
.gm-fields input:not([type=checkbox]), .gm-fields textarea, .gm-fields select { width: 100%; }
.gm-fields textarea { resize: vertical; line-height: 1.7; }
.gm-help { font-size: 12px; line-height: 1.7; color: var(--ink-2); overflow-wrap: anywhere; }
.gm-targets { display: grid; gap: 10px; }
.gm-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.gm-actions .btn { white-space: normal; }
.gm-group-list { max-height: 290px; overflow-y: auto; border: 1px solid var(--line); border-radius: 8px; padding: 5px; }
.gm-check { display: flex; flex-direction: row; align-items: center; gap: 10px; padding: 10px; min-height: 44px; color: var(--ink); font-weight: 500; cursor: pointer; }
.gm-check:has(input:checked) { background: var(--accent-tint); border-radius: 6px; }
.gm-check:has(input:disabled) { opacity: .65; }
.gm-check input { width: 17px; height: 17px; flex: none; margin: 0; accent-color: var(--accent); }
.gm-check small, .gm-preview-list small, .gm-details td small { display: block; color: var(--ink-2); font-size: 11px; margin-top: 3px; }
.gm-preview { border-color: var(--gold); }
.gm-kicker { color: var(--other); font-size: 11px; font-weight: 600; letter-spacing: .12em; }
.gm-preview-list { margin: 0; padding-left: 20px; max-height: 180px; overflow-y: auto; font-size: 13px; line-height: 1.8; overflow-wrap: anywhere; }
.gm-error:not(:empty), .gm-notice:not(:empty) { padding: 12px 16px; margin-bottom: 16px; border: 1px solid var(--line); border-radius: 8px; font-size: 13px; }
.gm-error { color: var(--signal); background: var(--signal-tint); }
.gm-notice { color: var(--support); background: var(--accent-tint); }
.gm-excerpt { max-width: 240px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin: 5px 0; }
.gm-badge { display: inline-flex; padding: 4px 7px; border-radius: 5px; background: var(--accent-tint); color: var(--ink-2); font-size: 11px; line-height: 1.4; }
.gm-badge[data-status=failed], .gm-badge[data-status=uncertain], .gm-badge[data-status=protected] { color: var(--signal); background: var(--signal-tint); }
.gm-badge[data-status=removed], .gm-badge[data-status=approved], .gm-badge[data-status=sent], .gm-badge[data-status=completed] { color: var(--support); }
.gm-counts { display: flex; flex-wrap: wrap; gap: 10px; font-size: 12px; }
.gm-details .table-card, .gm-history .table-card { margin: 0; }
.gm-details td { white-space: normal; overflow-wrap: anywhere; max-width: 260px; }
.gm-detail-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.gm-stop { padding: 14px; border: 1px solid var(--signal); border-radius: 8px; font-size: 13px; display: grid; gap: 12px; }
.gm-invitations { display: grid; gap: 12px; }
.gm-invitation { display: grid; gap: 8px; padding: 12px; border: 1px solid var(--line); border-radius: 8px; }
.gm-link { display: flex; align-items: center; gap: 8px; }
.gm-link input { width: 100%; min-width: 0; font-size: 12px; }
.gm-link .btn { flex: none; }
@media(max-width:1150px) { .gm-layout { grid-template-columns: minmax(0,1fr); } }
@media(max-width:650px) { .gm-card { padding: 16px; } .gm-fields input, .gm-fields textarea, .gm-fields select { font-size: 16px; } .gm-detail-head { align-items: flex-start; flex-direction: column; } .gm-excerpt { max-width: 140px; } }
.gm-history-column, .gm-card { grid-template-columns: minmax(0,1fr); }
.gm-card > *, .gm-history { min-width: 0; }
.gm-badge { width: fit-content; max-width: 100%; }
