:root{color:#221c16;background:#f3ecdf;font-family:Iowan Old Style,Palatino,Palatino Linotype,Georgia,serif;line-height:1.45}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{border:1px solid #221c16;background:#fffaf3;color:inherit;border-radius:999px;padding:.45rem .9rem;cursor:pointer}button.primary{background:#1d6b45;color:#f7f3ea;border-color:#1d6b45}button.danger{background:#fffaf3;color:#8d3a2f;border-color:#8d3a2f}button:disabled{opacity:.5;cursor:default}input,textarea{width:100%;border:1px solid #cbbba6;background:#fffaf3;border-radius:.6rem;padding:.55rem .7rem}textarea{min-height:7rem;resize:vertical}a{color:inherit}.shell{min-height:100vh}.top{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e2d6c6;position:sticky;top:0;background:#f3ecdff0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.word{font-size:1.4rem;letter-spacing:-.04em;text-decoration:none}.nav{display:flex;gap:.5rem;align-items:center}.nav a[aria-current=page]{background:#221c16;color:#f7f3ea}.page{padding:1.25rem;max-width:1100px;margin:0 auto}.gate,.empty{max-width:36rem;margin:4rem auto;padding:1.5rem;background:#fffaf3;border:1px solid #e2d6c6;border-radius:1.2rem}.stack{display:grid;gap:.75rem}.row{display:flex;gap:.5rem;flex-wrap:wrap}.projects{display:grid;gap:.75rem}.project-card{display:block;padding:1rem 1.1rem;background:#fffaf3;border:1px solid #e2d6c6;border-radius:1rem;text-decoration:none}.split{display:grid;grid-template-columns:minmax(16rem,22rem) 1fr;gap:1rem;align-items:start}.panel{background:#fffaf3;border:1px solid #e2d6c6;border-radius:1rem;padding:.85rem}.tree,.tree ul{list-style:none;margin:0;padding:0}.tree ul{margin-left:.9rem;border-left:1px solid #e2d6c6;padding-left:.55rem}.tree button{width:100%;text-align:left;border-radius:.6rem;border-color:transparent;background:transparent}.tree button[aria-current=true]{background:#efe4d2;border-color:#e2d6c6}.muted{color:#6d6256;font-family:Avenir Next,Segoe UI,sans-serif;font-size:.92rem}.badge{display:inline-block;border-radius:999px;padding:.1rem .5rem;background:#efe4d2;font-family:Avenir Next,Segoe UI,sans-serif;font-size:.78rem}.error{color:#8d3a2f}.reviews{display:grid;gap:.75rem}.review{display:grid;gap:.55rem}.diff{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.diff p{margin:.3rem 0 0;white-space:pre-wrap}@media(max-width:720px){.split,.diff{grid-template-columns:1fr}.top{align-items:flex-start;flex-direction:column}.page{padding:.85rem}}
