:root{--sand:#e7e0d2;--sand2:#ddd4c2;--cream:#faf6ee;--cream-edge:#efe8da;--ink:#2b2722;--ink2:#5f574a;--ink3:#8c8474;--hair:#ddd3c0;--accent:#b1542c;--sage:#6e7c54;--ochre:#c08a3e;--slate:#6b7a86;--gold:#c9a44a;--grey:#9b9382;--r:18px;--shadow:0 1px 0 hsla(0,0%,100%,.7) inset,0 12px 34px -18px rgba(43,39,34,.5);--font-display:"Fraunces",Georgia,serif;--font-text:"Hanken Grotesk",system-ui,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:radial-gradient(120% 80% at 50% -10%,#efe9dc 0,var(--sand) 55%,var(--sand2) 100%) fixed;font-family:var(--font-text);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.5}.wrap{max-width:460px;margin:0 auto;padding:26px 14px 56px}.top{display:flex;align-items:baseline;justify-content:space-between;margin:0 4px 4px}.kicker{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink3)}.lead{font-size:13px;color:var(--ink2);margin:0 4px 16px}.lead b{color:var(--ink)}.tabs{display:flex;gap:6px;margin:0 0 16px}.tabs button{flex:1 1;font-family:var(--font-text);font-size:12.5px;font-weight:600;color:var(--ink2);background:#f1e9d9;border:1px solid var(--cream-edge);border-radius:11px;padding:9px 0;cursor:pointer;transition:.2s}.tabs button.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}.card{background:linear-gradient(180deg,#fbf7ef,#f3ecdc);border:1px solid var(--cream-edge);border-radius:var(--r);box-shadow:var(--shadow);padding:15px 16px 16px;margin-bottom:13px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:7px}.card-title{font-family:var(--font-display);font-weight:600;font-size:17px;color:var(--ink);margin:0}.card-body{font-size:13.5px;color:var(--ink2);white-space:pre-wrap}.card-body b{color:var(--ink)}.card.repair{background:#fbf6ec}.card.repair .card-title{color:var(--accent)}.repair-body{font-family:var(--font-display);font-style:italic;font-size:13.5px;color:var(--ink);border-left:3px solid var(--hair);padding-left:11px}.badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--ink3);white-space:nowrap;font-weight:600;letter-spacing:.02em}.dot{width:11px;height:11px;border-radius:50%;display:inline-block}.dot.green{background:var(--sage)}.dot.yellow{background:var(--ochre)}.dot.white{background:var(--grey)}.dot.abstained{background:transparent;border:2px solid var(--ink3);border-radius:3px}.ladder-row{display:flex;align-items:flex-start;gap:9px;padding:3px 0}.ladder-code{font-size:10px;color:var(--ink3);width:20px;flex:none;padding-top:2px;letter-spacing:.05em}.ladder-val{font-size:13px;color:var(--ink2)}.ladder-val b{color:var(--ink)}.ladder-div{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin:4px 0 2px 29px}.jump{margin-top:10px;background:#fbf1e9;border-left:3px solid var(--accent);border-radius:8px;padding:8px 11px;font-size:12px;color:var(--ink2)}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.chip{font-size:12px;border-radius:20px;padding:4px 11px;border:1px solid var(--cream-edge);color:var(--ink2);background:#fffdf8}.chip.costly{border-color:#e3b9a3;color:var(--accent)}.meter{height:6px;background:#ece4d3;overflow:hidden;margin:8px 0}.meter,.meter i{border-radius:6px}.meter i{display:block;height:100%;background:linear-gradient(90deg,var(--ochre),var(--accent))}.meter-row{display:flex;justify-content:space-between;font-size:11px;color:var(--ink3)}.seesaw{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink2);margin-top:8px}.seesaw .bar{flex:1 1;height:6px;border-radius:6px;background:#ece4d3;position:relative}.seesaw .bar i{position:absolute;top:-3px;width:12px;height:12px;border-radius:50%;background:var(--accent);transform:translateX(-50%)}.roles{display:flex;gap:10px}.roles .col{flex:1 1;background:#fffdf8;border:1px solid var(--cream-edge);border-radius:12px;padding:10px 11px}.roles .col h4{margin:0 0 5px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}.roles .col div{font-size:12.5px;color:var(--ink2);padding:1px 0}.panel{background:linear-gradient(180deg,#fbf7ef,#f3ecdc);border:1px solid var(--cream-edge);border-radius:20px;box-shadow:var(--shadow);padding:14px}.legend{display:flex;gap:14px;justify-content:center;margin-top:10px;font-size:10.5px;color:var(--ink3)}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:18px;border-top:2px solid #b58a52;display:inline-block}.legend i.m{border-top:2px dashed var(--slate)}.edge{fill:none;transition:stroke-width .5s ease,opacity .5s ease}.edge.support{stroke:#b58a52}.edge.masking{stroke:var(--slate);stroke-dasharray:5 5}.gnode circle{transition:r .5s cubic-bezier(.2,.7,.2,1),opacity .5s ease;cursor:pointer}.gnode text{font-family:var(--font-text);font-size:9px;font-weight:600;fill:var(--ink2);text-anchor:middle;pointer-events:none}.dyn-item{background:#fffdf8;border:1px solid var(--cream-edge);border-radius:13px;padding:11px 13px;margin-bottom:9px;font-size:13px;color:var(--ink2)}.dyn-item b{color:var(--ink)}.foot{text-align:center;font-size:11px;color:var(--ink3);margin-top:26px;line-height:1.7}.foot .fb{font-family:var(--font-display);font-weight:600;color:var(--ink2);font-size:14px}.foot a{color:var(--accent);text-decoration:none}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.rise{animation:rise .55s cubic-bezier(.2,.7,.2,1) both}@media (prefers-reduced-motion:reduce){.rise{animation:none}.edge,.gnode circle{transition:none}}