:root{--bg:#fff7f1;--card:#ffffff;--ink:#2f2430;--muted:#766b78;--gold:#c99a56;--pink:#e8b7b2;--green:#607d6c;--danger:#b74c4c;--line:#eaded8}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:linear-gradient(135deg,#fff7f1,#f7ede7);color:var(--ink)}a{color:inherit}.wrap{max-width:1120px;margin:0 auto;padding:24px}.hero{min-height:72vh;display:grid;place-items:center;text-align:center;padding:40px 20px}.brand{font-family:Georgia,serif;font-size:clamp(34px,6vw,72px);line-height:1;margin:0}.tag{font-size:20px;color:var(--muted);max-width:760px;margin:18px auto}.btn,.button,button{display:inline-block;border:0;background:var(--ink);color:white;padding:13px 18px;border-radius:999px;text-decoration:none;font-weight:700;cursor:pointer}.btn.secondary{background:var(--gold);color:#23180a}.btn.light{background:white;color:var(--ink);border:1px solid var(--line)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.card{background:rgba(255,255,255,.88);border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 14px 35px rgba(64,42,30,.08)}.nav{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 24px;background:rgba(255,255,255,.85);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2}.nav strong{font-family:Georgia,serif;font-size:22px}.nav .links{display:flex;gap:10px;flex-wrap:wrap}.form{display:grid;gap:14px}.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}label{font-weight:700;font-size:14px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff;color:var(--ink);font-size:15px}textarea{min-height:110px}.alert{background:#fff3cd;border:1px solid #ffe49d;border-radius:16px;padding:12px;margin:14px 0}.ok{background:#eaf6ed;border-color:#bdddc6}.danger{background:#fdeaea;border-color:#f2c2c2}.table{width:100%;border-collapse:collapse;background:white;border-radius:18px;overflow:hidden}.table th,.table td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.table th{background:#f9eee8}.pill{display:inline-block;padding:5px 10px;border-radius:999px;background:#f2e7df;font-size:13px}.event-head{background:linear-gradient(135deg,#3a2a38,#7a5b65);color:white;border-radius:30px;padding:38px;text-align:center;margin:24px 0}.event-head h1{font-family:Georgia,serif;font-size:48px;margin:0}.choice{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);padding:12px;border-radius:14px}.choice input{width:auto}.qrbox{text-align:center}.qrbox canvas{background:white;padding:12px;border-radius:18px;border:1px solid var(--line)}.print-card{background:white;border:1px solid var(--line);border-radius:28px;padding:34px;text-align:center;max-width:720px;margin:20px auto}.print-title{font-family:Georgia,serif;font-size:44px}.small{color:var(--muted);font-size:14px}.kpi{font-size:34px;font-weight:800}.footer{text-align:center;color:var(--muted);padding:30px}.hide-print{}@media print{.nav,.hide-print,.btn,button{display:none!important}body{background:white}.wrap{max-width:none}.print-card{box-shadow:none;border:1px solid #ddd;page-break-inside:avoid}}


/* V2 - Thèmes personnalisables côté mariés */
.theme-preview,.event-themed,.print-themed{background:linear-gradient(135deg,var(--client-bg,#fff7f1),var(--client-secondary,#f7e7e9));color:var(--client-text,#2b2b2b)}
.event-themed .event-head,.theme-preview .event-head,.print-themed .print-head{background:linear-gradient(135deg,var(--client-primary,#B76E79),var(--client-accent,#D4AF37));color:#fff}
.event-themed .event-head h1,.print-themed .print-title,.theme-preview .preview-title{font-family:var(--client-font,Georgia,serif)}
.event-themed button,.event-themed .btn-primary,.print-themed .btn-primary{background:var(--client-primary,#B76E79);color:#fff}
.event-themed .pill,.theme-preview .pill{background:var(--client-secondary,#F7E7E9);color:var(--client-text,#2B2B2B);border:1px solid color-mix(in srgb,var(--client-primary,#B76E79) 30%,white)}
.event-themed .card,.print-themed .print-card{border-color:color-mix(in srgb,var(--client-primary,#B76E79) 25%,white)}
.swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.swatch{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;padding:10px;background:#fff}.swatch input[type=color]{width:44px;height:38px;padding:2px;border-radius:10px}.preset-row{display:flex;gap:8px;flex-wrap:wrap}.preset{border:1px solid var(--line);background:white;color:var(--ink);padding:8px 10px;border-radius:999px;font-size:13px}.preview-box{border-radius:24px;padding:18px;border:1px solid var(--line)}
