:root{--bg: #ffffff;--fg: #1a2233;--muted: #5a6478;--brand: #1f5eff;--brand-dark: #1746c4;--green: #0f9d58;--green-bg: #e8f6ee;--amber: #b26a00;--amber-bg: #fdf3e2;--card: #f6f8fc;--border: #dde3ee;--radius: 12px;--maxw: 620px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--fg);background:var(--bg);line-height:1.55;font-size:17px}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:8px;top:8px;background:#fff;padding:8px 12px;z-index:10}#app,.page{max-width:var(--maxw);margin:0 auto;padding:24px 20px 64px}h1{font-size:1.7rem;line-height:1.25;margin:.2em 0 .5em}h2{font-size:1.25rem;margin:1.4em 0 .5em}h3{font-size:1.05rem;margin:1em 0 .3em}p{margin:.5em 0}a{color:var(--brand-dark)}.muted{color:var(--muted)}.small{font-size:.9rem}.btn{display:inline-block;width:100%;border:none;border-radius:var(--radius);padding:15px 18px;font-size:1.05rem;font-weight:600;cursor:pointer;text-align:center;text-decoration:none;transition:background .15s}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-dark)}.btn-secondary{background:#fff;color:var(--brand-dark);border:1.5px solid var(--brand)}.btn-ghost{width:auto;background:none;border:none;color:var(--muted);padding:8px 4px;font-size:.95rem;cursor:pointer}.countdown{display:inline-block;background:var(--amber-bg);color:var(--amber);font-weight:600;padding:6px 12px;border-radius:999px;font-size:.9rem;margin-bottom:8px}.progress{height:6px;background:var(--border);border-radius:999px;overflow:hidden;margin:8px 0 4px}.progress>span{display:block;height:100%;background:var(--brand);transition:width .25s}.progress-label{font-size:.85rem;color:var(--muted);margin-bottom:20px}fieldset{border:none;margin:0;padding:0}legend{font-size:1.3rem;font-weight:600;padding:0;margin-bottom:4px}.option{display:block;width:100%;text-align:left;background:var(--card);border:1.5px solid var(--border);border-radius:var(--radius);padding:16px;margin:10px 0;font-size:1rem;cursor:pointer;transition:border-color .15s,background .15s}.option:hover,.option:focus-visible{border-color:var(--brand);outline:none}.option.highlight{border-color:var(--brand)}.option .badge{display:inline-block;background:var(--brand);color:#fff;font-size:.72rem;padding:2px 8px;border-radius:999px;margin-left:8px;vertical-align:middle}.option .hint{display:block;font-size:.85rem;color:var(--muted);margin-top:4px}.freetext{width:100%;padding:12px 14px;font-size:1rem;border:1.5px solid var(--border);border-radius:var(--radius);margin:4px 0 10px}.timeline{list-style:none;padding:0;margin:12px 0}.timeline li{position:relative;padding:14px 14px 14px 54px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px}.timeline .date{position:absolute;left:14px;top:16px;width:28px;height:28px;border-radius:50%;background:var(--brand);color:#fff;font-size:.85rem;display:flex;align-items:center;justify-content:center;font-weight:700}.timeline .deadline{font-weight:700;color:var(--brand-dark);font-size:.9rem}.notice{border-radius:var(--radius);padding:14px 16px;margin:14px 0}.notice-green{background:var(--green-bg);border:1px solid #bfe6cd}.notice-green h3{color:var(--green)}.notice-amber{background:var(--amber-bg);border:1px solid #f0d9a8}.notice-amber h3{color:var(--amber)}.reco-card{border:2px solid var(--brand);border-radius:var(--radius);padding:18px;margin:14px 0;background:#fff}.reco-card.secondary{border:1.5px solid var(--border)}.reco-card.logiciel{border:1.5px dashed var(--border);background:var(--card)}.trust{background:var(--card);border-radius:var(--radius);padding:16px;margin:20px 0;font-size:.92rem}.disclosure{font-size:.85rem;color:var(--muted)}.email-box{border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin:20px 0}.email-box input[type=email]{width:100%;padding:13px 14px;font-size:1rem;border:1.5px solid var(--border);border-radius:var(--radius);margin:8px 0}.consent{display:flex;gap:8px;align-items:flex-start;font-size:.85rem;color:var(--muted);margin:10px 0}.consent input{margin-top:3px}.form-msg{font-size:.9rem;margin-top:8px}.form-msg.ok{color:var(--green)}.form-msg.err{color:#c0392b}.source-link{font-size:.82rem}footer{border-top:1px solid var(--border);margin-top:40px;padding-top:20px;font-size:.85rem;color:var(--muted)}footer a{margin-right:16px}.sep{margin:28px 0;border:none;border-top:1px solid var(--border)}
