:root{color-scheme:dark;--bg:#080f1c;--panel:#111b2b;--panel2:#162438;--line:rgba(196,217,255,.16);--white:#f4f6ff;--muted:#a9b9cf;--accent:#a69bff;--accent2:#79d6ee;--button:#b2a8ff;--ink:#0d1021;--green:#84e0b5;--danger:#ffa99f}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;background:radial-gradient(ellipse 75% 55% at 7% -12%,#243568 0%,transparent 65%),radial-gradient(ellipse 48% 38% at 100% 16%,#12394b 0%,transparent 70%),var(--bg);line-height:1.56}
a{color:inherit}button,input,select{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #74e8ff;outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.45}::selection{background:#695aa9;color:#fff}.wrap{max-width:1050px;margin:0 auto;padding:0 26px}
header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:25px;padding-bottom:25px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-size:.78rem;letter-spacing:.13em;font-weight:800;text-transform:uppercase}.brandmark{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(135deg,#9d91ff,#6ed5e7);color:#0b1426;font-weight:900;font-size:19px}.topnav{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.topnav a{text-decoration:none;padding:8px 12px;border-radius:9px;color:var(--muted);font-size:.87rem}.topnav a:hover,.topnav a[aria-current=page]{color:white;background:#21334c}
.hero{padding:60px 0 30px}.eyebrow{font-size:.77rem;letter-spacing:.19em;text-transform:uppercase;font-weight:800;color:#9ddcef;margin-bottom:15px}.hero h1{font-size:clamp(2.2rem,6vw,4.25rem);line-height:1.12;letter-spacing:-.055em;margin:0 0 20px;max-width:900px}.lead{font-size:clamp(1rem,2.5vw,1.17rem);max-width:790px;color:#c1cede;margin:0 0 22px}.gradient{background:linear-gradient(110deg,#bfbdff 0%,#95f0e3 85%);color:transparent;background-clip:text}.chips{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0}.chip{font-size:.76rem;font-weight:700;color:#cbd6ec;background:rgba(168,177,230,.11);border:1px solid var(--line);border-radius:999px;padding:7px 12px}.chip.good{color:#a6f4cb;border-color:#337e62;background:#12382f}.chip.warn{color:#ffe6a8;border-color:#76603c;background:#372c1d}.chip.red{color:#ffc5b7;border-color:#89514e;background:#3d2425}
.panel{border:1px solid var(--line);background:linear-gradient(150deg,#142137,#0d1827);border-radius:22px;padding:26px;box-shadow:0 20px 65px rgba(0,0,0,.15)}.panel+.panel{margin-top:16px}.panel h2,.panel h3{margin-top:0}.intro{display:block}.smalltitle{font-weight:800;color:#d9e4f8;font-size:1rem}.hint,.muted{color:var(--muted)}.hint{font-size:.88rem}.fine{font-size:.79rem;color:var(--muted)}.notice{border-left:3px solid #d7b57c;padding:11px 15px;background:#3e3123;color:#f7dfb3;border-radius:0 12px 12px 0;font-size:.91rem;margin:20px 0}.notice.good{border-color:#5ddcaa;background:#183e36;color:#c8ffe6}.fields{display:flex;gap:16px;align-items:end;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:7px;flex:1;min-width:220px}.field label{font-size:.82rem;font-weight:700;color:#d0e1f4}.field select,.field input{border:1px solid var(--line);background:#1b2b40;color:white;border-radius:12px;padding:12px 13px;width:100%}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:23px}.btn{background:linear-gradient(110deg,#b3a9ff,#8fe7d8);border:0;border-radius:12px;padding:12px 19px;min-height:46px;font-weight:850;color:#0c1727;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .15s}.btn:hover{transform:translateY(-1px)}.btn.secondary{background:#203249;color:#e4ecff;border:1px solid var(--line)}.btn.ghost{background:transparent;color:#cbd6ea;border:1px solid var(--line)}.btn.small{min-height:36px;padding:8px 12px;font-size:.8rem}.hidden{display:none!important}
.quiztop{display:flex;justify-content:space-between;align-items:center;gap:10px}.progress{height:8px;border-radius:9px;background:#24354c;overflow:hidden;margin:13px 0 28px}.fill{height:100%;width:0;background:linear-gradient(90deg,#9b99ff,#75dfd6);transition:width .25s}.qtext{font-size:clamp(1.26rem,3.3vw,1.8rem);line-height:1.39;letter-spacing:-.018em;margin:10px 0 27px}.qcontext{color:#c5d6e7;font-size:.92rem;margin:0 0 13px}.rating{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.choice{flex:1 1 70px;max-width:125px;min-height:68px;border:1px solid #3f5370;background:#17263c;color:#f3f6ff;border-radius:14px;padding:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;gap:4px}.choice:hover{border-color:#a9afea;background:#243a55}.choice.selected{border-color:#b9aeff;background:#403c67;box-shadow:inset 0 0 0 1px #b9aeff}.choice strong{font-size:1.2rem}.choice small{font-size:.72rem;color:#d4d9e7}.scaleend{display:flex;justify-content:space-between;gap:20px;margin:10px 0 0;font-size:.77rem;color:#aebdd2}.scaleend span{max-width:44%}.scaleend span:last-child{text-align:right}
.results h2{font-size:clamp(1.55rem,4vw,2.4rem);letter-spacing:-.034em;margin-bottom:7px}.bigscore{font-weight:900;font-size:clamp(2rem,6vw,3.8rem);letter-spacing:-.05em;line-height:1.17;color:#bbdef2;margin:9px 0}.metric{margin:24px 0}.metrichead{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:8px}.metrichead b{font-size:.98rem}.metrichead span{color:#bfd5f8;font-weight:850;white-space:nowrap}.track{height:13px;background:#21354c;border-radius:12px;overflow:hidden}.bar{height:100%;background:linear-gradient(90deg,#a397ff,#75dbd0);border-radius:12px}.metricdesc{font-size:.89rem;color:#b8c8db;margin:9px 0 0}.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}.pointlist{padding-left:18px}.pointlist li{padding:5px 0}.resumbox{border-radius:15px;padding:16px 20px;border:1px solid #39536a;background:#172b3d;margin:19px 0}.references{border-top:1px solid var(--line);margin-top:24px;padding-top:20px;font-size:.84rem;color:#b7cbe0}.references a{word-break:break-word;color:#9eeadf}.references li{margin:8px 0}
.iosgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.iosbutton{background:#17263d;border:1px solid #415674;color:#eaf4ff;border-radius:13px;padding:8px 8px 12px;cursor:pointer;min-height:119px}.iosbutton:hover,.iosbutton.selected{border-color:#b2acfb;background:#2b3c58}.iosbutton.selected{box-shadow:inset 0 0 0 1px #b2acfb}.iosbutton svg{width:100%;height:75px;display:block;overflow:visible}.iosbutton strong{display:block;text-align:center;font-size:.94rem}.iosbutton circle{stroke-width:2.8;fill-opacity:.43}.iosbutton .me{fill:#a09eff;stroke:#c4c7ff}.iosbutton .them{fill:#62d7c4;stroke:#8cf7e9}
footer{border-top:1px solid var(--line);margin-top:60px;padding:22px 0 45px;color:#94abc4;font-size:.79rem;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}footer a{color:#c9d8ea}.cardgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0}.testcard{display:flex;flex-direction:column;gap:11px;text-decoration:none;background:linear-gradient(150deg,#16243b,#101b2b);border:1px solid var(--line);border-radius:19px;padding:22px;transition:transform .2s,border-color .2s;min-height:244px}.testcard:hover{transform:translateY(-3px);border-color:#918cf0}.testcard h3{margin:0;font-size:1.2rem}.testcard p{margin:0;color:#bdcce0;font-size:.9rem;flex:1}.testcard .tiny{font-size:.75rem;color:#bbd8ec}.iconcircle{font-size:1.55rem;display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#2a3854}.sectiontitle{font-size:1.35rem;margin:45px 0 4px}.scientific-table{width:100%;border-collapse:collapse;font-size:.88rem;margin:16px 0}.scientific-table th,.scientific-table td{border-bottom:1px solid var(--line);padding:12px 10px;text-align:left;vertical-align:top}.scientific-table th{font-size:.77rem;text-transform:uppercase;color:#a9cee6}
@media(max-width:820px){.cardgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.iosgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.wrap{padding:0 17px}.hero{padding-top:33px}.panel{padding:18px;border-radius:17px}.topnav{gap:3px}.topnav a{padding:7px 9px;font-size:.78rem}.brand{font-size:.64rem}.metrics{grid-template-columns:1fr}.cardgrid{grid-template-columns:1fr}.iosgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.choice{min-height:61px;flex-basis:59px}.rating{gap:6px}header{align-items:start;gap:12px}.hero h1{font-size:2.5rem}}
@media print{body{background:white!important;color:#111}header,.actions,.notice,.intro,.quizscreen,footer,.backlink{display:none!important}.wrap{max-width:none}.panel{border:0;box-shadow:none;background:white;color:#111}.muted,.metricdesc,.fine{color:#333}.bar{background:#555!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.track{background:#eee}.results{display:block!important}.references{color:#111}.references a{color:#222}}

/* Guide des interprétations (sans dépendance externe) */
.guide-teaser{margin:26px 0 8px;padding:23px;border:1px solid #647a9c66;background:linear-gradient(135deg,#202b47,#141e31);border-radius:19px}
.guide-teaser h2{font-size:clamp(1.3rem,2.6vw,1.65rem);margin:0 0 9px;letter-spacing:-.03em;color:#eff2ff}
.guide-teaser>p{color:#bfcde1;font-size:.93rem;max-width:760px;margin:0 0 15px}
.guide-teaser a,.guide-panel a{color:#b9c8ff;text-decoration:underline;text-underline-offset:3px}
.guide-details{margin-top:15px;border:1px solid #516681;border-radius:13px;background:#0f1c2e}
.guide-details>summary{font-weight:800;cursor:pointer;padding:15px 17px;color:#e7f3ff;list-style-position:inside}
.guide-details[open]>summary{border-bottom:1px solid #3c526d}
.guide-detail-inner{padding:18px}
.guide-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:16px 0 22px}
.guide-card{min-width:0;padding:17px;background:#16273c;border:1px solid #385272;border-radius:14px}
.guide-card.guide-current{border-color:#b2a8ff;box-shadow:inset 0 0 0 1px #b2a8ff}
.guide-card h3{font-size:1rem;margin:0 0 10px;color:#f0f2ff;line-height:1.35}
.guide-card p{margin:0 0 9px;font-size:.88rem;color:#c6d4e7;line-height:1.55}
.guide-card small{display:block;color:#94afc9;font-size:.76rem;margin-top:8px}
.guide-card .guide-low,.guide-card .guide-example{color:#adbed3}
.guide-subheading{font-size:1.17rem;margin:26px 0 8px;color:#def1f5}
.guide-note{background:#312c32aa;border-left:3px solid #e0b577;border-radius:0 8px 8px 0;color:#dfced1;padding:12px 15px;font-size:.85rem;margin:20px 0}
.guide-panel{margin:22px 0 30px;padding:25px;border:1px solid #354e67;border-radius:20px;background:linear-gradient(145deg,#15263c,#0e1b2c)}
.guide-panel h2{font-size:clamp(1.7rem,3vw,2.15rem);margin:0 0 8px;letter-spacing:-.04em}
.guide-panel>p{color:#c6d2e5;max-width:850px}
.guide-toc{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.guide-toc a{display:inline-flex;padding:9px 12px;border:1px solid #49607a;border-radius:11px;background:#1b2a42;text-decoration:none;color:#e4ecfa;font-size:.9rem;font-weight:650}
.guide-toc a:hover{background:#2b3f60}
.guide-link-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:21px 0 0}
.guide-link-bar a{display:inline-flex;border:1px solid #50698c;border-radius:11px;padding:10px 14px;background:#1a2c47;color:#f0f6ff;text-decoration:none;font-weight:700;font-size:.86rem}
.guide-link-bar a:hover{background:#304766}
@media(max-width:700px){.guide-cards{grid-template-columns:1fr}.guide-detail-inner{padding:12px}.guide-teaser{padding:17px}.guide-panel{padding:18px}}
@media print{.guide-teaser,.guide-panel{break-inside:avoid}.guide-details:not([open])>summary{display:none}.guide-details{border:0!important}.guide-card{background:#fff;color:#111;border-color:#bbb}.guide-card p,.guide-card h3,.guide-note{color:#111!important}.guide-teaser{background:#fff;color:#111}.guide-card{break-inside:avoid}}
.band{border-radius:15px;padding:16px 20px;margin:19px 0;border:1px solid}
.band.green{background:#12382f;border-color:#337e62;color:#c8ffe6}
.band.orange{background:#372c1d;border-color:#76603c;color:#ffe6a8}
.band.red{background:#3d2425;border-color:#89514e;color:#ffd3c8}
.band strong{display:block;font-size:1.1rem;margin-bottom:4px}
.alert{border:2px solid #ff8f80;background:#3d1f22;color:#ffe2dc;border-radius:15px;padding:18px 20px;margin:19px 0}
.alert a{color:#fff;font-weight:800}
.alert .num{font-size:1.6rem;font-weight:900;letter-spacing:.02em}
.helpbox{border:1px solid #39536a;background:#172b3d;border-radius:15px;padding:16px 20px;margin:19px 0;font-size:.92rem}
.helpbox ul{margin:8px 0 0;padding-left:18px}.helpbox li{margin:4px 0}
.verbatim{font-size:.8rem;color:#9fb3c9;margin-top:6px}
.choice.wide{max-width:none;flex:1 1 130px}
.clockwrap{display:flex;flex-direction:column;align-items:center;gap:12px;margin:18px 0}
#clock{width:min(340px,100%);aspect-ratio:1;background:#f4f6ff;border-radius:50%;touch-action:none;cursor:crosshair;box-shadow:0 0 0 6px #2a3d58}
.prose p,.prose li{color:#c8d5e6}.prose li{margin:6px 0}
.toollist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:16px 0}
.toollist article{padding:17px;background:#16273c;border:1px solid #385272;border-radius:14px}
.toollist h3{font-size:1rem;margin:0 0 8px}.toollist p{margin:0;font-size:.88rem;color:#c6d4e7}
@media(max-width:700px){.toollist{grid-template-columns:1fr}}

/* DISC / MBTI: answers as a lettered list, profile results */
.rating.list{flex-direction:column;flex-wrap:nowrap;gap:12px}.rating.list .choice{max-width:none;flex:none;width:100%;min-height:0;flex-direction:row;justify-content:flex-start;align-items:center;text-align:left;gap:16px;padding:17px 18px}.rating.list .choice.selected .choice-letter{background:#b6acff;color:#12162d}
.choice-letter{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:10px;background:#ffffff0e;border:1px solid #ffffff1f;font-weight:800}.choice-label{flex:1;font-weight:530;font-size:.99rem}.results-top{display:flex;gap:23px;align-items:center;justify-content:space-between;flex-wrap:wrap}.kicker{font-size:.8rem;letter-spacing:.13em;text-transform:uppercase;color:#b9b0ff;font-weight:800;margin:0 0 10px}.big-code{font-size:clamp(2.7rem,8vw,5.1rem);line-height:1;font-weight:850;letter-spacing:-.06em;margin:3px 0}.result-description{margin:14px 0 0;color:#cad4e5;font-size:1.02rem;max-width:760px}.result-symbol{height:97px;width:97px;border-radius:30px;background:linear-gradient(140deg,#28355a,#1b2547);border:1px solid #7c83be;display:grid;place-items:center;font-size:3.3rem;transform:rotate(5deg)}.divider{height:1px;background:var(--line);margin:30px 0}.bars{display:grid;gap:17px}.bar-label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.92rem;margin-bottom:7px}.bar-caption{color:#ccd4ea;font-weight:700}.bar-count{color:#c5d0e4;font-size:.82rem;font-variant-numeric:tabular-nums}.bar-track{width:100%;height:13px;overflow:hidden;background:#2c3b54;border-radius:999px}.bar-fill{height:100%;border-radius:999px}.insights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:26px}.insight{border:1px solid var(--line);background:#ffffff08;padding:18px;border-radius:15px}.insight h3{font-size:.9rem;color:#ddd6ff;margin:0 0 8px}.insight p{margin:0;color:#d4deea;font-size:.92rem}.fineprint{font-size:.86rem;color:#a4b8d0;line-height:1.6}.dim-grid{display:grid;gap:22px}.dim-top{display:flex;justify-content:space-between;gap:10px;font-size:.92rem}.dim-top strong{color:#eff2ff}.dim-top span{color:#b4c2d8}.split-bar{display:flex;width:100%;height:14px;overflow:hidden;border-radius:999px;background:#2e3a56;margin:9px 0 5px}.split-left{background:#b1a4ff}.split-right{background:#72cfe8}.dim-bottom{display:flex;justify-content:space-between;font-size:.82rem;color:#a9b9d2;gap:10px}.dim-bottom strong{color:#ecf2fc}.profile-sub{font-size:1.3rem;font-weight:700;color:#e8eaff;margin:5px 0 0}.alternative{font-size:.85rem;color:#cbd7ed;line-height:1.55;margin:12px 0 0;background:#a4baff12;border-left:3px solid #acb3ed;padding:11px 14px;border-radius:0 8px 8px 0}.results h2.section-title{font-size:1.15rem;margin:0 0 18px;letter-spacing:-.02em}
@media(max-width:680px){.insights{grid-template-columns:1fr}.result-symbol{width:69px;height:69px;font-size:2.4rem;border-radius:20px}.big-code{font-size:3.6rem}.rating.list .choice{padding:15px 13px;gap:12px}.choice-label{font-size:.92rem}}
