:root{--app-bg: oklch(.235 .006 60);--sidebar-bg: oklch(.255 .006 60);--surface: oklch(.275 .006 60);--surface-2: oklch(.265 .006 60);--surface-alt: oklch(.29 .007 60);--surface-alt-2: oklch(.3 .007 60);--surface-badge: oklch(.315 .008 60);--surface-tag: oklch(.325 .008 60);--rail: oklch(.345 .008 60);--hairline: oklch(.355 .008 60);--border: oklch(.375 .008 60);--line: oklch(.395 .008 60);--field-border: oklch(.415 .008 60);--dashed: oklch(.415 .01 60);--dashed-soft: oklch(.435 .01 60);--dashed-softer: oklch(.45 .01 60);--ghost-border: oklch(.485 .01 60);--ghost-border-hover: oklch(.63 .02 60);--nav-hover: oklch(.52 .01 60);--txt: oklch(.94 .004 80);--txt-92: oklch(.915 .004 80);--txt-86: oklch(.87 .006 80);--txt-84: oklch(.85 .006 80);--txt-80: oklch(.815 .006 80);--txt-78: oklch(.795 .006 80);--muted: oklch(.735 .006 80);--muted-2: oklch(.715 .006 80);--muted-3: oklch(.7 .006 80);--muted-4: oklch(.685 .006 80);--muted-5: oklch(.67 .006 80);--muted-6: oklch(.655 .006 80);--muted-7: oklch(.64 .006 80);--muted-8: oklch(.63 .006 80);--acc: oklch(.74 .13 165);--acc-hover: oklch(.83 .11 165);--acc-on: oklch(.2 .02 165);--acc-warm: oklch(.74 .13 30);--ok-bg: oklch(.325 .05 165);--ok-bd: oklch(.55 .08 165);--ok-bg-soft: oklch(.305 .05 165);--ok-bd-soft: oklch(.55 .09 165);--bad-bg: oklch(.325 .05 30);--bad-bd: oklch(.55 .08 30);--male-bg: oklch(.325 .05 250);--male-bd: oklch(.55 .09 250);--male-fg: oklch(.83 .11 250);--female-bg: oklch(.325 .05 340);--female-bd: oklch(.55 .09 340);--female-fg: oklch(.83 .11 340);--sym-bg: oklch(.305 .02 30);--sym-bd: oklch(.465 .06 30);--sym-fg: oklch(.905 .02 30);--pick-bg: oklch(.345 .05 30);--layer-on-bg: oklch(.345 .03 30);--layer-on-bd: oklch(.55 .07 30);--pill-on-bg: oklch(.325 .03 165);--regpill-on-bg: oklch(.335 .02 60);--serif: "Newsreader", Georgia, serif;--sans: "Nunito Sans", system-ui, sans-serif;--mono: "DM Mono", ui-monospace, monospace;--stage-bg: radial-gradient( circle at 50% 40%, oklch(.285 .012 165) 0%, oklch(.245 .006 60) 72% )}html,body{margin:0;padding:0;background:var(--app-bg);font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"tnum" 1,"lnum" 1}*{box-sizing:border-box}#root{height:100%}a{color:var(--acc);text-decoration:none}a:hover{color:var(--acc-hover)}::selection{background:#47c4964d}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.label{font-family:var(--sans);font-weight:600;letter-spacing:.01em;color:var(--muted-2)}.label.code{font-family:var(--mono);font-weight:400;letter-spacing:.03em}.label-9{font-size:10.5px}.label-10{font-size:11.5px}.label-11{font-size:12.5px}.nowrap{white-space:nowrap}.pretty{text-wrap:pretty}.dot{border-radius:50%;flex:none}.col{display:flex;flex-direction:column}.row{display:flex;align-items:center}.wrap{flex-wrap:wrap}.fade-up{animation:fadeUp .25s ease}button{font:inherit;color:inherit}.pill{font-size:12px;cursor:pointer;padding:7px 12px;border-radius:999px;white-space:nowrap}.chip{display:flex;align-items:center;gap:6px;font-size:12px;cursor:pointer;padding:6px 11px;border-radius:999px;white-space:nowrap}.tab{font-size:12px;cursor:pointer;padding:7px 12px;border-radius:8px;white-space:nowrap}.mode-pill{font-size:13px;cursor:pointer;padding:9px 15px;border-radius:9px;white-space:nowrap}.filter-pill{font-size:12px;cursor:pointer;padding:6px 12px;border-radius:999px;white-space:nowrap}.btn-solid{font-size:14px;font-weight:500;cursor:pointer;padding:12px 20px;border-radius:10px;border:1px solid var(--acc);background:var(--acc);color:var(--acc-on)}.btn-solid:hover{background:var(--acc-hover)}.btn-ghost{font-size:14px;cursor:pointer;padding:12px 20px;border-radius:10px;border:1px solid var(--ghost-border);background:transparent;color:var(--txt)}.btn-ghost:hover{border-color:var(--ghost-border-hover)}.badge{font-size:10.5px;font-weight:500;letter-spacing:.01em;padding:4px 8px;border-radius:999px;border:1px solid var(--line);color:var(--txt-78)}.card-dashed{border-radius:11px;border:1px dashed var(--dashed)}.bar-rail{border-radius:999px;background:var(--rail);overflow:hidden}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden;font-family:var(--sans);color:var(--txt);background:var(--app-bg)}.topbar{flex:none;display:flex;align-items:center;gap:18px;height:56px;padding:0 22px;border-bottom:1px solid var(--border);background:var(--sidebar-bg)}.topbar-mark{flex:none;font-family:var(--serif);font-size:21px;line-height:1;cursor:pointer;padding:4px 0;border:none;background:none;color:var(--txt)}.topbar-nav{display:flex;align-items:center;gap:2px;min-width:0;overflow-x:auto;scrollbar-width:none}.topbar-nav::-webkit-scrollbar{display:none}.topnav-btn{position:relative;flex:none;font-size:13.5px;cursor:pointer;padding:8px 11px;border:none;border-radius:8px;background:none;color:var(--muted-2);white-space:nowrap}.topnav-btn:hover{color:var(--txt-86);background:var(--surface-2)}.topnav-btn.on{color:var(--txt)}.topnav-btn.on:after{content:"";position:absolute;left:11px;right:11px;bottom:1px;height:2px;border-radius:2px;background:var(--acc)}.topbar-right{margin-left:auto;flex:none;display:flex;align-items:center;gap:12px}.sexe-seg{display:flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.sexe-seg-btn{font-size:12.5px;cursor:pointer;padding:6px 11px;border:none;background:transparent;color:var(--muted-2)}.sexe-seg-btn:hover{color:var(--txt-86)}.sexe-seg-btn.on{background:var(--male-bg);color:var(--txt)}.sexe-seg-btn:last-child.on{background:var(--female-bg)}.topbar-pts{font-size:12px;cursor:pointer;padding:0;border:none;background:none;color:var(--muted-2);white-space:nowrap}.topbar-pts-n{font-family:var(--serif);font-size:19px;color:var(--acc)}.topbar-who,.topbar-signin{max-width:180px;font-size:12.5px;cursor:pointer;padding:7px 12px;border-radius:8px;border:1px solid var(--ghost-border);background:transparent;color:var(--txt-86);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-who{border-color:var(--hairline);color:var(--muted)}.topbar-who:hover,.topbar-signin:hover{border-color:var(--ghost-border-hover);color:var(--txt)}.link-btn{font-size:11px;cursor:pointer;text-align:left;padding:0;border:none;background:none;color:var(--muted-6)}.link-btn:hover{color:var(--txt-80)}.main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.view-hint{flex:none;margin:0;padding:11px 24px;font-size:12.5px;line-height:1.5;color:var(--muted-3);border-bottom:1px solid var(--hairline)}.app-foot{flex:none;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:7px 24px;border-top:1px solid var(--hairline);font-size:11px;color:var(--muted-7)}.app-foot-right{display:flex;align-items:center;gap:14px}.app-foot-warn{color:#e6a599}.compte-actions{padding:15px 17px;border-radius:12px;background:var(--surface-2);border:1px solid var(--hairline);display:flex;flex-direction:column;gap:11px}.stage{border-radius:14px;background:var(--stage-bg);border:1px solid var(--hairline);overflow:hidden;position:relative}.stage-fill{flex:1;min-height:0}.stage-context{height:250px;flex:none}.chip-row{display:flex;flex-wrap:wrap;gap:5px}.layer-row{display:flex;gap:6px}.header-text{min-width:0}.version-stamp{font-family:var(--mono);font-size:11px;color:var(--muted-6);flex:none}.menu-btn,.scrim{display:none}.stage-caption{position:absolute;font-weight:500;color:var(--muted-5);pointer-events:none;padding:3px 7px;border-radius:6px;background:#110f0da8}.stage-status{position:absolute;inset:0;display:grid;place-items:center;padding:24px;text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-8);pointer-events:none;line-height:2}.stage-tip{position:absolute;pointer-events:none;opacity:0;font-family:var(--mono);font-size:11px;letter-spacing:.09em;text-transform:uppercase;padding:5px 9px;border-radius:6px;background:#12110fed;border:1px solid rgba(255,255,255,.28);color:#f0ece5;white-space:nowrap;transform:translate(-50%,-160%);transition:opacity .1s;z-index:3}.map{flex:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:0}.map-left{border-right:1px solid var(--border);padding:18px 22px 22px;display:flex;flex-direction:column;gap:12px;min-height:0;min-width:0;overflow:hidden}.map-right{padding:22px 30px 30px;overflow:auto;min-width:0;min-height:0}.region-title{margin:0;font-family:var(--serif);font-weight:400;font-size:30px;line-height:1}.region-note{margin:0;font-size:14px;line-height:1.6;color:var(--muted);max-width:62ch}.symptom{font-size:13px;padding:7px 12px;border-radius:999px;white-space:nowrap;background:var(--sym-bg);border:1px solid var(--sym-bd);color:var(--sym-fg)}.path-card{text-align:left;cursor:pointer;padding:13px 15px;border-radius:11px;display:flex;flex-direction:column;gap:6px;color:var(--txt)}.path-card:hover{border-color:#397059}.puzzle{flex:1;min-height:0;overflow:auto;padding:22px 34px 0;display:flex;flex-direction:column;gap:18px}.signs-grid{display:grid;grid-template-columns:minmax(0,322px) minmax(0,1fr);gap:24px;align-items:start}.path-panel{padding:20px;border-radius:14px;background:var(--surface);display:flex;flex-direction:column;gap:11px}.path-panel h2{margin:0;font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.1}.brief{padding:16px 18px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.action-bar{position:sticky;bottom:0;z-index:6;margin-top:4px;padding:12px 0;background:var(--app-bg);border-top:1px solid var(--border);display:flex;align-items:center;gap:9px;flex-wrap:wrap}.action-spacer{flex:1}.check-btn{font-size:14px;font-weight:500;padding:12px 18px;border-radius:10px}.result{padding:17px 19px;border-radius:12px;display:flex;flex-direction:column;gap:11px}.result-title{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.btn-sm-ghost{font-size:13px;cursor:pointer;padding:10px 15px;border-radius:9px;border:1px solid oklch(.45 .02 60);background:transparent;color:var(--txt-92)}.btn-sm-solid{font-size:13px;font-weight:500;cursor:pointer;padding:10px 15px;border-radius:9px;border:1px solid var(--acc);background:var(--acc);color:var(--acc-on)}.struct-badge{font-size:11px;font-weight:500;padding:4px 8px;border-radius:6px;background:var(--surface-badge)}.bank{display:grid;grid-template-columns:repeat(auto-fill,minmax(238px,1fr));gap:9px;align-items:start}.piece{text-align:left;font-size:13px;line-height:1.45;padding:12px 14px;border-radius:10px;color:var(--txt);display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.piece-src{font-size:10px;font-weight:500;letter-spacing:.01em}.piece-mark{font-size:10.5px;font-weight:500;flex:none}.case-grid{padding-bottom:40px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:28px;align-items:start}.observation{padding:22px 24px;border-radius:13px;background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;gap:14px}.vignette{margin:0;font-size:16px;line-height:1.65}.case-sign{font-weight:500;font-size:11px;padding:5px 9px;border-radius:6px;background:var(--surface-tag);color:var(--txt-84)}.hypothesis{text-align:left;font-size:14px;cursor:pointer;padding:14px 16px;border-radius:11px;color:var(--txt);display:flex;flex-direction:column;gap:6px}.loc-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:26px;align-items:start}.loc-card{padding:20px 22px;border-radius:13px;background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;gap:12px}.loc-sign{font-family:var(--serif);font-size:27px;line-height:1.15}.loc-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:11px}.loc-option{text-align:left;padding:16px;border-radius:12px;color:var(--txt);display:flex;flex-direction:column;gap:8px;min-height:104px}.library{flex:1;min-height:0;overflow:auto;padding:24px 34px 40px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,296px);gap:26px;align-items:start}.propositions{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:13px;align-items:start}.prop-card{padding:16px 17px;border-radius:12px;background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;gap:11px;min-width:0}.prop-tableau{padding:11px 12px;border-radius:9px;background:var(--surface-2);border:1px solid var(--hairline);display:flex;flex-direction:column;gap:8px}.prop-signes{display:flex;flex-wrap:wrap;gap:5px}.prop-signe{font-size:11.5px;line-height:1.35;padding:5px 9px;border-radius:7px;background:var(--surface-tag);border:1px solid transparent;color:var(--muted-2)}.prop-signe.ajout{background:var(--ok-bg);border-color:var(--ok-bd);color:var(--txt)}.prop-signe.leurre{background:var(--sym-bg);border-color:var(--sym-bd);color:var(--sym-fg)}.prop-leurre{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.prop-motif{margin:0;font-size:12.5px;line-height:1.55;font-style:italic;color:var(--muted-2)}.prop-refus{padding:10px 12px;border-radius:9px;background:var(--bad-bg);border:1px solid var(--bad-bd);font-size:12.5px;line-height:1.55;display:flex;flex-direction:column;gap:5px}.prop-refus-form{display:flex;flex-direction:column;gap:9px;padding-top:3px}.prop-pied{margin-top:auto;padding-top:9px;border-top:1px solid var(--rail);flex-wrap:wrap}.prop-auteur{font-size:12px;color:var(--muted-3)}.side-card{padding:17px;border-radius:12px;background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;gap:11px}.amphi-card{padding:17px;border-radius:12px;background:var(--ok-bg-soft);border:1px solid var(--ok-bd-soft);display:flex;flex-direction:column;gap:9px}.amphi-code{font-family:var(--serif);font-size:26px;letter-spacing:.03em}.create{flex:1;min-height:0;overflow:auto;padding:24px 34px 40px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:30px;align-items:start}.field{font:inherit;font-size:14px;padding:13px 15px;border-radius:10px;border:1px solid var(--field-border);background:var(--surface);color:var(--txt)}.field::placeholder{color:var(--muted-7)}.draft-card{padding:20px;border-radius:14px;background:var(--surface-2);border:1px solid var(--border);display:flex;flex-direction:column;gap:13px}.draft-pair{padding:12px 14px;border-radius:10px;background:var(--surface-alt-2);border:1px solid var(--line);display:flex;flex-direction:column;gap:5px}.note-dashed{padding:16px 18px;border-radius:12px;border:1px dashed var(--dashed-softer);font-size:12px;line-height:1.6;color:var(--muted-2)}.flow{flex:1;min-height:0;overflow:auto;padding:24px 34px 44px;display:flex;flex-direction:column;gap:26px}.flow-bilan{display:flex;flex-direction:column;gap:10px;max-width:720px}.flow-jauge{display:flex;gap:3px;height:7px}.jauge-seg{border-radius:999px}.s-livre{background:var(--acc)}.s-demo{background:var(--acc-warm)}.s-aspec{background:var(--dashed-softer)}.flow-legende{display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-size:11.5px;font-weight:500;color:var(--muted-3)}.flow-leg{display:inline-flex;align-items:center;gap:7px}.flow-leg-total{color:var(--muted-7)}.flow-mark{flex:none;width:9px;height:9px;border-radius:50%;box-sizing:border-box}.m-livre{background:var(--acc);box-shadow:0 0 0 3px #47c49626}.m-demo{background:var(--acc-warm)}.m-aspec{background:transparent;border:1px dashed var(--dashed-softer)}.flow-grid{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;align-items:start}.flow-grid:before{content:"";position:absolute;left:13px;right:13px;top:13px;height:1px;background:var(--rail)}.flow-col{min-width:0}.flow-station{position:relative;display:flex;align-items:center;gap:9px;margin-bottom:6px}.flow-num{flex:none;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;font-family:var(--mono);font-size:10px;background:var(--app-bg);border:1px solid var(--acc);color:var(--acc)}.flow-name{font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--txt-86);min-width:0;overflow:hidden;text-overflow:ellipsis}.flow-ratio{margin-left:auto;font-family:var(--mono);font-size:10px;color:var(--muted-5)}.flow-steps{list-style:none;margin:0;padding:0 0 0 13px}.flow-step{position:relative;display:grid;grid-template-columns:9px minmax(0,1fr);align-items:start;gap:12px;padding:9px 0 12px}.flow-step .flow-mark{margin-top:4px}.flow-step:not(:last-child):before{content:"";position:absolute;left:4px;top:19px;bottom:-1px;width:1px;background:var(--rail)}.flow-step-txt{min-width:0}.flow-step-t{font-size:13px;font-weight:500;color:var(--txt-92)}.flow-step-d{margin-top:3px;font-size:12px;line-height:1.5;color:var(--muted-3)}.e-aspec .flow-step-t{color:var(--muted-2)}.e-aspec .flow-step-d{color:var(--muted-6)}.flow-footer{padding-top:16px;border-top:1px solid var(--hairline);font-size:13px;line-height:1.65;color:var(--muted-3);max-width:96ch}.flow-footer strong{font-weight:500;color:var(--txt-86);font-family:var(--mono);font-size:12px}.profil{flex:1;min-height:0;overflow:auto;padding:22px 34px 40px;display:flex;flex-direction:column;gap:20px}.profil-head{display:flex;gap:24px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;padding:20px 22px;border-radius:14px;background:var(--surface);border:1px solid var(--border)}.profil-nom{margin:0;font-family:var(--serif);font-weight:400;font-size:27px;line-height:1.1}.profil-note{font-size:12.5px;line-height:1.6;color:var(--muted-2);max-width:62ch}.profil-field{max-width:260px}.profil-promo{align-items:flex-end;text-align:right}.profil-promo-val{font-family:var(--mono);font-size:14px;color:var(--txt-86)}.figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.figure{padding:15px 17px;border-radius:12px;background:var(--surface-2);border:1px solid var(--hairline);display:flex;flex-direction:column;gap:6px}.figure-n{font-family:var(--serif);font-size:30px;line-height:1;color:var(--txt)}.figure-sur{font-family:var(--mono);font-size:14px;color:var(--muted-5)}.profil-regions{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:11px;align-items:start}.region-card{padding:15px 17px;border-radius:12px;background:var(--surface);border:1px solid var(--line);display:flex;flex-direction:column;gap:9px;min-width:0}.region-card-nom{font-size:14.5px;font-weight:500;color:var(--txt-92)}.restes{display:flex;flex-wrap:wrap;gap:5px}.reste-chip{font-size:12px;line-height:1.35;text-align:left;cursor:pointer;padding:6px 10px;border-radius:8px;border:1px dashed var(--dashed-soft);background:transparent;color:var(--muted)}.reste-chip:hover{border-style:solid;border-color:var(--acc);color:var(--txt-86)}.patho-groupe{padding:12px 0 12px 13px;border-left:2px solid var(--rail);display:flex;flex-direction:column;gap:8px}.patho-tete{display:flex;align-items:baseline;justify-content:space-between;gap:14px}.patho-nom{font-size:15px;font-weight:500;color:var(--txt-92)}.patho-syndromes{display:flex;flex-direction:column;gap:6px;padding-top:2px}.syndrome-card{display:flex;align-items:baseline;justify-content:space-between;gap:12px;text-align:left;cursor:pointer;padding:10px 13px;border-radius:9px;font-size:13.5px;color:var(--txt-86)}.syndrome-card:hover{border-color:var(--acc)!important;color:var(--txt)}.syndrome-n{flex:none;font-family:var(--mono);font-size:10px;color:var(--muted-5)}.syndrome-titre{font-size:13px;font-weight:600;letter-spacing:.01em;color:var(--acc)}.path-card-tete{display:flex;align-items:baseline;justify-content:space-between;gap:14px}.accueil{flex:1;min-height:0;overflow:auto;padding:30px 34px 44px;display:flex;flex-direction:column;gap:30px}.accueil-haut{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,280px);gap:34px;align-items:start}.accueil-titre{margin:0;font-family:var(--serif);font-weight:400;font-size:40px;line-height:1.08;max-width:18ch}.accueil-titre em{font-style:italic;color:var(--acc)}.accueil-chapo{margin:0;font-size:15px;line-height:1.65;color:var(--muted-2);max-width:60ch}.accueil-cta{align-self:flex-start;max-width:100%;text-align:left;cursor:pointer;margin-top:6px;padding:17px 22px;border-radius:13px;background:var(--acc);border:1px solid var(--acc);color:var(--acc-on);display:flex;flex-direction:column;gap:3px}.accueil-cta:hover{background:var(--acc-hover);border-color:var(--acc-hover)}.accueil-cta-quoi{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.72}.accueil-cta-nom{font-family:var(--serif);font-size:23px;line-height:1.15}.accueil-cta-ou{font-size:12.5px;opacity:.78}.accueil-etat{display:flex;flex-direction:column;gap:7px;padding-left:20px;border-left:1px solid var(--rail)}.accueil-chiffre{font-family:var(--serif);font-size:38px;line-height:1;color:var(--txt)}.accueil-sur{font-family:var(--mono);font-size:15px;color:var(--muted-5)}.accueil-region{display:flex;flex-direction:column;gap:4px;text-align:left;cursor:pointer;padding:5px 0;border:none;background:none}.accueil-region:hover .accueil-region-tete{color:var(--txt)}.accueil-region-tete{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted-2)}.accueil-region-n{font-family:var(--mono);font-size:10px;color:var(--muted-5)}.accueil-jeux{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.accueil-jeu{text-align:left;cursor:pointer;padding:17px 18px;border-radius:12px;background:var(--surface);border:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.accueil-jeu:hover{border-color:var(--acc)}.accueil-jeu-nom{font-size:15.5px;font-weight:500;color:var(--txt-92)}.accueil-jeu-quoi{font-size:13px;line-height:1.6;color:var(--muted-2)}.accueil-jeu-quoi strong{font-weight:500;color:var(--txt-86)}.accueil-jeu-pour{margin-top:auto;font-size:11px;font-style:italic;color:var(--muted-5)}.accueil-pied{display:flex;flex-wrap:wrap;gap:22px;padding-top:18px;border-top:1px solid var(--hairline)}.accueil-lien{font-size:13px;cursor:pointer;padding:0;border:none;background:none;color:var(--muted-2)}.accueil-lien:hover{color:var(--acc)}.niveau-bar{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.niveau-seg{display:flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;flex:none}.niveau-btn{font-size:12.5px;cursor:pointer;padding:7px 14px;border:none;background:transparent;color:var(--muted-2)}.niveau-btn:hover{color:var(--txt-86)}.niveau-btn.on{background:var(--pill-on-bg);color:var(--txt)}.region-card-lien{cursor:pointer;padding:0;border:none;background:none;text-align:left}.region-card-lien:hover .region-card-nom{color:var(--acc)}.serie-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.serie-jauge{display:flex;gap:3px;flex:1;min-width:120px}.serie-pas{flex:1;height:4px;border-radius:999px;background:var(--rail)}.serie-pas.courant{background:var(--txt-78)}.serie-pas.juste{background:var(--acc)}.serie-pas.rate{background:var(--acc-warm)}.serie-pas.courant{outline:1px solid var(--muted-4);outline-offset:2px}.bilan{max-width:720px;display:flex;flex-direction:column;gap:24px}.bilan-titre{margin:0;font-family:var(--serif);font-weight:400;font-size:32px;line-height:1.1}.bilan-sur{color:var(--muted-5);font-size:22px}.bilan-rates{display:flex;flex-wrap:wrap;gap:6px}.library .create{flex:none;min-height:0;overflow:visible;padding:0;gap:24px}.app-foot-lien{font:inherit;cursor:pointer;padding:0;border:none;background:none;color:var(--muted-7);text-decoration:underline;text-underline-offset:3px}.app-foot-lien:hover{color:var(--muted-2)}.account-card{padding:13px 14px;border-radius:10px;background:var(--surface-alt);border:1px solid var(--border);display:flex;flex-direction:column;gap:9px}.account-note{font-size:11px;line-height:1.5;color:var(--muted-6)}.account-btn{font-size:13px;padding:9px 14px;border-radius:9px}.account-name{font-family:var(--serif);font-size:19px;line-height:1.15}.account-nudge{font-size:11px;line-height:1.45;text-align:left;cursor:pointer;padding:7px 9px;border-radius:8px;border:1px dashed var(--dashed-soft);background:transparent;color:var(--acc)}.account-nudge:hover{border-color:var(--acc)}.account-error{font-size:11px;line-height:1.45;color:#f6c3ba}.auth-overlay{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:24px}.auth-backdrop{position:absolute;inset:0;background:#070505b8}.auth-card{position:relative;width:min(430px,100%);max-height:calc(100vh - 48px);overflow:auto;padding:22px 24px 24px;border-radius:14px;background:var(--sidebar-bg);border:1px solid var(--border);display:flex;flex-direction:column;gap:13px;animation:fadeUp .2s ease}.auth-title{margin:0;font-family:var(--serif);font-weight:400;font-size:27px;line-height:1.1}.auth-sub{margin:0;font-size:13px;line-height:1.55;color:var(--muted)}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-hint{font-size:11px;line-height:1.45;color:var(--muted-6)}.auth-msg{font-size:12px;line-height:1.5;padding:10px 12px;border-radius:9px}.auth-msg-bad{background:var(--bad-bg);border:1px solid var(--bad-bd)}.auth-msg-ok{background:var(--ok-bg);border:1px solid var(--ok-bd)}.auth-submit{width:100%;justify-content:center}.auth-submit:disabled{cursor:default;background:transparent;border-color:var(--ghost-border);color:var(--muted)}.auth-sep{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted-7)}.auth-sep:before,.auth-sep:after{content:"";flex:1;height:1px;background:var(--border)}.auth-google{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;font-size:14px}.auth-switch{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.auth-foot{margin:0;padding-top:4px;border-top:1px solid var(--hairline);font-size:11px;line-height:1.55;color:var(--muted-7)}@media(max-width:560px){.auth-overlay{padding:0;place-items:stretch}.auth-card{width:100%;max-height:none;min-height:100%;border:none;border-radius:0;padding:16px 16px calc(24px + env(safe-area-inset-bottom,0px))}.auth-title{font-size:24px}.auth-google,.auth-submit{min-height:48px}}.account-actions{display:flex;flex-wrap:wrap;gap:4px 14px;padding-top:2px}.account-danger-link{align-self:flex-start;font-size:11px;cursor:pointer;text-align:left;padding:0;border:none;background:none;color:var(--muted-7)}.account-danger-link:hover{color:#f9aea2}.account-danger{display:flex;flex-direction:column;gap:8px;padding:11px 12px;border-radius:9px;background:var(--bad-bg);border:1px solid var(--bad-bd)}.account-danger-text{font-size:11px;line-height:1.5}.account-danger-btn{font-size:12px;font-weight:500;cursor:pointer;padding:8px 12px;border-radius:8px;border:1px solid oklch(.74 .13 30);background:#f28979;color:#1a0e0c}.account-danger-btn:disabled{cursor:default;opacity:.6}@supports (height: 100dvh){.app{height:100dvh}}@media(max-width:1080px){.header{padding:18px 22px 14px;gap:16px}.header h1{font-size:28px}.header p{font-size:13px}.puzzle,.library,.create,.flow{padding-left:22px;padding-right:22px}.signs-grid,.case-grid,.loc-grid,.library,.create{grid-template-columns:minmax(0,1fr)}.signs-grid{gap:16px}.case-grid{gap:20px}.loc-grid{gap:18px}.library{gap:20px}.create{gap:22px}.flow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.map{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}.map-left{padding:14px 16px 16px}.map-right{padding:18px 20px 26px}}@media(max-width:860px){.topbar{height:auto;flex-wrap:wrap;gap:10px;row-gap:4px;padding:8px 12px}.topbar-mark{font-size:18px}.topbar-nav{order:3;flex-basis:100%;margin:0 -12px;padding:0 12px}.topbar-right{gap:8px}.sexe-seg-btn{padding:7px 9px;font-size:12px}.topbar-who,.topbar-signin{max-width:108px;padding:7px 10px}.view-hint{display:none}.app-foot{padding:6px 14px;font-size:9px;gap:8px}.app-foot-ver{display:none}.map{display:block;overflow:auto;-webkit-overflow-scrolling:touch}.map-left{position:sticky;top:0;z-index:6;overflow:visible;border-right:none;border-bottom:1px solid var(--border);background:var(--app-bg);padding:10px 14px;gap:9px}.map-left>div:first-child{gap:8px}.map-left>div:first-child>.label{display:none}.stage-fill{flex:none;height:28vh;min-height:190px}.map-right{padding:16px 16px 40px;overflow:visible}.region-title{font-size:25px}.signs-grid{display:flex;flex-direction:column;align-items:stretch;gap:13px}.signs-grid>.col{display:contents}.signs-grid .stage-context{position:sticky;top:0;z-index:6;height:30vh;min-height:170px}.signs-grid>.card-dashed{order:1}.bank{grid-template-columns:minmax(0,1fr)}.action-bar{margin-top:0;position:fixed;left:0;right:0;bottom:0;z-index:12;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:var(--app-bg);border-top:1px solid var(--border)}.check-btn{width:100%;min-height:50px}.action-bar .btn-sm-ghost,.action-bar .btn-sm-solid{flex:1;min-height:46px}.action-bar>.label{flex-basis:100%}.action-spacer{display:none}.puzzle{padding:0 16px 84px}.puzzle>div:first-child{padding-top:12px}.serie-bar{gap:10px}.serie-jauge{flex-basis:100%;order:3}.bilan-titre{font-size:25px}.loc-options{grid-template-columns:minmax(0,1fr)}.vignette{font-size:15px}.accueil{padding:20px 16px 40px;gap:22px}.accueil-haut{grid-template-columns:minmax(0,1fr);gap:22px}.accueil-titre{font-size:29px}.accueil-chapo{font-size:14px}.accueil-etat{padding-left:0;padding-top:16px;border-left:none;border-top:1px solid var(--rail)}.accueil-cta{align-self:stretch}.accueil-pied{gap:14px;flex-direction:column}.niveau-bar{gap:9px}.niveau-btn{padding:8px 12px}.library .create{grid-template-columns:minmax(0,1fr);gap:20px}.profil{padding:16px 16px 40px;gap:16px}.profil-regions{grid-template-columns:minmax(0,1fr)}.figures{grid-template-columns:repeat(2,minmax(0,1fr))}.profil-promo{align-items:flex-start;text-align:left}.profil-field{max-width:none;width:100%}.library,.create{padding:16px 16px 40px}.propositions{grid-template-columns:minmax(0,1fr)}.flow{padding:16px 16px 40px;gap:20px}.flow-grid{grid-template-columns:minmax(0,1fr);gap:22px}.flow-grid:before{display:none}.flow-grid{grid-template-columns:minmax(0,1fr);gap:20px}.chip-row,.layer-row{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:1px}.chip-row::-webkit-scrollbar,.layer-row::-webkit-scrollbar{display:none}.chip-row>*,.layer-row>*{flex:none}.pill,.chip,.tab,.mode-pill,.filter-pill,.sex-btn{display:inline-flex;align-items:center;min-height:44px;padding-top:0;padding-bottom:0}.chip{display:inline-flex}.nav-btn,.btn-solid,.btn-ghost,.btn-sm-solid,.btn-sm-ghost{min-height:46px}.piece,.hypothesis{min-height:56px}.loc-option{min-height:92px}.path-card{min-height:60px}.link-btn{min-height:44px}}@media(max-width:420px){.header{padding:10px 12px}.header h1{font-size:19px}.map-left{padding:8px 12px}.map-right,.puzzle,.library,.create,.flow{padding-left:12px;padding-right:12px}.region-title{font-size:22px}.path-panel{padding:16px}.observation{padding:18px 16px}}@media(prefers-reduced-motion:reduce){.fade-up{animation:none}.sidebar,.scrim{transition:none}[style*=shake]{animation:none!important}}
