:root{--navy:#1F3580;--navy-d:#16275f;--ink:#101010;--bg:#f6f7fb;--card:#fff;--muted:#5b6275;--line:#e3e6ef;
--yes:#1f9d55;--yes-bg:#e3f6ea;--maybe:#c78a00;--maybe-bg:#fff4d6;--no:#c0392b;--no-bg:#fde7e4;--radius:14px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}
a{color:var(--navy)}
.wrap{max-width:920px;margin:0 auto;padding:0 18px}
header.top{background:#fff;border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:62px}
header.top img{height:30px;display:block}
header.top nav a{font-size:.92rem;text-decoration:none;color:var(--muted);margin-left:16px}
.hero{background:linear-gradient(135deg,var(--navy) 0%,#2c4aa8 100%);color:#fff;padding:42px 0 90px}
.hero h1{font-size:clamp(1.7rem,4.2vw,2.5rem);line-height:1.15;margin:0 0 12px}
.hero p{font-size:1.08rem;opacity:.92;max-width:640px;margin:0}
.badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.badges span{background:rgba(255,255,255,.14);border-radius:99px;padding:5px 12px;font-size:.88rem}
.card{background:var(--card);border-radius:var(--radius);box-shadow:0 6px 24px rgba(20,30,70,.08);padding:24px;margin-bottom:22px}
.lift{margin-top:-62px}
h2{font-size:1.35rem;margin:0 0 14px}
h3{font-size:1.05rem;margin:18px 0 8px}
label{display:block;font-weight:600;font-size:.93rem;margin:14px 0 6px}
.hint{font-weight:400;color:var(--muted);font-size:.85rem}
input[type=text],input[type=date],input[type=time],textarea{width:100%;font:inherit;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}
input:focus,textarea:focus{outline:2px solid #9fb3f0;border-color:var(--navy)}
textarea{min-height:70px;resize:vertical}
.row{display:flex;gap:10px;align-items:center;margin-bottom:8px}
.row>input{flex:1}
.row .date{flex:1.3}.row .time{flex:.8}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
@media(max-width:620px){.grid2{grid-template-columns:1fr}}
button,.btn{font:inherit;cursor:pointer;border:0;border-radius:10px;padding:11px 18px;background:var(--navy);color:#fff;font-weight:600;text-decoration:none;display:inline-block}
button:hover,.btn:hover{background:var(--navy-d)}
button.ghost{background:#eef1fa;color:var(--navy)}
button.ghost:hover{background:#e1e6f6}
button.small{padding:6px 11px;font-size:.85rem}
button.icon{background:transparent;color:var(--muted);padding:6px 9px;font-size:1.1rem}
button.icon:hover{background:#f0f2f8}
button.big{width:100%;padding:15px;font-size:1.05rem;margin-top:18px}
button:disabled{opacity:.55;cursor:default}
.tabs{display:flex;gap:8px;margin:6px 0 10px;flex-wrap:wrap}
.error{background:var(--no-bg);color:var(--no);border-radius:10px;padding:10px 12px;margin-top:12px;display:none}
.ok{background:var(--yes-bg);color:#145c33;border-radius:10px;padding:12px 14px}
.hp{position:absolute;left:-9999px}
/* sponsor */
.sponsor{display:flex;gap:14px;align-items:center;border:1px dashed #c9d1ea;border-radius:var(--radius);padding:14px 16px;background:#fbfcff;text-decoration:none;color:inherit;margin-bottom:22px}
.sponsor img{width:54px;height:54px;border-radius:12px;object-fit:cover;flex:none}
.sponsor .tag{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.sponsor strong{display:block;font-size:1rem}
.sponsor span.t{font-size:.92rem;color:var(--muted)}
.sponsor .cta{margin-left:auto;white-space:nowrap;background:var(--navy);color:#fff;border-radius:9px;padding:8px 12px;font-size:.88rem;font-weight:600}
@media(max-width:560px){.sponsor .cta{display:none}}
/* contenu seo */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:700px){.steps{grid-template-columns:1fr}}
.steps div{background:#fff;border-radius:var(--radius);padding:18px;border:1px solid var(--line)}
.steps b{display:inline-flex;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;align-items:center;justify-content:center;margin-bottom:8px}
details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin-bottom:10px}
summary{font-weight:600;cursor:pointer}
footer{color:var(--muted);font-size:.88rem;padding:30px 0 40px;border-top:1px solid var(--line);margin-top:30px}
footer a{color:var(--muted)}
/* sondage */
.meta{color:var(--muted);font-size:.95rem;margin:4px 0 0}
.share{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.share input{flex:1;min-width:200px}
.table-wrap{overflow-x:auto;margin:0 -6px}
table.votes{border-collapse:separate;border-spacing:4px;min-width:100%}
table.votes th,table.votes td{text-align:center;padding:8px 6px;border-radius:8px;font-size:.92rem}
table.votes thead th{background:#eef1fa;font-weight:600;min-width:96px;vertical-align:bottom}
table.votes thead th.best{background:var(--navy);color:#fff}
table.votes thead th.chosen{background:var(--yes);color:#fff}
table.votes td.name,table.votes th.name{text-align:left;font-weight:600;min-width:120px;background:transparent;white-space:nowrap}
td.yes{background:var(--yes-bg);color:var(--yes)} td.maybe{background:var(--maybe-bg);color:var(--maybe)} td.no{background:var(--no-bg);color:var(--no)} td.none{background:#f3f4f7;color:#aaa}
tr.total td{font-weight:700;background:transparent}
.pick{display:flex;gap:4px;justify-content:center}
.pick button{padding:7px 9px;background:#f0f2f8;color:#555;border-radius:8px;font-size:.9rem}
.pick button.on.yes{background:var(--yes);color:#fff}.pick button.on.maybe{background:var(--maybe);color:#fff}.pick button.on.no{background:var(--no);color:#fff}
.legend{font-size:.85rem;color:var(--muted);margin-top:8px}
.items li{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);list-style:none}
.items{padding:0;margin:0}
.items .who{margin-left:auto;font-size:.9rem;color:var(--muted)}
.items .free{color:var(--yes);font-weight:600}
.chosen-banner{background:var(--yes-bg);border-left:5px solid var(--yes);border-radius:10px;padding:14px 16px;margin-bottom:16px}
.admin{border:2px solid #c9d1ea}
.comment{font-size:.85rem;color:var(--muted);font-weight:400}
.toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#101010;color:#fff;padding:10px 16px;border-radius:10px;opacity:0;transition:.25s;pointer-events:none;z-index:9}
.toast.show{opacity:1}
.muted{color:var(--muted)}
.hidden{display:none!important}
table.votes td.name,table.votes th.name{position:sticky;left:0;z-index:1;background:#fff;box-shadow:4px 0 6px -4px rgba(0,0,0,.12)}
@media(max-width:560px){table.votes thead th{min-width:84px;font-size:.85rem}}
table.votes td.name input{display:block;width:150px;max-width:42vw}
.sharebar{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.share-btn{font:inherit;cursor:pointer;border:0;border-radius:10px;padding:10px 14px;font-weight:600;font-size:.92rem;text-decoration:none;color:#fff;display:inline-flex;align-items:center;gap:6px}
.share-btn.native{background:var(--navy)}.share-btn.wa{background:#1f9d55}.share-btn.fb{background:#0866ff}.share-btn.sms{background:#5b6275}.share-btn.mail{background:#5b6275}
.share-btn.copy{background:#eef1fa;color:var(--navy)}
.share-btn:hover{filter:brightness(.92)}
.share-tool{text-align:center}
.share-tool .sharebar{justify-content:center}

.print-footer{display:none}
@media print{
  body{background:#fff}
  header.top,footer,.no-print,.sharebar,.share-tool,#sponsor,button,.hero .badges,#faq,.toast{display:none!important}
  .hero{background:none;color:#000;padding:0 0 10px}.hero p{opacity:1}
  .card{box-shadow:none;border:1px solid #ddd;break-inside:avoid}
  .lift{margin-top:0}
  .print-footer{display:block;margin-top:8mm;break-inside:avoid;border-top:1px solid #ccc;padding:6px 10px;font-size:9pt;color:#333;background:#fff}
  .print-footer .pf-ad{margin-top:2px}
  a{color:#000;text-decoration:none}
  @page{margin:12mm 10mm}
}

.idea-box{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:#fffaf0;border:1px solid #f3e2b8}
.idea-box .btn{white-space:nowrap}
