:root{--ls-paper:#faf9f6;--ls-sand:#f2eee6;--ls-lemon:#f6e2a6;--ls-sea:#b7c7d6;--ls-ink:#111;--ls-radius-none:0px;--ls-radius-sm:2px;--ls-radius-md:6px;--ls-space-base:8px;--ls-font-sans:"Helvetica Neue", Helvetica, Arial, sans-serif}
*{box-sizing:border-box}body{font-family:var(--ls-font-sans);color:var(--ls-ink);background:var(--ls-paper);margin:0}a{color:var(--ls-ink)}.shell{min-height:100vh;display:flex}.nav{background:var(--ls-ink);width:200px;color:var(--ls-paper);flex-shrink:0;padding:1.5rem 1rem}.nav h1{font-size:1rem;font-family:var(--ls-font-sans);margin:0 0 1.5rem}.nav a{color:var(--ls-sand);padding:.4rem 0;text-decoration:none;display:block}.nav a:hover{color:var(--ls-paper)}.main{flex:1;max-width:1100px;padding:2rem}table{border-collapse:collapse;background:var(--ls-paper);width:100%;margin-top:1rem}th,td{text-align:left;border-bottom:1px solid var(--ls-ink);padding:.5rem .75rem;font-size:.9rem}th{background:var(--ls-sand)}.badge{border-radius:var(--ls-radius-sm);background:var(--ls-sand);color:var(--ls-ink);padding:.1rem .5rem;font-size:.75rem;display:inline-block}.stats{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.stat{background:var(--ls-paper);border:1px solid var(--ls-ink);border-radius:var(--ls-radius-md);min-width:120px;padding:1rem 1.25rem}.stat .n{font-size:1.6rem;font-weight:700;display:block}.stat .label{color:var(--ls-ink);opacity:.6;text-transform:uppercase;font-size:.75rem}form.inline{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1rem;display:flex}input,select,textarea{border:1px solid var(--ls-ink);border-radius:var(--ls-radius-none);font-size:.9rem;font-family:var(--ls-font-sans);background:var(--ls-paper);color:var(--ls-ink);padding:.4rem .5rem}textarea{width:100%;min-height:4rem}button{border-radius:var(--ls-radius-none);background:var(--ls-ink);color:var(--ls-paper);cursor:pointer;font-size:.85rem;font-family:var(--ls-font-sans);border:none;padding:.4rem .9rem}button.secondary{background:var(--ls-sand);color:var(--ls-ink)}button.danger{background:#8a2e22}.error{color:#8a2e22;margin-top:.5rem;font-size:.85rem}.card{background:var(--ls-paper);border:1px solid var(--ls-ink);border-radius:var(--ls-radius-md);margin-top:1rem;padding:1.25rem}
