:root{--ease-spring:linear(0,0.018,0.065,0.131,0.209,0.292,0.375,0.457,0.534,0.605,0.67,0.728,0.779,0.822,0.86,0.892,0.918,0.94,0.958,0.972,0.983,0.991,0.998,1.002,1.006,1.008,1.009,1.01,1.01,1.009,1.009,1.008,1.007,1.007,1.006,1.005,1.004,1.004,1.003,1.002,1);--dur-spring:558ms;--ease-bounce:linear(0,0.042,0.151,0.3,0.466,0.632,0.785,0.915,1.019,1.094,1.141,1.166,1.17,1.16,1.139,1.113,1.084,1.056,1.031,1.01,0.993,0.982,0.975,0.971,0.971,0.974,0.977,0.982,0.987,0.992,0.996,0.999,1.002,1.003,1.005,1.005,1.005,1.004,1.004,1.003,1);--dur-bounce:708ms}@font-face{font-family:Figtree;src:url(/fonts/figtree-v1.woff2) format("woff2");font-weight:300 900;font-style:normal;font-display:swap}:root{--paper: #F2F4F7;--surface: #FFFFFF;--ink: #111A36;--ink-soft: #4B5470;--line: #D8DDE6;--line-strong: #A9B1C2;--control: #7A8299;--accent: #F6B40E;--on-accent: #111A36;--on-ink: #F2F4F7;--on-ink-soft: #B3B7C1;--on-ink-line: rgb(242 244 247 / .24);--ok: #157A50;--ko: #B93A22;--ok-soft: #E3F2EA;--ko-soft: #F8E7E2;--veil: rgb(12 17 32 / .4);--elev: 0 1px 2px rgb(17 26 54 / .06), 0 18px 44px -14px rgb(17 26 54 / .28);--elev-up: 0 -1px 0 var(--line), 0 -10px 30px -18px rgb(17 26 54 / .3);--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--s8: 64px;--r-tag: 8px;--r-choice: 16px;--r-card: 24px;--r-sheet: 32px;--r-pill: 999px;--f13: .8125rem;--f15: .9375rem;--f17: 1.0625rem;--f21: 1.3125rem;--f26: 1.625rem;--f33: 2.0625rem;--f41: 2.5625rem;--f52: 3.25rem;--t-press: .12s;--t-ui: .24s;--t-view: .42s;--ease-out: cubic-bezier(.2, .8, .2, 1);--maxw: 560px;--tab-h: 64px;--sat: env(safe-area-inset-top, 0px);--sab: env(safe-area-inset-bottom, 0px);color-scheme:light}[data-theme=dark]{--paper: #0C1120;--surface: #151C30;--ink: #EDF0F6;--ink-soft: #A2AAC0;--line: #283150;--line-strong: #4A557A;--control: #6E7896;--accent: #FFC024;--on-accent: #111A36;--on-ink: #0C1120;--on-ink-soft: #4B4F5C;--on-ink-line: rgb(12 17 32 / .2);--ok: #4FC48E;--ko: #FF8266;--ok-soft: #10291F;--ko-soft: #33191A;--veil: rgb(0 0 0 / .6);--elev: 0 1px 0 rgb(255 255 255 / .04), 0 18px 44px -14px rgb(0 0 0 / .7);--elev-up: 0 -1px 0 var(--line), 0 -10px 30px -18px rgb(0 0 0 / .8);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{background:var(--paper);-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--sat) + var(--s4));scroll-padding-bottom:calc(var(--tab-h) + var(--sab) + var(--s4))}body{margin:0;min-height:100dvh;background:var(--paper);color:var(--ink);font:400 var(--f17)/1.5 Figtree,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;overflow-x:hidden}h1,h2,h3,p,ul,ol,dl,dd,figure,fieldset{margin:0}ul,ol{padding:0;list-style:none}fieldset{border:0;padding:0;min-width:0}legend{padding:0}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;background:none;border:0;padding:0;text-align:inherit}a{color:inherit}svg{display:block}.ico{flex:none;width:20px;height:20px}img{display:block;max-width:100%}p,li,dd{text-wrap:pretty}:focus{outline:none}:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:6px}[tabindex="-1"]:focus,[tabindex="-1"]:focus-visible{outline:none}.on-ink :focus-visible{outline-color:var(--accent)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}[hidden]{display:none!important}.noscript{padding:var(--s5)}.h-xl{font-size:var(--f41);line-height:1.04;font-weight:820;letter-spacing:-.03em;text-wrap:balance}.h-l{font-size:var(--f33);line-height:1.08;font-weight:800;letter-spacing:-.025em;text-wrap:balance}.h-m{font-size:var(--f26);line-height:1.15;font-weight:800;letter-spacing:-.02em;text-wrap:balance}.h-s{font-size:var(--f21);line-height:1.25;font-weight:760;letter-spacing:-.012em;text-wrap:balance}.eyebrow{font-size:var(--f15);line-height:1.35;font-weight:600;color:var(--ink-soft)}.lead{font-size:var(--f17);line-height:1.5;color:var(--ink-soft)}.small{font-size:var(--f15);line-height:1.45;color:var(--ink-soft)}.tiny{font-size:var(--f13);line-height:1.4;color:var(--ink-soft)}.num{font-variant-numeric:tabular-nums}.strong{font-weight:750;color:var(--ink)}.link{font-weight:650;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;text-decoration-color:var(--line-strong)}#app{min-height:100dvh}#view{display:block;min-height:100dvh;view-transition-name:page}.screen{max-width:var(--maxw);margin:0 auto;padding:calc(var(--sat) + var(--s4)) var(--s5) calc(var(--tab-h) + var(--sab) + var(--s7))}.screen.bare{padding-top:calc(var(--sat) + var(--s7));padding-bottom:calc(var(--sab) + var(--s7))}.center{text-align:center}.section{margin-top:var(--s7)}.section-h{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);margin-bottom:var(--s4)}.stack>*+*{margin-top:var(--s3)}.stack-l>*+*{margin-top:var(--s5)}.mt-s{margin-top:var(--s3)}.mt-m{margin-top:var(--s5)}.mt-l{margin-top:var(--s7)}.row-x{display:flex;align-items:center;gap:var(--s3)}.grow{flex:1;min-width:0}.splash{min-height:100dvh;display:grid;place-items:center;color:var(--ink)}.bar-top{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);min-height:56px;margin:0 calc(-1 * var(--s3)) var(--s4)}.page-h{margin-bottom:var(--s2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);min-height:56px;padding:0 var(--s6);border-radius:var(--r-pill);font-size:var(--f17);font-weight:750;line-height:1.2;letter-spacing:-.005em;text-align:center;text-decoration:none;touch-action:manipulation;user-select:none;-webkit-user-select:none;transition:transform var(--dur-spring, .42s) var(--ease-spring, var(--ease-out)),background-color var(--t-ui),color var(--t-ui),box-shadow var(--t-ui)}.btn:active:not(:disabled){transform:scale(.965);transition-duration:var(--t-press);transition-timing-function:var(--ease-out)}.btn-block{display:flex;width:100%}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:disabled{background:var(--line);color:var(--ink-soft);cursor:default}.btn-ink{background:var(--ink);color:var(--on-ink)}.btn-line{box-shadow:inset 0 0 0 2px currentColor}.btn-ghost{min-height:48px;padding:0 var(--s4);font-weight:650;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px;text-decoration-color:var(--line-strong)}.btn-s{min-height:48px;padding:0 var(--s5);font-size:var(--f15)}.icon-btn{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;transition:transform var(--dur-spring, .42s) var(--ease-spring, var(--ease-out)),background-color var(--t-ui)}.icon-btn:active{transform:scale(.9);background:var(--line)}.icon-btn svg{width:24px;height:24px}.card{border-radius:var(--r-card);padding:var(--s5);background:var(--surface)}.card-fill{border-radius:var(--r-card);padding:var(--s5);background:var(--ink);color:var(--on-ink)}.card-line{border-radius:var(--r-card);padding:var(--s5);box-shadow:inset 0 0 0 2px var(--ink)}.tag{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:2px 10px;border-radius:var(--r-tag);font-size:var(--f13);font-weight:650;line-height:1.3;box-shadow:inset 0 0 0 1.5px currentColor}.tag-fill{background:var(--ink);color:var(--on-ink);box-shadow:none}.tag-accent{background:var(--accent);color:var(--on-accent);box-shadow:none}.tag-soft{color:var(--ink-soft)}.tag-draft{color:var(--ink-soft);box-shadow:inset 0 0 0 1.5px var(--control)}.tag-draft:before{content:"";width:8px;height:8px;border-radius:50%;box-shadow:inset 0 0 0 1.5px currentColor}.claims{display:grid;gap:var(--s3);margin-top:var(--s5)}.claim{border-radius:var(--r-card);padding:var(--s4) var(--s5) var(--s5)}.claim-e{background:var(--ink);color:var(--on-ink)}.claim-t{box-shadow:inset 0 0 0 2px var(--ink);color:var(--ink)}.claim p{font-size:var(--f17);line-height:1.45;font-weight:520}.claim h3{font-size:var(--f21);line-height:1.2;font-weight:800;letter-spacing:-.015em;margin-bottom:var(--s2)}.kind{display:inline-flex;align-items:center;gap:7px;margin-bottom:var(--s2);font-size:var(--f13);font-weight:720;letter-spacing:.01em}.kind:before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:currentColor}.claim-t .kind:before{background:none;box-shadow:inset 0 0 0 2px currentColor}.claim-sm{padding:var(--s3) var(--s4) var(--s4);border-radius:var(--r-choice)}.claim-sm p{font-size:var(--f15);line-height:1.45}.claim-sm .kind{margin-bottom:4px}.legend{display:grid;gap:var(--s2);margin-top:var(--s5);padding:var(--s4);border-radius:var(--r-choice);background:var(--surface);font-size:var(--f15);line-height:1.4;color:var(--ink-soft)}.legend>span{display:flex;align-items:center;gap:var(--s3)}.sw{flex:none;width:26px;height:18px;border-radius:6px}.sw-e{background:var(--ink)}.sw-t{box-shadow:inset 0 0 0 2px var(--ink)}.gauge{position:relative;height:8px;border-radius:var(--r-pill);background:var(--line);overflow:hidden}.gauge>i{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--ink)}.on-ink .gauge{background:var(--on-ink-line)}.on-ink .gauge>i{background:var(--on-ink)}.lv{display:inline-grid;grid-template-columns:repeat(4,1fr);gap:4px;width:76px;flex:none}.lv>i{height:8px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1.5px var(--control)}.lv>i.on{background:var(--ink);box-shadow:none}.ring{transform:rotate(-90deg)}.ring .ring-bg{stroke:var(--line)}.ring .ring-fg{stroke:var(--ink);transition:stroke-dashoffset .9s var(--ease-out)}.tabbar{position:fixed;inset:auto 0 0;z-index:20;background:var(--surface);box-shadow:var(--elev-up);padding-bottom:var(--sab);view-transition-name:tabbar}.tabbar .in{display:grid;grid-template-columns:repeat(4,1fr);max-width:var(--maxw);margin:0 auto;height:var(--tab-h)}.tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:48px;font-size:var(--f13);font-weight:600;color:var(--ink-soft);text-decoration:none;transition:color var(--t-ui)}.tab svg{width:24px;height:24px;transition:transform var(--dur-bounce, .5s) var(--ease-bounce, var(--ease-out))}.tab[aria-current=page]{color:var(--ink);font-weight:760}.tab:active svg{transform:scale(.86)}.tab:focus-visible{outline-offset:-4px;border-radius:var(--r-choice)}.brand{display:inline-flex;align-items:center;gap:10px;font-size:var(--f17);font-weight:820;letter-spacing:-.02em;text-decoration:none}.brand svg{width:34px;height:17px}.streak-chip{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px 0 14px;border-radius:var(--r-pill);background:var(--surface);font-size:var(--f17);font-weight:820;text-decoration:none;transition:transform var(--dur-spring, .42s) var(--ease-spring, var(--ease-out))}.streak-chip:active{transform:scale(.95)}.pip{flex:none;width:16px;height:16px;border-radius:50%;box-shadow:inset 0 0 0 2.5px var(--ink)}.pip.on{background:var(--ink);box-shadow:none}.today-h{margin-top:var(--s2)}.goal{margin-top:var(--s5)}.goal-top{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s3);margin-bottom:var(--s2);font-size:var(--f15)}.goal-top b{font-weight:760}.goal.met .gauge>i{background:var(--ink)}.hero{position:relative;display:grid;gap:var(--s2);margin-top:var(--s5);padding:var(--s5);border-radius:var(--r-card);background:var(--ink);color:var(--on-ink)}.hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s4);min-height:56px}.hero .eyebrow{color:var(--on-ink-soft);padding-top:2px}.hero .meta{font-size:var(--f15);color:var(--on-ink-soft)}.hero .art{flex:none;width:56px;height:56px;margin:-4px -4px 0 0}.hero .actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);margin-top:var(--s4)}.hero .btn-line{color:var(--on-ink)}.tile{display:flex;align-items:center;gap:var(--s4);width:100%;min-height:76px;margin-top:var(--s3);padding:var(--s4) var(--s5);border-radius:var(--r-card);background:var(--surface);text-align:left;text-decoration:none;transition:transform var(--dur-spring, .42s) var(--ease-spring, var(--ease-out))}a.tile:active,button.tile:active{transform:scale(.98)}.tile-ico{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;box-shadow:inset 0 0 0 2px var(--ink)}.tile-ico.fill{background:var(--ink);color:var(--on-ink);box-shadow:none}.tile-ico svg{width:22px;height:22px}.tile strong{display:block;font-weight:760;line-height:1.3}.tile .go{flex:none;color:var(--ink-soft)}.tile.quiet{background:transparent;box-shadow:inset 0 0 0 2px var(--line)}.tile.primary{box-shadow:inset 0 0 0 2px var(--ink);background:var(--surface);flex-wrap:wrap}.notice{display:grid;gap:var(--s3);margin-top:var(--s5);padding:var(--s5);border-radius:var(--r-card);background:var(--surface)}.notice .row-x{justify-content:flex-start;flex-wrap:wrap;gap:var(--s2)}.notice .h-s{font-size:var(--f21)}.defi{margin-top:var(--s3);padding:var(--s5);border-radius:var(--r-card);box-shadow:inset 0 0 0 2px var(--ink)}.dots7{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:var(--s4) 0;max-width:300px}.dots7>i{aspect-ratio:1;border-radius:50%;box-shadow:inset 0 0 0 2px var(--control)}.dots7>i.on{background:var(--ink);box-shadow:none}.foot-note{margin-top:var(--s7);padding-top:var(--s5);border-top:1px solid var(--line);font-size:var(--f13);line-height:1.5;color:var(--ink-soft)}.foot-note button{font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px;min-height:32px}.unit{margin-top:var(--s7)}.unit-head{display:grid;grid-template-columns:1fr auto;gap:var(--s4);align-items:start}.unit-head .art{width:84px;height:84px}.unit-head .tag{margin-top:var(--s3)}.unit-meta{display:flex;align-items:center;gap:var(--s4);margin-top:var(--s4);font-size:var(--f15);color:var(--ink-soft)}.unit-meta .gauge{flex:1}.unit-meta a{flex:none;min-height:44px;display:inline-flex;align-items:center}.nodes{margin-top:var(--s4)}.node{position:relative}.node:before,.node:after{content:"";position:absolute;left:27px;width:2px;background:var(--line-strong)}.node:before{top:0;height:50%}.node:after{top:50%;bottom:0}.node:first-child:before,.node:last-child:after{display:none}.node.done:after,.node.done+.node:before{background:var(--ink)}.node.open .knob{box-shadow:inset 0 0 0 2.5px var(--ink);color:var(--ink)}.node.locked .knob{color:var(--ink-soft)}.node-btn{display:grid;grid-template-columns:56px 1fr;align-items:center;gap:var(--s4);width:100%;min-height:76px;padding:10px 0;text-align:left}.knob{position:relative;z-index:1;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--paper);box-shadow:inset 0 0 0 2.5px var(--control);font-weight:820;font-size:var(--f17);color:var(--ink-soft);transition:transform var(--dur-bounce, .5s) var(--ease-bounce, var(--ease-out))}.knob svg{width:24px;height:24px}.node.done .knob{background:var(--ink);color:var(--on-ink);box-shadow:none}.node.current .knob{background:var(--accent);color:var(--on-accent);box-shadow:none}.node.current .knob:after{content:"";position:absolute;inset:-7px;border-radius:50%;box-shadow:0 0 0 2.5px var(--accent);animation:halo 2.4s var(--ease-out) infinite}@keyframes halo{0%{opacity:.9;transform:scale(.94)}70%,to{opacity:0;transform:scale(1.22)}}.node-btn:active .knob{transform:scale(.92)}.node-t{display:block;font-weight:720;line-height:1.3}.node.locked .node-t{color:var(--ink-soft);font-weight:600}.node.current .node-t{font-weight:820;font-size:var(--f17)}.unit.soon .unit-head h2,.unit.soon .unit-head p{color:var(--ink-soft)}.unit.soon{padding-top:var(--s5);border-top:1px dashed var(--line-strong)}.unit.soon+.unit.soon{margin-top:var(--s5)}.path-end{margin-top:var(--s7);text-align:left}.player{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100dvh;max-width:var(--maxw);margin:0 auto;background:var(--paper)}.player.hero-vt{view-transition-name:hero}.pl-top{display:flex;align-items:center;gap:var(--s2);padding:calc(var(--sat) + var(--s2)) var(--s2)}.pl-top [data-act=info]{color:var(--ink-soft)}.pl-bar{flex:1;height:10px;border-radius:var(--r-pill);background:var(--line);overflow:hidden}.pl-bar>i{display:block;height:100%;border-radius:inherit;background:var(--ink);transform-origin:left center;transform:scaleX(.02);transition:transform var(--dur-spring, .42s) var(--ease-spring, var(--ease-out))}.pl-count{flex:none;min-width:44px;text-align:right;font-size:var(--f13);font-weight:700;color:var(--ink-soft)}.pl-stage{overflow-y:auto;overscroll-behavior:contain;padding:var(--s4) var(--s5) var(--s6)}.pl-foot{padding:var(--s3) var(--s5) calc(var(--sab) + var(--s4));display:grid;gap:var(--s2)}.pl-foot.has-fb{padding:0}.step .eyebrow{margin-bottom:var(--s2)}.step .q{margin-bottom:var(--s5)}.step .tag-retry{margin-bottom:var(--s3)}.draft-note{margin-top:var(--s5)}.choices{display:grid;gap:var(--s3)}.choices.two{grid-template-columns:1fr 1fr}.choices.three{grid-template-columns:repeat(3,1fr);gap:var(--s2)}.choice{position:relative;display:flex;align-items:center;gap:var(--s3);min-height:60px;padding:var(--s3) var(--s4);border-radius:var(--r-choice);background:var(--surface);box-shadow:inset 0 0 0 2px var(--line);font-weight:620;line-height:1.3;cursor:pointer;user-select:none;-webkit-user-select:none;transition:box-shadow var(--t-ui) var(--ease-out),background-color var(--t-ui),opacity var(--t-ui)}.choice input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.choice .dot{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;box-shadow:inset 0 0 0 2px var(--control);transition:background-color var(--t-ui),box-shadow var(--t-ui)}.choice .dot svg{width:16px;height:16px}.choice.is-sel{box-shadow:inset 0 0 0 3px var(--ink)}.choice.is-sel .dot{background:var(--ink);box-shadow:none}.choice:has(input:focus-visible){outline:3px solid var(--ink);outline-offset:3px}.choice-big{flex-direction:column;justify-content:center;min-height:128px;font-size:var(--f21);font-weight:780}.choice-seg{flex-direction:column;justify-content:center;gap:var(--s2);min-height:92px;padding:var(--s3) var(--s2);text-align:center;font-size:var(--f15)}.choice.is-ok{box-shadow:inset 0 0 0 3px var(--ok);background:var(--ok-soft)}.choice.is-ok .dot{background:var(--ok);color:#fff;box-shadow:none}.choice.is-ko{box-shadow:inset 0 0 0 3px var(--ko);background:var(--ko-soft)}.choice.is-ko .dot{background:transparent;color:var(--ko);box-shadow:inset 0 0 0 2.5px var(--ko)}.choice.is-off{opacity:.55}[data-theme=dark] .choice.is-ok .dot{color:#0c1120}.story{margin:var(--s3) 0 var(--s5);padding:var(--s5);border-radius:var(--r-card);background:var(--surface);font-size:var(--f17);line-height:1.5;font-weight:520}.story:before{content:"La situation";display:block;margin-bottom:var(--s2);font-size:var(--f13);font-weight:720;color:var(--ink-soft)}.sorts{display:grid;gap:var(--s3)}.sort-item{padding:var(--s4);border-radius:var(--r-choice);background:var(--surface);transition:box-shadow var(--t-ui)}.sort-item legend{float:left;width:100%;font-weight:650;line-height:1.35;margin-bottom:var(--s3)}.sort-item.is-ok{box-shadow:inset 0 0 0 2px var(--ok)}.sort-item.is-ko{box-shadow:inset 0 0 0 2px var(--ko)}.seg{clear:both;display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}.seg-opt{position:relative;display:grid;place-items:center;min-height:48px;padding:var(--s2) var(--s3);border-radius:var(--r-pill);box-shadow:inset 0 0 0 2px var(--line);font-size:var(--f15);font-weight:680;text-align:center;line-height:1.2;cursor:pointer;user-select:none;-webkit-user-select:none;transition:background-color var(--t-ui),color var(--t-ui),box-shadow var(--t-ui)}.seg-opt input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.seg-opt.is-sel{background:var(--ink);color:var(--on-ink);box-shadow:none}.seg-opt:has(input:focus-visible){outline:3px solid var(--ink);outline-offset:3px}.seg-opt.is-ok{background:var(--ok);color:#fff;box-shadow:none}.seg-opt.is-ko{background:transparent;color:var(--ko);box-shadow:inset 0 0 0 2.5px var(--ko)}[data-theme=dark] .seg-opt.is-ok{color:#0c1120}.ord-ans{display:grid;gap:var(--s2);counter-reset:none}.ord-ans li{min-height:56px}.slot{display:flex;align-items:center;gap:var(--s3);padding:0 var(--s4);height:56px;border-radius:var(--r-choice);outline:2px dashed var(--control);outline-offset:-2px}.chip .n,.slot .n{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;font-size:var(--f13);font-weight:820;line-height:1}.slot .n{color:var(--ink-soft);background:none;box-shadow:inset 0 0 0 2px var(--control)}.ord-pool{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s5);min-height:56px}.chip{display:inline-flex;align-items:center;gap:var(--s3);min-height:52px;padding:0 var(--s4);border-radius:var(--r-choice);background:var(--surface);box-shadow:inset 0 0 0 2px var(--line);font-weight:650;line-height:1.25;text-align:left;touch-action:manipulation}.ord-ans .chip{width:100%;min-height:56px;box-shadow:inset 0 0 0 2px var(--ink)}.chip .n{background:var(--ink);color:var(--on-ink)}.chip.is-ok{box-shadow:inset 0 0 0 3px var(--ok);background:var(--ok-soft)}.chip.is-ok .n{background:var(--ok);color:#fff}.chip.is-ko{box-shadow:inset 0 0 0 3px var(--ko);background:var(--ko-soft)}.chip.is-ko .n{background:transparent;color:var(--ko);box-shadow:inset 0 0 0 2px var(--ko)}.chip:disabled{cursor:default}.geste{margin-top:var(--s3);padding:var(--s6) var(--s5);border-radius:var(--r-card);box-shadow:inset 0 0 0 2px var(--ink)}.geste-t{font-size:var(--f26);line-height:1.2;font-weight:800;letter-spacing:-.02em;text-wrap:balance}.geste-s{margin-top:var(--s3);color:var(--ink-soft)}.geste-note{margin-top:var(--s4)}.alert{padding:var(--s5);border-radius:var(--r-card);background:var(--ink);color:var(--on-ink)}.alert ul{display:grid;gap:var(--s3);margin:var(--s5) 0}.alert li{position:relative;padding-left:28px;font-weight:560;line-height:1.4}.alert li:before{content:"";position:absolute;left:2px;top:.38em;width:12px;height:12px;border-radius:50%;box-shadow:inset 0 0 0 2.5px var(--accent)}.alert-t{color:var(--on-ink-soft)}.urgence{margin-top:var(--s4)}.fb{display:grid;gap:var(--s3);max-height:66dvh;overflow-y:auto;overscroll-behavior:contain;padding:var(--s5) var(--s5) calc(var(--sab) + var(--s4));border-radius:var(--r-sheet) var(--r-sheet) 0 0;background:var(--surface);box-shadow:var(--elev-up)}.fb-head{display:flex;align-items:center;gap:var(--s3)}.fb-word{font-size:var(--f26);font-weight:820;letter-spacing:-.02em;line-height:1.1}.fb-ok .fb-word{color:var(--ok)}.fb-ko .fb-word{color:var(--ko)}.fb-mark{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%}.fb-mark svg{width:20px;height:20px}.fb-ok .fb-mark{background:var(--ok);color:#fff}.fb-ko .fb-mark{box-shadow:inset 0 0 0 3px var(--ko);color:var(--ko)}[data-theme=dark] .fb-ok .fb-mark{color:#0c1120}.fb-right{font-weight:650;line-height:1.4}.fb-lbl{display:block;font-size:var(--f13);font-weight:720;color:var(--ink-soft);margin-bottom:2px}.right-list{display:grid;gap:2px;counter-reset:r}.right-list li{counter-increment:r}.right-list li:before{content:counter(r) ". ";color:var(--ink-soft);font-weight:720}.fb-why{display:grid;gap:var(--s2)}.fb .btn{margin-top:var(--s2)}.celebrate{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:100dvh;max-width:var(--maxw);margin:0 auto;padding:calc(var(--sat) + var(--s6)) var(--s5) calc(var(--sab) + var(--s5));text-align:center}.cel-main{display:grid;align-content:center;justify-items:center;gap:var(--s4)}.cel-main .lead{max-width:30ch}.cel-foot{display:grid;gap:var(--s2);padding-top:var(--s5)}.seal{width:136px;height:136px;overflow:visible;margin-bottom:var(--s3)}.seal-ring{fill:none;stroke:var(--ink);stroke-width:8}.seal-fill{fill:var(--accent);transform-box:fill-box;transform-origin:center}.seal-check{fill:none;stroke:var(--on-accent);stroke-width:9;stroke-linecap:round;stroke-linejoin:round}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2);width:100%;margin-top:var(--s4)}.stats>div{padding:var(--s4) var(--s2);border-radius:var(--r-choice);background:var(--surface)}.stats dt{font-size:var(--f13);line-height:1.3;color:var(--ink-soft);font-weight:600}.stats dd{margin-top:4px;font-size:var(--f21);font-weight:820;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.cel-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s2)}.big-num{font-size:7.5rem;line-height:.9;font-weight:880;letter-spacing:-.05em;font-variant-numeric:tabular-nums}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--s2);width:100%;max-width:360px}.wd{display:grid;justify-items:center;gap:6px;font-size:var(--f13);font-weight:650;color:var(--ink-soft)}.wd.is-today{color:var(--ink);font-weight:820}.pill{position:relative;width:38px;height:38px;border-radius:50%;box-shadow:inset 0 0 0 2px var(--control)}.pill.on{background:var(--ink);box-shadow:none}.pill.gel{box-shadow:inset 0 0 0 2.5px var(--ink)}.pill.gel:after{content:"";position:absolute;inset:12px;border-radius:50%;background:var(--ink)}.pill.todo{box-shadow:inset 0 0 0 2.5px var(--ink)}.pill.fete{background:var(--accent);box-shadow:none}.pill.future{box-shadow:inset 0 0 0 2px var(--line)}.gels{display:flex;gap:var(--s2)}.gel-ico{width:22px;height:22px;border-radius:50%;box-shadow:inset 0 0 0 2.5px var(--ink);position:relative}.gel-ico:after{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--ink)}.gel-ico.off{box-shadow:inset 0 0 0 2px var(--control)}.gel-ico.off:after{background:none}.explain{display:grid;gap:var(--s3);text-align:left}.explain .claims{margin-top:0}.streak-h{display:grid;justify-items:inherit;gap:var(--s1);margin:var(--s2) 0 var(--s3)}.cel-main .streak-h{justify-items:center;margin:0}.step .tag-retry{display:inline-flex}.em-err{color:var(--ko);font-weight:650}button.link{min-height:44px}.streak-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:var(--s5);text-decoration:none}.streak-card .big-num{font-size:4.5rem}.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.cal .h{font-size:var(--f13);font-weight:650;color:var(--ink-soft);text-align:center;padding-bottom:2px}.cal .c{aspect-ratio:1;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--line);position:relative}.cal .c.on{background:var(--ink);box-shadow:none}.cal .c.gel{box-shadow:inset 0 0 0 2px var(--ink)}.cal .c.gel:after{content:"";position:absolute;inset:32%;border-radius:50%;background:var(--ink)}.cal .c.today{box-shadow:inset 0 0 0 2.5px var(--ink)}.cal .c.today.on{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--ink)}.cal .c.out{visibility:hidden}.figs{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3)}.fig{padding:var(--s4) var(--s5);border-radius:var(--r-card);background:var(--surface)}.fig b{display:block;font-size:var(--f33);font-weight:860;letter-spacing:-.03em;line-height:1.05;font-variant-numeric:tabular-nums}.fig span{display:block;margin-top:4px;font-size:var(--f15);line-height:1.3;color:var(--ink-soft)}.ms-list{display:grid;gap:var(--s2)}.ms{display:flex;align-items:center;gap:var(--s4);min-height:64px;padding:var(--s3) var(--s4);border-radius:var(--r-choice)}.ms.on{background:var(--surface)}.ms .m-ico{flex:none;width:36px;height:36px;border-radius:50%;box-shadow:inset 0 0 0 2px var(--control);display:grid;place-items:center}.ms.on .m-ico{background:var(--ink);color:var(--on-ink);box-shadow:none}.ms .m-ico svg{width:18px;height:18px}.ms:not(.on) .ms-t{color:var(--ink-soft)}.ms-t{font-weight:700;line-height:1.3}.u-row{display:grid;gap:var(--s3);padding:var(--s5);border-radius:var(--r-card);background:var(--surface);text-decoration:none}.u-row+.u-row{margin-top:var(--s3)}.u-row .row-x .art{width:52px;height:52px}.notions{display:grid}.notion-row{display:flex;align-items:center;gap:var(--s4);min-height:56px;border-bottom:1px solid var(--line)}.notion-row:last-child{border-bottom:0}.notion-row span{flex:1;font-weight:600;line-height:1.3}.group{margin-top:var(--s6)}.group>h2{margin-bottom:var(--s3);font-size:var(--f15);font-weight:720;color:var(--ink-soft)}.list{border-radius:var(--r-card);background:var(--surface)}.row{display:flex;align-items:center;gap:var(--s4);width:100%;min-height:64px;padding:var(--s3) var(--s5);text-align:left;text-decoration:none}.row+.row{box-shadow:inset 0 1px 0 var(--line)}.row .grow strong{display:block;font-weight:700;line-height:1.3}.row .grow span{display:block;font-size:var(--f15);color:var(--ink-soft);line-height:1.4}.row.col{flex-direction:column;align-items:stretch;gap:var(--s3);padding-top:var(--s4);padding-bottom:var(--s4)}.switch{position:relative;flex:none;width:56px;height:34px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 2px var(--ink);transition:background-color var(--t-ui)}.switch:after{content:"";position:absolute;top:7px;left:7px;width:20px;height:20px;border-radius:50%;box-shadow:inset 0 0 0 2px var(--ink);transition:transform var(--dur-bounce, .5s) var(--ease-bounce, var(--ease-out)),background-color var(--t-ui),box-shadow var(--t-ui)}.switch[aria-checked=true]{background:var(--ink)}.switch[aria-checked=true]:after{transform:translate(22px);background:var(--on-ink);box-shadow:none}.switch:disabled{opacity:.45}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1.5px var(--control)}.segmented label{position:relative;display:grid;place-items:center;min-height:48px;padding:0 var(--s2);border-radius:var(--r-pill);font-weight:680;font-size:var(--f15);cursor:pointer;transition:background-color var(--t-ui),color var(--t-ui)}.segmented input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.segmented label.is-sel{background:var(--ink);color:var(--on-ink)}.segmented label:has(input:focus-visible){outline:3px solid var(--ink);outline-offset:2px}.select{min-height:48px;padding:0 var(--s4);border:0;border-radius:var(--r-pill);background:var(--paper);box-shadow:inset 0 0 0 1.5px var(--control);font-weight:680;appearance:none;-webkit-appearance:none}.field{width:100%;min-height:56px;padding:0 var(--s4);border:0;border-radius:var(--r-choice);background:var(--surface);box-shadow:inset 0 0 0 2px var(--control);font-size:var(--f17)}.field:focus-visible{outline:none;box-shadow:inset 0 0 0 3px var(--ink)}textarea.field{min-height:120px;padding:var(--s3) var(--s4);resize:vertical;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:var(--f13);line-height:1.5;word-break:break-all}.check{display:flex;align-items:flex-start;gap:var(--s3);min-height:48px;cursor:pointer}.check input{flex:none;width:24px;height:24px;margin:0;accent-color:var(--ink)}.prose{display:grid;gap:var(--s3)}.prose p,.prose li{color:var(--ink-soft)}.prose strong{color:var(--ink)}.prose ul{display:grid;gap:var(--s2)}.prose li{position:relative;padding-left:18px}.prose li:before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--ink)}.ob{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:100dvh;max-width:var(--maxw);margin:0 auto;padding:calc(var(--sat) + var(--s4)) var(--s5) calc(var(--sab) + var(--s5))}.ob-body{display:grid;align-content:center;gap:var(--s4);padding:var(--s5) 0}.ob-foot{display:grid;justify-items:center;gap:var(--s2)}.ob-foot .btn-ghost{color:var(--ink-soft)}.ob-logo{display:flex;align-items:center;gap:12px;font-weight:820;font-size:var(--f21);letter-spacing:-.02em;min-height:48px}.ob-logo svg{width:48px;height:24px}.ob-demo{display:grid;gap:var(--s3);margin-top:var(--s3)}.opt{display:flex;align-items:center;gap:var(--s4);min-height:84px;padding:var(--s4) var(--s5);border-radius:var(--r-card);background:var(--surface);box-shadow:inset 0 0 0 2px var(--line);text-align:left;cursor:pointer;transition:box-shadow var(--t-ui),transform var(--dur-spring, .42s) var(--ease-spring, var(--ease-out))}.opt:active{transform:scale(.98)}.opt input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.opt.is-sel{box-shadow:inset 0 0 0 3px var(--ink)}.opt:has(input:focus-visible){outline:3px solid var(--ink);outline-offset:3px}.opt .min{flex:none;width:64px;font-size:var(--f33);font-weight:860;letter-spacing:-.03em;line-height:1}.opt .min small{display:block;font-size:var(--f13);font-weight:650;letter-spacing:0;color:var(--ink-soft);margin-top:2px}.opt .art{flex:none;width:56px;height:56px}.opt strong{display:block;font-weight:760;font-size:var(--f17);line-height:1.3}.opt span.small{display:block}.ob-step{display:flex;align-items:center;justify-content:space-between;min-height:48px}.ob-dots{display:flex;gap:6px}.ob-dots i{width:22px;height:6px;border-radius:99px;background:var(--line)}.ob-dots i.on{background:var(--ink)}dialog.sheet{position:fixed;inset:auto 0 0;width:100%;max-width:var(--maxw);max-height:90dvh;margin:0 auto;padding:0;border:0;border-radius:var(--r-sheet) var(--r-sheet) 0 0;background:var(--surface);color:var(--ink);box-shadow:var(--elev);overflow:hidden}dialog.sheet[open]{display:flex;flex-direction:column}dialog.sheet::backdrop{background:var(--veil)}.sheet-grip{flex:none;display:grid;place-items:center;height:28px;touch-action:none;cursor:grab}.sheet-grip:before{content:"";width:44px;height:5px;border-radius:99px;background:var(--line-strong)}.sheet-body{overflow-y:auto;overscroll-behavior:contain;padding:var(--s2) var(--s5) calc(var(--sab) + var(--s5));display:grid;gap:var(--s4)}.sheet-actions{display:grid;gap:var(--s2);margin-top:var(--s2)}.sheet-body .legend{margin-top:0;background:var(--paper)}.recap-img{width:100%;height:auto;border-radius:var(--r-choice);box-shadow:0 0 0 1px var(--line)}.toast{position:fixed;left:50%;z-index:80;bottom:calc(var(--sab) + 104px);max-width:calc(100vw - 32px);width:max-content;padding:var(--s3) var(--s5);border-radius:var(--r-pill);background:var(--ink);color:var(--on-ink);font-size:var(--f15);font-weight:650;text-align:center;box-shadow:var(--elev);opacity:0;transform:translate(-50%,16px);pointer-events:none;transition:opacity var(--t-ui),transform var(--dur-spring, .42s) var(--ease-spring, var(--ease-out))}.toast:empty{display:none}body.has-tabs .toast{bottom:calc(var(--tab-h) + var(--sab) + var(--s4))}.toast.show{opacity:1;transform:translate(-50%)}.burst{position:fixed;inset:0;pointer-events:none;z-index:70}.burst i{position:absolute;border-radius:50%}.p-fill{background:var(--accent)}.p-ink{background:var(--ink)}.p-line{box-shadow:inset 0 0 0 2.5px var(--ink)}.art{width:96px;height:96px;color:var(--ink);overflow:visible}.on-ink .art,.hero .art{color:var(--on-ink)}.art .f,.art .a{fill:currentColor}.art .s,.art .sa{fill:none;stroke:currentColor;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}.art.lit .a{fill:var(--accent)}.art.lit .sa{stroke:var(--accent)}.art.soon{color:var(--line-strong)}.art.soon .f,.art.soon .a{fill:none;stroke:currentColor;stroke-width:5}.art.soon .sa{stroke:currentColor}.sky-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3);margin-top:var(--s5)}.sky-cell{display:grid;justify-items:center;align-content:start;gap:2px;padding:var(--s4) var(--s3) var(--s5);border-radius:var(--r-card);background:var(--surface);text-align:center;text-decoration:none;transition:transform var(--dur-spring, .42s) var(--ease-spring, var(--ease-out))}a.sky-cell:active{transform:scale(.97)}.sky-cell strong{font-weight:760;line-height:1.25;margin-top:var(--s2);text-wrap:balance}.sky-cell.soon{background:transparent;box-shadow:inset 0 0 0 1.5px var(--line)}.sky-cell.soon strong{color:var(--ink-soft);font-weight:650}.sky{width:100%;max-width:132px;height:auto;overflow:visible}.sky .ln{stroke:var(--line-strong);stroke-width:1.5}.sky .ln.lit{stroke:var(--ink);stroke-width:2.25}.sky .ln.spoke{stroke:var(--ink);stroke-width:1.25;opacity:.35}.sky .st{fill:var(--surface);stroke:var(--control);stroke-width:2}.sky .st.seen{fill:var(--surface);stroke:var(--ink);stroke-width:2.5}.sky .st.solid{fill:var(--ink);stroke:var(--ink)}.sky .st.soon{stroke:var(--line-strong);stroke-width:1.5;stroke-dasharray:2 3}.sky .core{fill:var(--ink)}.sky .hub{fill:var(--surface);stroke:var(--ink);stroke-width:3}.sky .hub.done{fill:var(--ink);stroke:var(--ink)}.sky .hub.soon{fill:none;stroke:var(--line-strong);stroke-width:2;stroke-dasharray:2 4;stroke-linecap:round}.sky-legend{display:flex;flex-wrap:wrap;gap:var(--s4);margin-top:var(--s4);font-size:var(--f13);color:var(--ink-soft)}.sky-legend span{display:inline-flex;align-items:center;gap:6px}.sky-legend i{width:12px;height:12px;border-radius:50%;box-shadow:inset 0 0 0 2px var(--control)}.sky-legend i.seen{box-shadow:inset 0 0 0 2px var(--ink);background:radial-gradient(circle,var(--ink) 0 2px,transparent 2.5px)}.sky-legend i.solid{background:var(--ink);box-shadow:none}::view-transition-old(page),::view-transition-new(page){animation-duration:var(--t-view);animation-timing-function:var(--ease-out);animation-fill-mode:both}html[data-vt=left]::view-transition-old(page){animation-name:vt-out-l}html[data-vt=left]::view-transition-new(page){animation-name:vt-in-r}html[data-vt=right]::view-transition-old(page){animation-name:vt-out-r}html[data-vt=right]::view-transition-new(page){animation-name:vt-in-l}html[data-vt=fwd]::view-transition-old(page){animation-name:vt-out-l;animation-duration:.26s}html[data-vt=fwd]::view-transition-new(page){animation-name:vt-in-r}html[data-vt=back]::view-transition-old(page){animation-name:vt-out-r;animation-duration:.26s}html[data-vt=back]::view-transition-new(page){animation-name:vt-in-l}::view-transition-group(hero){animation-duration:var(--dur-spring, .42s);animation-timing-function:var(--ease-spring, var(--ease-out))}::view-transition-old(hero){animation:vt-fade-out .18s var(--ease-out) both}::view-transition-new(hero){animation:vt-fade-in .3s 60ms var(--ease-out) both}@keyframes vt-in-r{0%{opacity:0;transform:translate(36px)}}@keyframes vt-in-l{0%{opacity:0;transform:translate(-36px)}}@keyframes vt-out-l{to{opacity:0;transform:translate(-36px)}}@keyframes vt-out-r{to{opacity:0;transform:translate(36px)}}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}}@media(min-width:720px){.screen{padding-top:calc(var(--sat) + var(--s6))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important}.btn:active:not(:disabled),.tile:active,.opt:active,.streak-chip:active,.node-btn:active .knob,.icon-btn:active,.tab:active svg{transform:none}.node.current .knob:after{display:none}.switch:after,.pl-bar>i,.toast{transition-duration:1ms}}@media(forced-colors:active){.claim-t,.choice,.chip,.knob,.pill,.switch{border:2px solid CanvasText}}
