/* ===== Message Generator ===== */
.mg-tabs{ margin-bottom:18px; }
.mg-controls{ display:flex; flex-wrap:wrap; gap:14px; align-items:flex-end; background:var(--panel,#171b24); border:1px solid var(--line); border-radius:14px; padding:18px; margin-bottom:18px; }
.mg-ctrl{ display:flex; flex-direction:column; gap:5px; }
.mg-ctrl-grow{ flex:1; min-width:200px; }
.mg-ctrl label{ font-size:11px; text-transform:uppercase; letter-spacing:.04em; color:var(--text-4,#8a93a6); }
.mg-ctrl select, .mg-ctrl input[type=text], .mg-ctrl input[type=number]{ background:var(--panel-2,#12151c); border:1px solid var(--line); border-radius:8px; color:var(--text-1,#e9edf5); padding:9px 11px; font-size:14px; }
.mg-ctrl input[type=number]{ width:80px; }
.mg-check{ display:flex; align-items:center; gap:6px; text-transform:none; letter-spacing:0; font-size:13px; color:var(--text-2,#c9d1de); padding-bottom:9px; }
.mg-gen{ width:auto; padding:11px 26px; margin:0; }
#mgResults{ display:grid; grid-template-columns:repeat(auto-fill, minmax(280px,1fr)); gap:14px; }
#mgResults .loading-block{ grid-column:1/-1; justify-content:center; min-height:200px; }
.mg-regen{ grid-column:1/-1; width:100%; border-style:dashed; margin-top:4px; }
.mg-card{ background:var(--panel,#171b24); border:1px solid var(--line); border-radius:12px; padding:16px; display:flex; flex-direction:column; }
.mg-card.mg-flagged{ opacity:.6; border-color:rgba(229,72,77,.4); }
.mg-msg{ font-size:14px; line-height:1.5; color:var(--text-1,#e9edf5); flex:1; margin-bottom:12px; white-space:pre-wrap; }
.mg-actions, .mg-lib-actions{ display:flex; gap:7px; flex-wrap:wrap; }
.mg-a{ background:var(--panel-2,#12151c); border:1px solid var(--line); color:var(--text-3,#b6bdca); border-radius:7px; padding:6px 12px; font-size:12px; cursor:pointer; }
.mg-a:hover{ color:var(--text-1,#e9edf5); }
.mg-a.danger{ color:#e5686d; }
.mg-a:disabled{ opacity:.6; cursor:default; }
.mg-bad{ margin-left:auto; }
.mg-reason{ display:flex; gap:8px; margin-top:12px; }
.mg-reason-input{ flex:1; background:var(--panel-2,#12151c); border:1px solid var(--line); border-radius:7px; color:var(--text-1,#e9edf5); padding:8px 10px; font-size:12px; }
.mg-reason-save{ width:auto; padding:8px 12px; margin:0; font-size:12px; }
.mg-flagged-note{ font-size:12px; color:#e0a53f; }
/* library */
.mg-lib-h{ font-size:14px; font-weight:600; margin-bottom:12px; }
.mg-lib-sub{ font-size:12px; color:var(--text-4,#8a93a6); font-weight:400; }
.mg-lib-row{ background:var(--panel,#171b24); border:1px solid var(--line); border-radius:12px; padding:14px 16px; margin-bottom:10px; display:flex; align-items:center; gap:16px; }
.mg-lib-row .mg-msg{ margin-bottom:0; }
.mg-lib-actions{ flex:none; }
/* personas */
.mg-personas{ display:flex; flex-direction:column; gap:12px; }
.mg-persona-card{ background:var(--panel,#171b24); border:1px solid var(--line); border-radius:12px; padding:16px 18px; }
.mg-persona-top{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
.mg-persona-name{ font-size:15px; font-weight:600; }
.mg-persona-desc{ font-size:12px; color:var(--text-4,#8a93a6); margin-top:2px; }
.mg-persona-btns{ display:flex; gap:7px; }
.mg-add-persona{ margin-top:14px; border-style:dashed; }
.mg-ex-list{ max-height:280px; overflow-y:auto; margin-top:10px; }
.mg-ex-row{ display:flex; align-items:center; gap:10px; padding:7px 0; border-bottom:1px solid var(--line); font-size:12px; color:var(--text-3,#b6bdca); }
.mg-ex-row span{ flex:1; }
.mg-ex-del{ background:none; border:none; color:var(--text-4,#8a93a6); cursor:pointer; font-size:16px; }
.mg-ex-del:hover{ color:#e5686d; }
