:root{--pink:#e6007a;--pink2:#ff4fa3;--plum:#5d1743;--muted:#7f6575;--border:#f4c6dc;--shadow:0 16px 45px rgba(119,20,78,.12)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#fff7fb,#ffeaf5);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--plum);min-height:100vh}button,input{font:inherit}.app-shell{max-width:760px;margin:auto;min-height:100vh;padding:24px 18px 48px}.screen{display:none}.screen.active{display:block}.brand-mark{width:88px;height:88px;border-radius:28px;background:linear-gradient(135deg,var(--pink),var(--pink2));color:white;display:grid;place-items:center;font-weight:900;font-size:30px;box-shadow:var(--shadow);margin:16px auto}.brand-mark.small{width:64px;height:64px;border-radius:20px}h1{font-size:clamp(48px,12vw,82px);line-height:.95;text-align:center;margin:10px 0;color:var(--pink);letter-spacing:-3px}h2{text-align:center;margin-top:30px}.lead{text-align:center;color:var(--muted);font-size:18px;max-width:520px;margin:12px auto 28px}.name-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.name-grid input{width:100%;border:1px solid var(--border);padding:14px 16px;border-radius:16px;background:white;outline:none}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mode-btn{border:1px solid var(--border);background:white;padding:18px;border-radius:22px;text-align:left;color:var(--plum);box-shadow:0 8px 24px rgba(125,26,80,.06);cursor:pointer}.mode-btn span{font-size:28px;display:block;margin-bottom:8px}.mode-btn b{display:block;font-size:16px}.mode-btn small{display:block;color:var(--muted);margin-top:4px}.category-picker{margin:20px 0;padding:18px;border:1px solid var(--border);border-radius:20px;background:#fff}.hidden{display:none!important}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.chip input{display:none}.chip span{display:block;border:1px solid var(--border);border-radius:999px;padding:9px 12px;background:#fff}.chip input:checked+span{background:var(--pink);color:#fff;border-color:var(--pink)}.primary,.secondary,.ghost{border:none;border-radius:16px;padding:14px 18px;cursor:pointer}.primary{background:linear-gradient(135deg,var(--pink),var(--pink2));color:white;font-weight:800}.secondary{background:#fff;border:1px solid var(--border);color:var(--plum);font-weight:700}.ghost{background:transparent;font-size:24px;color:var(--plum)}.topbar{display:flex;align-items:center;gap:8px;margin-bottom:24px}.pill{background:#fff;border:1px solid var(--border);padding:8px 12px;border-radius:999px;font-size:13px;font-weight:800}.pill.subtle{margin-left:auto;color:var(--muted)}.question-card{min-height:430px;background:white;border:1px solid var(--border);border-radius:34px;padding:32px 24px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;box-shadow:var(--shadow);position:relative;overflow:hidden}.question-card:before{content:'';position:absolute;width:260px;height:260px;border-radius:50%;background:#ffe0ef;top:-120px;right:-80px}.category-label{font-weight:900;color:var(--pink);position:relative}.turn-label{color:var(--muted);margin:12px 0 4px;position:relative}.question-card h2{font-size:clamp(28px,7vw,46px);line-height:1.14;max-width:620px;margin:18px 0;position:relative}.actions{display:grid;grid-template-columns:1fr 2fr;gap:10px;margin-top:18px}.actions button{min-height:58px}.ad-placeholder,.ad-wrap{margin:24px 0;text-align:center;padding:16px;border:1px dashed #e8b7cf;border-radius:14px;color:#b18a9f;background:rgba(255,255,255,.55);font-size:12px}#end{text-align:center;padding-top:70px}.consent{position:fixed;left:12px;right:12px;bottom:12px;max-width:760px;margin:auto;background:#fff;border:1px solid var(--border);border-radius:18px;padding:14px;box-shadow:var(--shadow);z-index:50}.consent p{margin:0 0 10px;font-size:13px}.consent button{border:0;background:var(--pink);color:#fff;border-radius:12px;padding:10px 14px}@media(max-width:520px){.mode-grid,.name-grid{grid-template-columns:1fr}.question-card{min-height:52vh}.app-shell{padding-top:12px}}

.site-footer{
  max-width:760px;
  margin:28px auto 0;
  padding:18px 8px calc(18px + env(safe-area-inset-bottom));
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px 18px;
  flex-wrap:wrap;
  text-align:center;
  font-size:12px;
  color:#8d6b7c;
}
.site-footer a{color:#8d0053;text-decoration:none;font-weight:700}
.site-footer a:hover{text-decoration:underline}
.legal-page{max-width:820px;margin:auto;padding:24px 18px 48px}
.legal-page h1{font-size:clamp(38px,8vw,64px);letter-spacing:-2px}
.legal-card{background:#fff;border:1px solid var(--border);border-radius:24px;padding:22px;margin:16px 0;box-shadow:0 8px 24px rgba(125,26,80,.05)}
.legal-card h2{text-align:left;margin:0 0 12px}
.legal-card p,.legal-card li{line-height:1.6;color:#6f5364}
.legal-warning{background:#fff3c9;border:1px solid #ead17c;border-radius:16px;padding:14px;color:#665415}
.back-home{display:inline-block;margin:8px 0 12px;color:var(--pink);font-weight:800;text-decoration:none}

/* NoFiltre branding patch v3 */
.main-logo{
  display:block !important;
  width:min(560px,94%) !important;
  max-height:300px;
  object-fit:contain;
  margin:8px auto 4px !important;
}
.end-logo{
  display:block !important;
  width:min(300px,75%) !important;
  height:auto;
  margin:0 auto 10px !important;
}
.site-footer{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  max-width:760px;
  margin:22px auto 0;
  padding:18px 16px calc(20px + env(safe-area-inset-bottom));
  justify-content:center;
  align-items:center;
  gap:8px 16px;
  flex-wrap:wrap;
  text-align:center;
  font-size:13px;
  color:#8d6b7c;
  border-top:1px solid rgba(230,0,122,.18);
}
.site-footer a{
  color:#8d0053;
  font-weight:800;
  text-decoration:none;
}
.site-footer a:hover{text-decoration:underline}
@media(max-width:520px){
  .main-logo{width:98% !important;max-height:220px}
}
