.wrap{max-width:1020px;margin:0 auto;padding:0 22px 80px}.kick{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:0;font-size:12px}h1{font-family:var(--sans);letter-spacing:-.025em;text-wrap:balance;margin:16px 0 0;font-size:clamp(2.1rem,5.6vw,3.5rem);font-weight:800;line-height:1.03}h1 .hl{color:var(--accent)}.dek{color:var(--ink-soft);max-width:60ch;margin:18px 0 0;font-size:clamp(1.05rem,2vw,1.2rem)}.dek b{color:var(--ink);font-weight:600}h2{font-family:var(--sans);letter-spacing:-.02em;margin:0;font-size:clamp(1.5rem,3vw,2rem);font-weight:800}.mono{font-family:var(--mono)}header.top{border-bottom:1px solid var(--edge);padding:50px 0 28px}.byline{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.02em;margin-top:16px;font-size:12px}.miniflow{border:1px solid var(--edge);background:var(--sunken);border-radius:14px;flex-direction:column;align-items:center;gap:6px;max-width:320px;margin:28px auto 0;padding:22px;display:flex}.mf-node{font-family:var(--mono);color:var(--ink);background:var(--raised);border:1px solid var(--edge);text-align:center;border-radius:8px;min-width:130px;padding:7px 18px;font-size:.84rem}.mf-node.start{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--edge))}.mf-arr{font-family:var(--mono);color:var(--ink-faint);font-size:.85rem;line-height:1}.mf-loop{font-family:var(--mono);color:var(--accent);margin-top:4px;font-size:.72rem;font-weight:700}.shead{flex-wrap:wrap;align-items:baseline;gap:14px;margin:60px 0 0;display:flex}.shead .n{font-family:var(--mono);color:var(--accent);font-size:.9rem}.shead .sub{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.04em;margin-left:auto;font-size:.72rem}.loopflow{grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;gap:10px;margin-top:26px;display:grid}@media (width<=760px){.loopflow{grid-template-columns:1fr;gap:8px}}.loopcard{background:var(--raised);border:1px solid var(--edge);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;padding:18px 18px 16px;display:flex}.loopcard.review{border-color:color-mix(in srgb,var(--accent) 45%,var(--edge))}.lc-top{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.lc-num{font-family:var(--mono);color:var(--ink-faint);font-size:.72rem}.lc-phase{font-family:var(--sans);letter-spacing:-.01em;font-size:1.02rem;font-weight:800}.lc-tool{font-family:var(--mono);color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);white-space:nowrap;border-radius:999px;margin-left:auto;padding:2px 9px;font-size:.66rem;font-weight:600}.lc-cycle{font-family:var(--mono);color:var(--ink);background:var(--sunken);border-radius:9px;flex-wrap:wrap;align-items:center;gap:6px;padding:9px 11px;font-size:.74rem;display:flex}.lc-cycle .a{color:var(--ink-faint)}.lc-cycle .rep{color:var(--accent);white-space:nowrap;margin-left:auto;font-weight:700}.lc-desc{color:var(--ink-soft);margin:12px 0 0;font-size:.9rem;line-height:1.45}.lc-desc b{color:var(--ink);font-weight:600}.flow-arr{font-family:var(--mono);color:var(--ink-faint);align-self:center;font-size:1.1rem}@media (width<=760px){.flow-arr{justify-self:center;padding:2px 0;transform:rotate(90deg)}}.thread{text-align:center;font-family:var(--serif);color:var(--ink-soft);margin-top:14px;font-size:1rem;font-style:italic}.thread b{color:var(--ink);font-style:normal;font-weight:600}.shipwrap{border:1px solid var(--edge);background:var(--raised);box-shadow:var(--shadow);border-radius:14px;margin-top:18px;overflow:hidden}.ship-hd{font-family:var(--mono);color:var(--ink-faint);border-bottom:1px solid var(--edge-soft);background:color-mix(in srgb,var(--accent) 4%,var(--raised));padding:12px 20px;font-size:.72rem}.ship-hd code{color:var(--ink-soft);background:var(--sunken);border-radius:4px;padding:1px 5px}.shiprow{background:var(--edge);gap:1px;display:flex}@media (width<=560px){.shiprow{flex-direction:column}}.shiptile{background:var(--raised);flex:1;padding:16px 20px}.shiptile .st-name{font-family:var(--sans);font-size:1.06rem;font-weight:800}.shiptile .st-desc{color:var(--ink-soft);margin-top:3px;font-size:.86rem}.shiptile .st-chain{font-family:var(--mono);color:var(--accent);margin-top:9px;font-size:.66rem}.cast{grid-template-columns:1.1fr 1fr 1fr;gap:14px;margin-top:26px;display:grid}@media (width<=820px){.cast{grid-template-columns:1fr}}.castcol{border:1px solid var(--edge);background:var(--raised);border-radius:14px;padding:18px 20px}.castcol.you{border-color:color-mix(in srgb,var(--accent) 50%,var(--edge));background:color-mix(in srgb,var(--accent) 6%,var(--raised));box-shadow:var(--shadow)}.castcol .cc-role{font-family:var(--sans);font-size:1.05rem;font-weight:800}.castcol.you .cc-role{color:var(--accent)}.castcol .cc-tag{font-family:var(--mono);text-transform:uppercase;letter-spacing:.11em;color:var(--ink-faint);margin-top:4px;font-size:.6rem}.castcol ul{margin:13px 0 0;padding:0;list-style:none}.castcol li{color:var(--ink-soft);margin-bottom:7px;padding-left:15px;font-size:.87rem;line-height:1.4;position:relative}.castcol.you li{color:var(--ink)}.castcol li:before{content:"›";color:var(--accent);font-weight:700;position:absolute;left:0}.castcol li b{color:var(--ink);font-weight:600}.tg{margin-bottom:9px}.tg-h{font-family:var(--mono);text-transform:uppercase;letter-spacing:.11em;color:var(--ink-faint);margin-bottom:3px;font-size:.57rem}.tg-c{font-family:var(--mono);color:var(--ink-soft);font-size:.74rem}.brokelist{gap:12px;margin-top:18px;display:grid}.broke{border:1px solid var(--edge);border-left:3px solid color-mix(in srgb,var(--accent) 55%,var(--edge));background:var(--raised);border-radius:0 10px 10px 0;padding:14px 18px}.b-what{color:var(--ink);font-size:.95rem;line-height:1.5}.b-fix{color:var(--ink-soft);margin-top:6px;font-size:.9rem;line-height:1.45}.b-fix:before{content:"→";color:var(--accent);font-family:var(--mono);margin-right:7px}.takeaway{color:var(--ink-soft);max-width:64ch;margin-top:30px;font-size:1.15rem;line-height:1.55}.takeaway b{color:var(--ink);font-weight:600}.endnote{border-top:1px solid var(--edge);color:var(--ink-soft);margin-top:44px;padding-top:22px;font-size:.9rem}.endnote a{color:var(--accent);font-weight:600;text-decoration:none}.endnote a:hover{text-decoration:underline}.startintro{color:var(--ink-soft);max-width:64ch;margin-top:14px;font-size:1.02rem}.reslist{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px;display:grid}@media (width<=820px){.reslist{grid-template-columns:1fr}}.rescard{border:1px solid var(--edge);background:var(--raised);border-radius:14px;padding:18px 20px}.rescard .rc-h{font-family:var(--sans);font-size:1rem;font-weight:800}.rescard .rc-sub{color:var(--ink-soft);margin-top:4px;font-size:.85rem;line-height:1.4}.rescard .rc-links{flex-wrap:wrap;gap:6px;margin-top:13px;display:flex}.rescard .rc-links a,.rescard .rc-links .plain{font-family:var(--mono);white-space:nowrap;border-radius:7px;padding:4px 9px;font-size:.72rem;text-decoration:none}.rescard .rc-links a{color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.rescard .rc-links a:hover{background:color-mix(in srgb,var(--accent) 16%,transparent)}.rescard .rc-links .plain{color:var(--ink-faint);border:1px solid var(--edge);background:0 0}.startnote{font-family:var(--serif);color:var(--ink);max-width:64ch;margin-top:24px;font-size:1.08rem;font-style:italic;line-height:1.5}.startnote b{color:var(--accent);font-style:normal;font-weight:600}
