:root{--ks-ivory:#f5f1ea;--ks-bone:#eae3d7;--ks-stone:#c9bfb0;--ks-taupe:#8a8071;--ks-graphite:#2a2723;--ks-coral:#c77b4f;--ks-brass:#a8895c;--ks-ok:#3e7a5c;--ks-warn:#b85c2e;--ks-danger:#a03a2e;--font-serif:Georgia, "Times New Roman", serif;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:Menlo, Consolas, monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-sans);background:var(--ks-ivory);color:var(--ks-graphite);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}a{color:var(--ks-coral);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:14px}.kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--ks-taupe);font-size:11px}.serif{font-family:var(--font-serif);letter-spacing:-.3px;font-weight:300}.tabnum{font-variant-numeric:tabular-nums}.btn{border-radius:var(--radius-md);border:1px solid var(--ks-stone);color:var(--ks-graphite);letter-spacing:.14em;text-transform:uppercase;background:#fff;align-items:center;gap:8px;padding:10px 18px;font-size:12px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.btn:hover{border-color:var(--ks-graphite)}.btn--coral{background:var(--ks-coral);border-color:var(--ks-coral);color:#fff}.btn--coral:hover{background:#b46d44;border-color:#b46d44}.btn--ghost{background:0 0}.btn--danger{color:var(--ks-danger);border-color:var(--ks-danger)}.btn--danger:hover{background:#fef0ee}.btn:disabled{opacity:.5;cursor:not-allowed}.card{border:1px solid var(--ks-stone);border-radius:var(--radius-md);background:#fff;padding:20px}.input,.textarea,.select{border:1px solid var(--ks-stone);border-radius:var(--radius-sm);width:100%;color:var(--ks-graphite);background:#fff;padding:10px 12px}.input:focus,.textarea:focus,.select:focus{border-color:var(--ks-graphite);outline:none}.textarea{resize:vertical;min-height:90px}.pill{border-radius:var(--radius-pill);background:var(--ks-bone);color:var(--ks-taupe);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:6px;padding:4px 10px;font-size:10px;font-weight:600;display:inline-flex}.pill--ok{color:var(--ks-ok);background:#e5f0e9}.pill--warn{color:var(--ks-warn);background:#fef3e0}.pill--danger{color:var(--ks-danger);background:#f4e1de}.pill--muted{background:var(--ks-bone);color:var(--ks-taupe)}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--ks-stone);padding:10px 12px;font-size:13px}th{letter-spacing:.15em;text-transform:uppercase;color:var(--ks-taupe);font-size:10px;font-weight:600}tbody tr{cursor:pointer}tbody tr:hover{background:var(--ks-bone)}.shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--ks-stone);background:#fff;flex-direction:column;gap:4px;padding:24px 16px;display:flex}.sidebar__brand{border-bottom:1px solid var(--ks-stone);margin-bottom:16px;padding:0 8px 16px}.sidebar__brand-name{font-family:var(--font-serif);color:var(--ks-graphite);font-size:22px;font-weight:400}.sidebar__brand-sub{letter-spacing:.2em;text-transform:uppercase;color:var(--ks-taupe);margin-top:2px;font-size:10px}.nav-link{border-radius:var(--radius-sm);color:var(--ks-graphite);align-items:center;gap:10px;padding:9px 12px;font-size:13px;text-decoration:none;transition:background .12s;display:flex}.nav-link:hover{background:var(--ks-bone);text-decoration:none}.nav-link.is-active{background:var(--ks-graphite);color:var(--ks-ivory)}.sidebar__footer{border-top:1px solid var(--ks-stone);margin-top:auto;padding:12px 8px}.main{max-width:1200px;padding:32px 40px}.page-title{font-size:28px;font-family:var(--font-serif);letter-spacing:-.3px;margin:0 0 4px;font-weight:300}.page-sub{color:var(--ks-taupe);margin:0 0 24px;font-size:13px}.row-actions{align-items:center;gap:8px;display:flex}.empty{text-align:center;color:var(--ks-taupe);padding:40px}
