@charset "UTF-8";
:root{--paper:#f6f3eb;--ink:#203b34;--muted:#5c6963;--line:#d4d8cb;--green:#173d35;--lime:#dcf0b0;--white:#fffdf7;--red:#8c3e3e}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 system-ui,-apple-system,Segoe UI,sans-serif}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button,.button{border:1px solid var(--ink);background:transparent;border-radius:8px;padding:11px 18px;color:var(--ink);cursor:pointer;text-decoration:none;display:inline-block;font-weight:650}button:hover,.button:hover{background:#e8eddf}button:disabled{opacity:.5;cursor:wait}button.primary,.primary,.button.primary{background:var(--green);color:var(--white);border-color:var(--green)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #98794b;outline-offset:4px}button.link{border:0;padding:0;text-decoration:underline;font-weight:400}header{max-width:1160px;margin:auto;padding:26px 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-weight:800;font-size:22px;text-decoration:none;display:flex;gap:10px;align-items:center}.brand-mark{display:inline-grid;place-items:center;background:var(--green);color:var(--lime);height:38px;width:38px;border-radius:50%;font:italic bold 30px Georgia,serif}nav{display:flex;gap:26px;font-size:14px}nav a{text-decoration:none}main{max-width:1104px;margin:0 auto;padding:50px 0 80px;min-height:65vh}h1,h2,h3,p{margin-top:0}h1{font:500 clamp(38px,5.8vw,72px)/1.08 Georgia,serif;letter-spacing:-2.5px;margin-bottom:25px;max-width:1000px}h1 em{font-weight:400;color:#49705a}h2{font:500 29px/1.2 Georgia,serif;letter-spacing:-.4px}h3{font-size:20px;line-height:1.35}.eyebrow{font-size:11px;letter-spacing:1.7px;font-weight:750;text-transform:uppercase}.lead{font-size:21px;line-height:1.55;max-width:700px}.small{font-size:13px;color:var(--muted)}.muted{color:var(--muted)}.hero{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:36px;min-height:530px}.hero .small{margin-top:18px}.ballot-art{position:relative;height:390px}.paper{position:absolute;width:290px;height:350px;border:1px solid var(--ink);border-radius:14px;padding:28px;box-shadow:0 16px 30px #173d350d}.p-back{background:#dce7ce;transform:rotate(-10deg);left:24px;top:5px;font-size:11px;letter-spacing:2px}.p-front{background:var(--white);transform:rotate(7deg);left:78px;top:25px;display:flex;flex-direction:column;justify-content:space-between}.p-front span{font-size:10px;letter-spacing:2px}.p-front strong{font:38px/1.15 Georgia,serif}.p-front small{font-size:10px}.mini-votes{display:flex;gap:14px}.mini-votes b{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--ink);border-radius:50%;font-size:22px}.intro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:1px solid var(--line);padding-top:36px;margin:45px 0}.intro-grid article>span{font:italic 24px Georgia,serif;color:#788a71;display:block;margin-bottom:20px}.intro-grid h2{font-size:24px}.reading{max-width:800px;margin-top:50px}.reading h2{margin-top:36px}.reading article{padding:24px 0;border-bottom:1px solid var(--line)}.reading article:last-child{border:0}#quiz{margin:30px 0;max-width:740px}#quiz.playing{max-width:800px;width:100%}.hero:has(#quiz.playing){display:block}.hero:has(#quiz.playing)>.ballot-art{display:none}.hero:has(#quiz.playing) h1{font-size:40px}.card{background:var(--white);border:1px solid #b5c3b0;border-radius:18px;padding:30px;box-shadow:0 12px 35px #203b3406;touch-action:pan-y}.card h2{font-size:32px}.card .context{font-size:17px}.progress{height:5px;background:#e3e8d9;border-radius:4px;margin:12px 0 25px}.progress>span{display:block;height:100%;background:var(--green);border-radius:4px}.vote-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0 12px}.vote-actions .yes{background:var(--green);color:white}.vote-actions .no{border-color:var(--red);color:var(--red)}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.secondary-actions{display:flex;gap:20px;flex-wrap:wrap}.choice{display:inline-block;padding:5px 13px;background:var(--lime);border-radius:30px;font-weight:700}.result-box{background:var(--green);color:var(--white);padding:26px;border-radius:14px;margin:20px 0}.result-box .big{font:52px Georgia,serif;display:block}.result-box p:last-child{margin-bottom:0}.table-scroll{max-width:100%;overflow-x:auto;margin:22px 0}table{width:100%;border-collapse:collapse;font-size:14px;background:var(--white)}caption{text-align:left;font-weight:700;margin-bottom:12px}th,td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left}thead th{font-size:12px;background:#e9eddf}tbody th{font-weight:500}td{font-variant-numeric:tabular-nums;white-space:nowrap}details{margin:16px 0;border-top:1px solid var(--line);padding-top:14px}summary{cursor:pointer;font-weight:650}.panel{max-width:620px;border:1px solid var(--line);background:var(--white);padding:30px;border-radius:14px;margin:30px 0}label:not(.check){display:block;font-weight:600;margin-bottom:6px}input[type=email],input[type=text],select{width:100%;border:1px solid #899c8f;border-radius:7px;background:white;color:var(--ink);padding:12px;margin-bottom:18px}label.check{display:flex;align-items:flex-start;gap:10px;margin:12px 0 22px}input[type=checkbox]{width:20px;height:20px;margin-top:3px;flex-shrink:0}.danger{color:var(--red);border-color:var(--red)}footer{max-width:1160px;margin:0 auto;padding:28px;border-top:1px solid var(--line);font-size:14px}footer>div{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:20px}footer .small{max-width:700px}#privacy-choice{position:fixed;z-index:20;bottom:16px;right:16px;max-width:450px;background:var(--white);border:1px solid var(--ink);border-radius:12px;padding:20px;box-shadow:0 12px 50px #173d3526;font-size:14px}#privacy-choice p{margin-bottom:12px}.notice:empty{display:none}.notice{pointer-events:none;position:fixed;z-index:30;left:50%;bottom:20px;transform:translateX(-50%);background:var(--green);color:white;padding:12px 22px;border-radius:10px;max-width:92vw}.skip{position:fixed;top:-100px;left:10px;z-index:40;background:white;padding:12px}.skip:focus{top:10px}[hidden]{display:none!important}.history-item{border:1px solid var(--line);border-radius:12px;padding:20px;margin:16px 0}.group-filter{max-width:500px}pre{overflow:auto;max-width:100%;white-space:pre-wrap;word-break:break-word}.source-links{font-size:14px}.source-links a{margin-right:15px}#single-vote{max-width:800px}.chosen{border:2px solid var(--green);background:var(--lime)}
@media(max-width:1180px){main{margin:0 28px}}@media(max-width:760px){header{padding:18px;gap:20px}nav{gap:14px;font-size:12px}nav a:last-child{display:none}.brand{font-size:18px;white-space:nowrap}.brand-mark{height:30px;width:30px;font-size:25px}main{margin:0 20px;padding-top:35px}h1{font-size:44px;letter-spacing:-1.5px}.lead{font-size:18px}.hero{display:block;min-height:auto}.ballot-art{display:none}.intro-grid{grid-template-columns:1fr;gap:15px}.intro-grid article>span{margin-bottom:10px}.intro-grid h2{margin-bottom:10px}.card{padding:20px}.card h2{font-size:27px}#privacy-choice{bottom:10px;left:10px;right:10px;max-width:none}footer{padding:22px}.panel{padding:22px}th,td{padding:9px 10px}tbody th{min-width:170px}.result-box .big{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

/* L’Électeur — bleu, blanc, rouge */
:root{--paper:#f5f7fc;--ink:#101b3b;--muted:#55617b;--line:#d7deed;--blue:#164bff;--red:#ed334b;--white:#fff;--green:var(--blue);--lime:#e5edff}
body:before{content:"";display:block;height:7px;background:linear-gradient(90deg,var(--blue) 0 33.33%,white 33.33% 66.66%,var(--red) 66.66%)}
button,.button{border-width:2px;border-radius:10px;padding:12px 20px;background:white;font-weight:750;transition:transform .15s,box-shadow .15s,background .15s}button:hover,.button:hover{background:#edf2ff;transform:translateY(-2px);box-shadow:0 4px 0 var(--ink)}button:active,.button:active{transform:translateY(1px);box-shadow:none}button:disabled{transform:none;box-shadow:none}button.primary,.button.primary{background:var(--blue);border-color:var(--blue);box-shadow:0 5px 0 #10278b}button.primary:hover{background:#083be3;box-shadow:0 7px 0 #10278b}button.link{background:transparent;transform:none;box-shadow:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:var(--red)}
header{max-width:1220px;padding:25px 30px;gap:20px}.brand{font-size:26px;font-weight:950;letter-spacing:-1.3px;white-space:nowrap}.brand-mark{width:39px;height:42px;background:var(--blue);color:white;border-radius:9px;box-shadow:4px 4px 0 var(--red);font:bold 32px/1 system-ui;transform:rotate(-6deg)}nav{gap:28px;font-weight:650}nav a:hover{color:var(--blue)}
main{max-width:1160px;padding:54px 0 80px}h1{font:900 clamp(45px,6.5vw,88px)/.99 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-4px;margin-bottom:30px;max-width:1080px}h1 em{font-style:normal;font-weight:900;color:var(--blue)}h2{font:850 32px/1.12 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-1.2px}h3{font-weight:800;letter-spacing:-.4px}.lead{font-size:21px;line-height:1.5;max-width:680px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;line-height:1.4;font-weight:850;letter-spacing:1.2px;margin-bottom:22px}.eyebrow:before{content:"";width:8px;height:8px;flex-shrink:0;background:var(--red);border-radius:50%}
.hero{grid-template-columns:1.28fr 1fr;gap:35px;min-height:585px}.hero h1{font-size:clamp(52px,6.8vw,88px)}.hero .lead{max-width:575px}.hero #start{font-size:19px;padding:17px 27px;border-radius:11px}.hero-copy{position:relative}.hero .eyebrow{border:1px solid var(--line);padding:9px 12px;border-radius:40px;background:white}
.ballot-art{height:440px;isolation:isolate;background:radial-gradient(circle,#a7b8e5 1px,transparent 1px);background-size:16px 16px;border-radius:50%;margin-top:10px}.paper{width:300px;height:350px;border:2px solid var(--ink);border-radius:20px;padding:28px;box-shadow:7px 8px 0 var(--ink)}.p-back{top:20px;left:20px;transform:rotate(-11deg);background:var(--red);color:white;font-size:13px;font-weight:900;letter-spacing:1px;line-height:1.5}.p-front{top:67px;left:94px;transform:rotate(8deg);background:white;gap:20px}.p-front span{font-size:10px;font-weight:850;letter-spacing:1.5px;color:var(--blue)}.p-front strong{font:900 38px/1.06 system-ui;letter-spacing:-1.7px}.p-front small{font-size:10px;font-weight:650;color:var(--muted)}.mini-votes{gap:15px}.mini-votes b{width:50px;height:50px;border:0;font-size:28px;color:white;background:var(--red)}.mini-votes b:nth-child(2){background:var(--blue)}.mini-votes b:nth-child(3){background:var(--ink)}.ballot-art:after{content:"LE CONTEXTE AVANT LES ÉTIQUETTES.";position:absolute;z-index:2;bottom:0;left:6px;background:var(--blue);color:white;font-size:11px;font-weight:850;letter-spacing:1px;padding:13px 17px;border-radius:6px;transform:rotate(-4deg);box-shadow:3px 4px 0 var(--ink)}
.intro-grid{gap:20px;margin:55px 0;border:0;padding:0}.intro-grid article{background:white;border:1px solid var(--line);border-radius:15px;padding:26px;position:relative;overflow:hidden}.intro-grid article>span{color:var(--blue);font:950 42px/1 system-ui;letter-spacing:-3px;margin-bottom:25px}.intro-grid article:nth-child(2)>span{color:var(--red)}.intro-grid h2{font-size:24px;letter-spacing:-.8px}.intro-grid p{font-size:15px;margin-bottom:0}.reading{max-width:850px;margin-top:55px}.reading a:hover{color:var(--blue)}#editions article{border:1px solid var(--line);border-left:6px solid var(--blue);border-radius:12px;background:white;padding:24px;margin-bottom:18px}#editions article h3 a{text-decoration:none}#editions>p{color:var(--muted);font-size:14px}
#quiz{max-width:790px}#quiz.playing{max-width:860px}.hero:has(#quiz.playing) h1{font-size:48px;max-width:650px;letter-spacing:-2px}.card{background:white;border:2px solid var(--ink);border-radius:20px;padding:32px;box-shadow:7px 8px 0 #dce4f7;animation:deal-in .22s ease-out}.card h2{font-size:35px;line-height:1.1;letter-spacing:-1.3px}.card .context{line-height:1.7}.card>.small:first-child{border-bottom:1px solid var(--line);padding-bottom:16px}.progress{height:8px;background:#dfe5f3;border-radius:10px;margin:0 0 26px}.progress>span{background:var(--blue);border-radius:10px;transition:width .2s}
.vote-actions{gap:15px;margin:28px 0 20px}.vote-actions button{font-size:23px;min-height:70px;border-radius:13px;border:0;box-shadow:0 5px 0 var(--ink)}.vote-actions .no{background:var(--red);color:white}.vote-actions .yes{background:var(--blue);color:white}.vote-actions .no:hover{background:#d91e37}.vote-actions .yes:hover{background:#063bdf}.secondary-actions{gap:22px;align-items:center;margin-bottom:16px}.secondary-actions button{font-size:14px}.actions{gap:12px}.choice{background:var(--ink);color:white;padding:10px 20px;border-radius:9px;font-size:23px;font-weight:850;transform:rotate(-2deg);margin:8px 0 18px}.choice[data-choice=contre]{background:var(--red)}.choice[data-choice=pour]{background:var(--blue)}
.result-box{position:relative;overflow:hidden;background:var(--blue);padding:30px;border-radius:13px;margin:24px 0;border-bottom:8px solid var(--red)}.result-box .big{font:950 84px/1.1 system-ui;letter-spacing:-5px}.result-box p{position:relative;max-width:570px}.result-box:after{content:"=";position:absolute;right:20px;top:0;font-size:150px;line-height:1;opacity:.12;font-weight:950;transform:rotate(-15deg)}
.table-scroll{margin:24px 0;border:1px solid var(--line);border-radius:10px}caption{font-weight:800;padding:16px;background:#edf2ff;color:var(--blue);margin:0}th,td{padding:13px 14px}thead th{font-size:11px;text-transform:uppercase;letter-spacing:.4px;background:var(--ink);color:white}tbody th{font-weight:650}tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}#scores td:nth-child(2){min-width:130px;background:linear-gradient(90deg,#e6edff var(--ratio,0%),transparent var(--ratio,0%));color:#103ab7;font-size:19px;font-weight:850}#scores td:nth-child(3){color:var(--muted)}details{margin:20px 0;padding-top:17px}summary{font-weight:750}hr{border:0;border-top:1px solid var(--line);margin:28px 0}
.panel{max-width:650px;padding:32px;border:2px solid var(--ink);border-radius:18px;box-shadow:7px 8px 0 #dce4f7}label:not(.check){font-weight:750}input[type=email],input[type=text],select{border-color:#a5afc7;border-radius:9px;padding:13px}input[type=checkbox]{accent-color:var(--blue)}.danger{color:#c91632;border-color:#c91632}footer{max-width:1220px;border-top:2px solid var(--ink);padding:30px}footer>p:first-child{font-weight:850}footer>div{gap:22px;margin-bottom:25px}#privacy-choice{border:2px solid var(--ink);border-radius:13px;padding:22px;box-shadow:5px 6px 0 #101b3b22}#privacy-choice p{margin-bottom:17px}#privacy-choice button{font-size:13px;box-shadow:none;transform:none}.notice{background:var(--ink);border-radius:9px}.skip{top:-150px}.skip:focus{top:10px}.history-item{border-left:5px solid var(--red);background:white;padding:24px;margin:18px 0}.source-links{font-size:13px;display:flex;gap:15px;flex-wrap:wrap}.source-links a{color:var(--blue);font-weight:650;margin:0}
@keyframes deal-in{from{opacity:.4;transform:translateY(12px) rotate(-.5deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@media(max-width:1230px){main{margin:0 30px}.ballot-art .p-front{left:75px}.paper{width:280px}}
@media(max-width:1000px) and (min-width:761px){.hero{grid-template-columns:1.25fr 1fr;gap:0}.hero h1{font-size:65px}.ballot-art{transform:scale(.83);transform-origin:right center;margin-left:-50px}}
@media(max-width:760px){header{padding:21px 20px;gap:14px}.brand{font-size:23px}.brand-mark{width:32px;height:35px;font-size:26px}nav{gap:17px;font-size:12px}main{margin:0 21px;padding-top:32px;padding-bottom:55px}h1{font-size:49px;letter-spacing:-2.5px;line-height:1.02}.lead{font-size:18px}.hero{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:auto}.hero h1{font-size:60px;letter-spacing:-3.3px;margin-bottom:22px}.hero .lead{font-size:18px}.hero #start{width:100%;font-size:19px}.hero .small{font-size:11px}.hero #quiz{margin:24px 0}.hero .eyebrow{font-size:9px;margin-bottom:22px;letter-spacing:.9px}.ballot-art{display:block;height:220px;margin:18px 0 35px;background-size:13px 13px;border-radius:16px}.paper{height:185px;width:220px;padding:20px;border-radius:13px}.p-back{left:20px;top:0;font-size:10px;padding-top:15px}.ballot-art .p-front{left:calc(50% - 90px);top:13px;gap:10px;transform:rotate(6deg)}.p-front strong{font-size:26px;letter-spacing:-1px}.p-front span{font-size:8px}.mini-votes{position:absolute;right:15px;bottom:24px;gap:6px}.mini-votes b{width:27px;height:27px;font-size:17px}.mini-votes b:last-child{display:none}.p-front small{font-size:8px;max-width:115px}.ballot-art:after{bottom:4px;left:0;font-size:8px;padding:9px 12px}.intro-grid{gap:14px;margin:35px 0}.intro-grid article{padding:22px 24px 22px 78px}.intro-grid article>span{position:absolute;top:26px;left:22px;font-size:35px}.intro-grid h2{font-size:22px}.intro-grid p{font-size:14px}.reading{margin-top:38px}.reading h2{font-size:29px}.card{padding:22px 19px;border-radius:15px;box-shadow:4px 5px 0 #dce4f7}.card h2{font-size:28px;letter-spacing:-.9px}.card .context{font-size:16px}.hero:has(#quiz.playing) h1{font-size:38px;letter-spacing:-1.7px}.hero:has(#quiz.playing)>.hero-copy>.lead,.hero:has(#quiz.playing)>.hero-copy>p:not(.eyebrow){display:none}.vote-actions{gap:11px}.vote-actions button{font-size:21px;min-height:65px;padding:12px}.secondary-actions{gap:15px}.secondary-actions button{font-size:13px}.source-links{gap:8px 15px}.result-box .big{font-size:70px}.result-box{padding:22px}th,td{padding:12px 10px}#scores td:nth-child(2){min-width:100px;font-size:18px}#scores tbody th{min-width:130px;font-size:12px}#scores td:nth-child(3){font-size:13px}.panel{padding:23px}#privacy-choice{padding:18px}footer{padding:25px 21px}footer>div{gap:18px}.actions button{font-size:14px}#image-preview{margin-top:20px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
