/* mein-gruss - Erstellen-Formular + Liste */
.mg-form, .mg-card, .mg-success { --k:#E8623D; --kd:#C94E2D; --p:#2F8F83; --ink:#2B2230; --line:#E7DACF; --cream:#FBF4EE; }
.mg-form { max-width: 640px; background:#fff; border:1px solid var(--line); border-radius:16px; padding:26px; box-shadow:0 10px 30px -18px rgba(43,34,48,.4); }
.mg-label { display:block; margin:0 0 16px; font-weight:600; color:#2B2230; }
.mg-label input[type=text], .mg-label textarea, .mg-label select, .mg-ai input {
  display:block; width:100%; margin-top:6px; padding:12px 14px; font:inherit;
  border:1px solid #d9cdbf; border-radius:12px; background:#fff; font-weight:400; box-sizing:border-box;
}
.mg-label small { display:block; margin-top:5px; font-weight:400; color:#8a8090; }
.mg-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.mg-ai { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:-6px 0 16px; }
.mg-ai input { flex:1 1 160px; margin-top:0; }
.mg-ai-status { font-size:13px; color:#8a8090; }
.mg-btn { display:inline-flex; align-items:center; gap:.4em; background:var(--k); color:#fff !important; border:0; border-radius:999px; padding:12px 22px; font-weight:600; font-size:15px; cursor:pointer; text-decoration:none; transition:.15s; }
.mg-btn:hover { background:var(--kd); transform:translateY(-1px); }
.mg-btn-lg { width:100%; justify-content:center; font-size:16px; padding:15px; margin-top:6px; }
.mg-btn-sm { padding:8px 14px; font-size:13px; }
.mg-btn-ghost { background:#fff; color:var(--ink) !important; border:1px solid var(--line); }
.mg-btn-ghost:hover { background:#fff; border-color:var(--k); }
.mg-btn-ai { background:var(--p); }
.mg-btn-ai:hover { background:#246B62; }
.mg-preview { display:flex; flex-wrap:wrap; gap:8px; margin:-8px 0 16px; }
.mg-preview .mg-thumb { width:72px; height:72px; border-radius:10px; object-fit:cover; border:1px solid var(--line); background:#f3ece4; display:flex; align-items:center; justify-content:center; font-size:11px; color:#8a8090; text-align:center; overflow:hidden; }
.mg-preview .mg-thumb img { width:100%; height:100%; object-fit:cover; }

.mg-note { max-width:560px; background:#fff; border:1px solid var(--line); border-radius:16px; padding:24px; }

/* Erfolg */
.mg-success { max-width:560px; background:#fff; border:1px solid var(--line); border-radius:16px; padding:28px; box-shadow:0 10px 30px -18px rgba(43,34,48,.4); }
.mg-success h3 { margin-top:0; font-family:Fraunces,Georgia,serif; }
.mg-linkrow { display:flex; gap:8px; margin:14px 0; }
.mg-linkrow input { flex:1; padding:11px 12px; border:1px solid #d9cdbf; border-radius:10px; font:inherit; }
.mg-qrbox { display:inline-block; }
.mg-qrbox canvas, .mg-qrbox img { display:block; }
#mg-qr { margin:14px 0; padding:14px; background:#fff; border:1px solid var(--line); border-radius:14px; width:max-content; }
.mg-qr-sm canvas, .mg-qr-sm img { width:96px !important; height:96px !important; }

/* Liste */
.mg-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:18px; }
.mg-item { background:#fff; border:1px solid var(--line); border-radius:14px; padding:16px; }
.mg-item-head { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:6px; }
.mg-badge { background:var(--cream); border:1px solid var(--line); color:#2F8F83; font-size:12px; font-weight:700; padding:3px 9px; border-radius:999px; white-space:nowrap; }
.mg-item-url { font-size:12px; word-break:break-all; margin-bottom:10px; }
.mg-item-meta { font-size:13px; color:#8a8090; margin:8px 0; }
.mg-inline { display:flex; gap:6px; align-items:center; flex-wrap:wrap; margin-top:8px; }
.mg-inline input[type=file] { font-size:12px; max-width:150px; }
@media (max-width:560px){ .mg-row{grid-template-columns:1fr;} }
