:root{--paper:#edf0f3;--surface:#fff;--ink:#18222d;--muted:#5a6775;--rule:#ccd3da;--link:#1d5f86;--signal:#e8a317;--danger:#b3473f;--track:#dce2e8;--track-strong:#aeb8c2;--highlight:#fbefd3;--hover:#f3f6f8;--serif:Charter, "Bitstream Charter", "Sitka Text", Cambria, Georgia, serif;--sans:"Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;font-family:var(--sans);color:var(--ink);transition:background-color .2s,color .2s}[data-theme=dark]{--paper:#12171d;--surface:#1b222b;--ink:#e7ecf1;--muted:#8b98a6;--rule:#2b3440;--link:#6fb0dd;--danger:#e2756b;--track:#333e4a;--track-strong:#4b5866;--highlight:#e8a3172e;--hover:#232c36}*{box-sizing:border-box}body{background:var(--paper);margin:0;line-height:1.45;transition:background-color .2s}a{color:var(--link)}code{color:var(--muted)}:focus-visible{outline:2px solid var(--link);outline-offset:2px;border-radius:3px}[role=alert]{color:var(--danger)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page-status{padding:1.25rem 2rem}main.page{max-width:44rem;margin:2rem auto;padding:0 1rem}.maps{border-top:1px solid var(--rule);padding:0;list-style:none}.maps li{border-bottom:1px solid var(--rule);padding:.6rem 0}.create{gap:.6rem;max-width:24rem;margin-top:2rem;display:grid}.create label{gap:.2rem;display:grid}.top{flex-wrap:wrap;align-items:baseline;gap:1.5rem;padding:1.25rem 2rem .5rem;display:flex}.top h1{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-size:1.6rem;font-weight:600}.mapsel{display:inline-block;position:relative}.mapsel select{appearance:none;field-sizing:content;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;margin-left:-.35rem;padding:.1rem 2rem .15rem .35rem}.mapsel select:hover{border-color:var(--rule);background:var(--surface)}.mapsel:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);pointer-events:none;width:.5rem;height:.5rem;position:absolute;top:50%;right:.7rem;transform:translateY(-70%)rotate(45deg)}.track{scrollbar-width:thin;scrollbar-color:var(--muted) transparent;padding:.75rem 2rem 1.25rem;overflow-x:auto}.track::-webkit-scrollbar{height:.5rem}.track::-webkit-scrollbar-track{background:0 0}.track::-webkit-scrollbar-thumb{background:var(--rule);border-radius:999px}.track::-webkit-scrollbar-thumb:hover{background:var(--muted)}.track-empty{color:var(--muted);margin:0}.track-inner{--stop-width:7rem;display:flex}.phase{flex:none;padding-top:1.5rem;position:relative}.phase-name{color:var(--muted);white-space:nowrap;font-size:.78rem;position:absolute;top:0;left:0}.phase:before{content:"";background:var(--rule);height:2px;position:absolute;top:2.65rem;left:0;right:0}.stops{display:flex}.stop{width:var(--stop-width);color:var(--ink);flex-direction:column;flex:none;align-items:center;padding:0 2px;text-decoration:none;display:flex;position:relative}.dot{background:var(--surface);border:2px solid var(--rule);font-variant-numeric:tabular-nums;z-index:1;border-radius:50%;place-items:center;width:2.3rem;height:2.3rem;font-size:.8rem;font-weight:600;transition:background .15s,border-color .15s;display:grid;position:relative}.dot:before{content:"";background:conic-gradient(var(--link) calc(var(--p,0) * 1%), var(--track) 0);border-radius:50%;position:absolute;inset:-6px;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 3px),#000 calc(100% - 3px));mask:radial-gradient(farthest-side,#0000 calc(100% - 3px),#000 calc(100% - 3px))}.stop.lit .dot{background:var(--signal);border-color:var(--signal)}.stop.lit .stop-title{color:var(--ink)}.track.filtering .stop:not(.lit):not(.sel){opacity:.35}.track-note{color:var(--muted);min-width:1160px;margin:.7rem 0 0;font-size:.82rem}.stop.sel .dot{background:var(--ink);border-color:var(--ink);color:var(--surface)}.stop-title{color:var(--muted);text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:.3rem;font-size:.72rem;line-height:1.2;display:-webkit-box;overflow:hidden}.stop.sel .stop-title{color:var(--ink);font-weight:600}.pdots{gap:3px;height:8px;margin-top:.4rem;display:flex}.pdots i{border-radius:50%;width:7px;height:7px;display:block}.mat{margin-top:.55rem;line-height:0}.ladder{vertical-align:middle;gap:2px;display:inline-flex}.ladder i{background:var(--track);border-radius:2px;width:14px;height:6px;display:block}.ladder i.on{background:var(--signal)}.ladder.now i.on{background:var(--ink)}.mat.na .ladder i{box-shadow:inset 0 0 0 1px var(--rule);background:0 0}.search{margin-left:auto;position:relative}.search input{border:1px solid var(--rule);background:var(--surface);width:18rem;font:inherit;border-radius:6px;padding:.45rem .7rem;font-size:.9rem}.results{background:var(--surface);border:1px solid var(--rule);z-index:10;border-radius:6px;width:26rem;max-height:60vh;position:absolute;top:2.4rem;right:0;overflow:auto;box-shadow:0 8px 24px #18222d1f}.results[hidden]{display:none}.results a{color:var(--ink);border-bottom:1px solid var(--paper);padding:.5rem .75rem;font-size:.9rem;text-decoration:none;display:block}.results a:hover,.results a.active{background:var(--highlight)}.results .k{color:var(--muted);font-variant-numeric:tabular-nums;margin-right:.4rem;font-size:.8rem}.results .empty{color:var(--muted);padding:.75rem;font-size:.9rem}.tabs{border-bottom:1px solid var(--rule);gap:.25rem;padding:0 2rem;display:flex}.tabs a{color:var(--muted);border-bottom:3px solid #0000;margin-bottom:-1px;padding:.55rem .9rem;font-size:.95rem;text-decoration:none}.tabs a.active{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}.body{grid-template-columns:17rem minmax(0,1fr);gap:2rem;max-width:1400px;padding:1.5rem 2rem 4rem;display:grid}.body:not(:has(aside)){grid-template-columns:minmax(0,1fr)}.body main{min-width:0}aside{font-size:.9rem}aside h3{color:var(--muted);margin:1.1rem 0 .35rem;font-size:.8rem;font-weight:600}aside>div:first-child h3{margin-top:0}aside a{color:var(--ink);border-radius:5px;align-items:baseline;gap:.5rem;padding:.3rem .5rem;text-decoration:none;display:flex}aside a:hover{background:var(--surface)}aside a.on{background:var(--surface);box-shadow:inset 3px 0 0 var(--signal);font-weight:600}aside .n{color:var(--muted);font-variant-numeric:tabular-nums;min-width:2.6rem;font-weight:400}.body h2{font-family:var(--serif);letter-spacing:-.01em;margin:0 0 .4rem;font-size:1.75rem;font-weight:600;line-height:1.2}.body h2 .id{color:var(--muted);font-variant-numeric:tabular-nums;margin-right:.5rem;font-weight:400}.persona-title{align-items:center;gap:.6rem;display:flex}.bigdot{background:var(--pc);border-radius:50%;flex:none;width:14px;height:14px}.who{color:var(--muted);margin:0 0 1rem;font-size:.92rem}.lede{font-family:var(--serif);max-width:44rem;margin:.5rem 0 1rem;font-size:1.1rem;line-height:1.55}.body h4{margin:2rem 0 .6rem;font-size:.95rem}.needs{margin:0;padding:0;list-style:none}.needs li{border-top:1px solid var(--rule);grid-template-columns:9.5rem 1fr;gap:1rem;padding:.85rem 1rem;display:grid}.needs li:first-child{border-top:0}.needs .jt{font-size:.85rem}.needs .jt a{font-weight:600;text-decoration:none}.needs .text{font-family:var(--serif);font-size:1.02rem}.needs .text p{margin:0 0 .4rem}.none-yet{color:var(--muted);font-family:var(--sans);font-size:.9rem}aside .count{color:var(--muted);margin-left:auto;font-size:.8rem;font-weight:400}.participants{flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem;display:flex}.ptag{background:var(--surface);border:1px solid var(--rule);color:var(--ink);white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.1rem .5rem .1rem .4rem;font-size:.82rem;display:inline-flex}.ptag:before{content:"";background:var(--pc);border-radius:50%;width:8px;height:8px}.box{background:var(--surface);border:1px solid var(--rule);border-radius:8px}.empty-box{max-width:44rem;color:var(--muted);margin:0;padding:1rem}.ocards .empty-box{max-width:none}.ocards{gap:1rem;display:grid}.ocard{padding:1rem 1.1rem .6rem}.ohead{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.wid{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem}.otext{font-family:var(--serif);max-width:46rem;margin:.45rem 0 .75rem;font-size:1.1rem;line-height:1.45}.lgrid{border-top:1px solid var(--rule)}.lrow{border-bottom:1px solid var(--rule);grid-template-columns:7rem minmax(0,1fr);align-items:start;gap:1rem;padding:.7rem 0;font-size:.9rem;display:grid}.lrow:last-child{border-bottom:0}.lrow .sl{color:var(--muted);white-space:nowrap;align-items:center;gap:.3rem;display:inline-flex}.lrow .sl b{color:var(--ink);font-weight:600}.lrow.empty .sl b{color:var(--muted);font-weight:500}.lrow .ladder:not(.now) i.on{background:var(--track-strong)}.ltext{color:var(--muted);line-height:1.45}.lrow.reached .ltext{color:var(--ink)}.lslot{border:1px dashed var(--rule);color:var(--muted);border-radius:6px;padding:.45rem .6rem;font-style:italic;display:block}.ledit{width:100%;font:inherit;color:inherit;text-align:left;cursor:text;background:0 0;border:0;margin:0;padding:0;display:block}.ledit:hover:not(:has(.lslot)){background:var(--hover)}.linput{box-sizing:border-box;border:1px solid var(--link);width:100%;font:inherit;color:var(--ink);resize:vertical;border-radius:6px;padding:.45rem .6rem;display:block}.lerror{color:var(--danger);margin-top:.3rem;display:block}.check{background:var(--ink);width:15px;height:15px;color:var(--surface);border-radius:50%;place-items:center;display:inline-grid}.check svg{width:10px;height:10px}.pager{justify-content:space-between;gap:1rem;margin-top:1.25rem;font-size:.9rem;display:flex}.pager a{text-decoration:none}@media (width<=860px){.top,.tabs,.track{padding-left:1rem;padding-right:1rem}.body{grid-template-columns:1fr;padding:1rem}aside{border-top:1px solid var(--rule);order:2;padding-top:1rem}.lrow,.needs li{grid-template-columns:1fr;gap:.4rem}.search{width:100%;margin-left:0}.search input,.results{width:100%}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}main.page.structure{max-width:56rem}main.page.structure h1{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-size:1.6rem;font-weight:600}.mapname{box-sizing:border-box;width:100%;font:inherit;color:inherit;background:0 0;border:1px solid #0000;border-radius:6px;padding:.2rem .4rem}.mapname:hover{border-color:var(--rule)}.mapname:focus{border-color:var(--link);background:var(--surface);outline:none}.cog{color:var(--muted);border-radius:6px;align-self:center;margin-left:-.75rem;padding:.3rem;display:inline-grid}.cog:hover,.cog:focus-visible{background:var(--surface);color:var(--ink)}.titlebar{z-index:5;background:var(--paper);align-items:center;gap:1rem;padding:.5rem 0;display:flex;position:sticky;top:0}.titlebar h1{flex:auto;min-width:0}.titlebar .actions{gap:.5rem;margin:0;display:inline-flex}button.primary{background:var(--ink);color:var(--surface);border:1px solid var(--ink);cursor:pointer;border-radius:6px;padding:.3rem .9rem}button.primary:disabled{opacity:.5;cursor:default}.sphase{margin:0 0 1.25rem;padding:.9rem 1rem}.shead,.jhead{align-items:center;gap:.5rem;display:flex}.shead .tools,.jhead .tools{margin-left:auto}.ptitle,.jtitle{min-width:0;font:inherit;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:6px;flex:auto;padding:.25rem .4rem}.shead .ptitle{flex:0 22rem;font-size:1.05rem;font-weight:600}.jtitle{font-weight:600}.ptitle:hover,.jtitle:hover{border-color:var(--rule)}.ptitle:focus,.jtitle:focus{border-color:var(--link);background:var(--surface);outline:none}.sphase ul{gap:.6rem;margin:.6rem 0 0;padding:0;list-style:none;display:grid}.jcard{background:var(--paper);padding:.6rem .8rem}.sphase.over{box-shadow:0 -3px 0 var(--signal)}.sphase.dragging{opacity:.45}.jcard.over{box-shadow:0 -3px 0 var(--signal)}.jcard.dragging{opacity:.45}.jcard .n{color:var(--muted);font-variant-numeric:tabular-nums;text-decoration:none}.grip{color:var(--muted);cursor:grab;display:inline-grid}.tools{gap:.15rem;display:inline-flex}button.icon{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;padding:.3rem;display:inline-grid}button.icon:hover:not(:disabled){background:var(--surface);border-color:var(--rule);color:var(--ink)}.theme-toggle{z-index:20;background:var(--surface);border-color:var(--rule);position:fixed;bottom:1rem;right:1rem;box-shadow:0 2px 10px #00000026}button.icon:disabled{opacity:.35;cursor:default}button.addjourney{box-sizing:border-box;background:var(--surface);border:1px solid var(--rule);width:100%;color:var(--muted);cursor:pointer;border-radius:8px;justify-content:center;margin-top:.6rem;padding:.4rem .8rem;display:flex}button.addjourney:hover{color:var(--ink);border-color:var(--muted)}button.textbutton{color:var(--link);font:inherit;cursor:pointer;background:0 0;border:0;padding:.3rem 0}.ptoggles{border:0;flex-wrap:wrap;gap:.4rem;margin:.5rem 0 0;padding:0;display:flex}.ptoggle{border:1px solid var(--rule);background:var(--surface);color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:.35rem;padding:.15rem .6rem .15rem .45rem;font-size:.85rem;display:inline-flex}.ptoggle:before{content:"";background:var(--pc);opacity:.45;border-radius:50%;width:8px;height:8px}.ptoggle[aria-pressed=true]{color:var(--ink);border-color:var(--pc);box-shadow:inset 0 0 0 1px var(--pc);font-weight:600}.ptoggle[aria-pressed=true]:before{opacity:1}.confirm{margin:.6rem 0}.confirm .actions{margin:0}.danger{color:var(--danger)}button.addoutcome{box-sizing:border-box;background:var(--surface);border:1px dashed var(--rule);width:100%;color:var(--muted);cursor:pointer;border-radius:8px;justify-content:center;padding:.7rem .8rem;display:flex}button.addoutcome:hover{color:var(--ink);border-color:var(--muted)}.newoutcome .linput{margin:.6rem 0}.pick{position:relative}button.picker{font:inherit;cursor:pointer;font-size:.82rem}button.picker:disabled{cursor:default;opacity:.6}.caret{border:4px solid #0000;border-top-color:var(--muted);border-bottom-width:0;width:0;height:0;margin-left:.15rem}.pmenu{z-index:2;background:var(--surface);border:1px solid var(--rule);border-radius:8px;min-width:12rem;margin:0;padding:.3rem;list-style:none;position:absolute;top:calc(100% + .3rem);left:0;box-shadow:0 4px 14px #0000001f}.pmenu button{width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:.45rem;padding:.35rem .5rem;font-size:.9rem;display:flex}.pmenu button:hover{background:var(--hover)}.pmenu button[aria-checked=true]{font-weight:600}.pdot{background:var(--pc);border-radius:50%;flex:none;width:8px;height:8px}.pnone{color:var(--muted);white-space:normal;max-width:16rem;padding:.3rem;font-size:.85rem}.newactions{align-items:center;gap:1rem;display:flex}.ocard-tools{margin-left:auto}.chain{grid-template-columns:minmax(0,1fr) 5rem minmax(0,1fr) 5rem minmax(0,1fr) 5rem minmax(0,1fr);margin:1.25rem 0 .5rem;display:grid}.cnode{padding:.9rem 1rem 1rem}.cnode h3{font-family:var(--serif);margin:0 0 .4rem;font-size:1.15rem}.cnode p{color:var(--muted);margin:0;font-size:.86rem}.rel{color:var(--muted);text-align:center;flex-direction:column;align-self:start;align-items:center;gap:.3rem;padding-top:1rem;font-size:.74rem;line-height:1.2;display:flex}.rel svg{width:3.4rem;height:10px;color:var(--muted)}.concept{max-width:60rem;margin-top:2.25rem}.concept h3{font-family:var(--serif);margin:0 0 .35rem;font-size:1.3rem}.concept>p{color:var(--muted);max-width:46rem;margin:0 0 .9rem}.concept .ladder:not(.now) i.on{background:var(--track-strong)}.flow{flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.9rem;display:flex}.flow .arrow{color:var(--muted)}.reading{flex-wrap:wrap;align-items:center;gap:2rem;display:flex}.reading dl{grid-template-columns:auto 1fr;align-items:center;gap:.5rem 1rem;margin:0;font-size:.92rem;display:grid}.reading dt{font-weight:600}.reading dd{color:var(--muted);margin:0}@media (width<=1100px){.chain{grid-template-columns:1fr}.rel{flex-direction:row;justify-content:center;padding:.4rem 0}.rel svg{width:1.4rem;transform:rotate(90deg)}}
