@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,600;1,600&family=Montserrat:wght@400;500;700&display=swap');

#ik-root {
  --rose:#D4A5A5; --beige:#F5EBE0; --bleu:#2C3E50; --or:#C5A059; --blanc:#FFFFFF;
  --serif:'Cormorant Garamond',serif; --sans:'Montserrat',sans-serif;
  font-family:var(--sans); color:var(--bleu); max-width:1100px; margin:0 auto; padding:10px 0 40px;
}
#ik-progress { display:flex; align-items:center; gap:10px; margin-bottom:24px; }
#ik-progress-line { flex:1; height:3px; background:#e8ddd5; border-radius:2px; position:relative; }
#ik-progress-fill { position:absolute; left:0; top:0; height:100%; background:var(--or); border-radius:2px; transition:width .5s ease; }
#ik-step-label { font-family:var(--serif); font-size:.85rem; color:var(--or); white-space:nowrap; font-style:italic; }
#ik-layout { display:flex; flex-direction:column; gap:24px; }
#ik-wizard { background:#fff; border-radius:16px; padding:28px; box-shadow:0 4px 20px rgba(0,0,0,.07); min-height:400px; }
.ik-intro h2 { font-family:var(--serif); font-size:2rem; margin:0 0 6px; }
.ik-intro .sub { color:var(--or); font-style:italic; margin-bottom:18px; font-size:.95rem; }
.ik-intro p { line-height:1.75; font-size:.9rem; margin-bottom:14px; }
.ik-step-header { display:flex; align-items:flex-start; gap:12px; margin-bottom:22px; padding-bottom:14px; border-bottom:2px solid var(--beige); }
.ik-step-icon { font-size:1.8rem; line-height:1; flex-shrink:0; }
.ik-step-header h2 { font-family:var(--serif); font-size:1.5rem; margin:0 0 2px; }
.ik-step-header .desc { font-size:.8rem; color:#9A8E85; font-style:italic; margin:0; }
.ik-question { margin-bottom:20px; }
.ik-question-label { display:block; font-family:var(--serif); font-size:1rem; font-weight:600; margin-bottom:10px; }
.ik-options { display:flex; flex-direction:column; gap:5px; }
.ik-option { display:flex; align-items:flex-start; gap:10px; padding:8px 12px; border-radius:8px; cursor:pointer; border:1px solid transparent; transition:all .15s; }
.ik-option:hover { background:var(--beige); }
.ik-option.selected { background:#fff8f0; border-color:var(--or); }
.ik-option input[type=checkbox] { margin:2px 0 0; flex-shrink:0; accent-color:var(--or); width:15px; height:15px; }
.ik-option span { font-size:.87rem; line-height:1.45; }
.ik-autre { display:flex; align-items:center; gap:8px; margin-top:8px; padding-left:4px; }
.ik-autre input[type=text] { flex:1; border:1px solid #ddd; border-radius:6px; padding:6px 10px; font-size:.85rem; font-family:var(--sans); outline:none; }
.ik-autre input[type=text]:focus { border-color:var(--or); }
.ik-preview { background:var(--beige); border-left:3px solid var(--or); border-radius:0 8px 8px 0; padding:12px 16px; margin-top:18px; font-family:var(--serif); font-style:italic; font-size:.95rem; line-height:1.65; min-height:44px; transition:all .3s; }
.ik-preview .ph { color:#ccc; font-size:.85rem; }
.ik-nav { display:flex; justify-content:space-between; align-items:center; margin-top:28px; padding-top:16px; border-top:1px solid var(--beige); }
.ik-btn-next { background:var(--or); color:#fff; border:none; padding:12px 28px; border-radius:10px; font-family:var(--serif); font-size:1rem; cursor:pointer; transition:all .2s; }
.ik-btn-next:hover { background:#b08e4d; transform:translateY(-1px); }
.ik-btn-prev { background:none; border:1px solid #ddd; color:#999; padding:10px 20px; border-radius:10px; font-family:var(--sans); font-size:.82rem; cursor:pointer; transition:all .2s; }
.ik-btn-prev:hover { border-color:var(--bleu); color:var(--bleu); }
#ik-visual { background:#fff; border-radius:16px; padding:18px; box-shadow:0 4px 20px rgba(0,0,0,.07); text-align:center; max-width:560px; margin:0 auto; width:100%; }
#ik-visual h3 { font-family:var(--serif); font-size:1.2rem; margin:0 0 3px; }
#ik-visual .tagline { font-style:italic; color:var(--or); font-size:.78rem; margin-bottom:10px; }
.cercle-svg { fill-opacity:.35; stroke:#fff; stroke-width:1; transition:fill-opacity .4s; }
.cercle-svg.lit { fill-opacity:.6; }
.plb { fill:var(--bleu); stroke:var(--or); stroke-width:1; }
.plt { fill:#fff; font-family:'Cormorant Garamond',serif; font-weight:bold; font-size:10px; text-anchor:middle; letter-spacing:1px; }
.sbt { font-family:'Cormorant Garamond',serif; font-size:9px; fill:var(--bleu); text-anchor:middle; font-style:italic; }
.fc { width:100%; height:100%; display:flex; align-items:center; justify-content:center; text-align:center; padding:4px; font-size:8px; line-height:1.25; word-wrap:break-word; font-weight:500; }
.ik-result-card { background:#fff; border-radius:10px; padding:16px 18px; margin-bottom:14px; border-left:4px solid var(--rose); box-shadow:0 2px 8px rgba(0,0,0,.05); }
.ik-result-card h3 { font-family:var(--serif); font-size:1.05rem; color:var(--or); margin:0 0 8px; }
.ik-result-card p { font-family:var(--serif); font-style:italic; font-size:.95rem; line-height:1.7; margin:0; }
.ik-vocation-box { background:var(--bleu); color:#fff; padding:22px; border-radius:12px; text-align:center; margin-top:20px; border-bottom:3px solid var(--or); }
.ik-vocation-box h3 { color:var(--or); font-family:var(--serif); font-size:1.2rem; margin:0 0 10px; }
.ik-vocation-box p { font-family:var(--serif); font-style:italic; font-size:1.05rem; line-height:1.75; margin:0; }
.ik-btn-print { background:var(--or); color:#fff; border:none; padding:14px; border-radius:10px; font-family:var(--serif); font-size:1rem; cursor:pointer; width:100%; margin-top:20px; transition:all .2s; }
.ik-btn-print:hover { background:#b08e4d; }
.ik-btn-restart { background:none; border:none; color:#cc0000; font-size:.78rem; text-decoration:underline; cursor:pointer; opacity:.6; display:block; margin:10px auto 0; font-family:var(--sans); }
.ik-btn-restart:hover { opacity:1; }
.bridge-block { margin-bottom:22px; padding-bottom:20px; border-bottom:1px solid #f0ebe4; }
.bridge-block:last-child { border-bottom:none; }
#ik-print-header { display:none; }

@media print {
  .sidebar, #site-header, #site-footer,
  .outil-meta-bar, .content-box-header,
  .content-box-body > a { display:none!important; }
  #ik-wizard, #ik-progress, .ik-btn-print, .ik-btn-restart { display:none!important; }
  body { background:#fff!important; }
  #page-wrapper { display:block!important; padding:0!important; }
  .content-main, .content-box, .content-box-body {
    width:100%!important; max-width:100%!important;
    padding:0!important; margin:0!important;
    box-shadow:none!important; border:none!important; background:#fff!important;
  }
  #ik-root { padding:0!important; }
  #ik-visual { box-shadow:none; max-width:420px; margin-bottom:24px; }
  #ik-print-header { display:block!important; text-align:center; margin-bottom:28px; padding-bottom:16px; border-bottom:2px solid #C5A059; }
}
