: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:220px;color:var(--ls-paper);flex-shrink:0;padding:1.5rem 1rem}.wordmark{font-family:var(--ls-font-sans);letter-spacing:-.01em;color:var(--ls-paper);flex-direction:column;margin-bottom:.35rem;font-weight:700;line-height:.85;text-decoration:none;display:inline-flex}.wordmark .line1,.wordmark .line2{text-transform:uppercase;font-size:.95rem}.wordmark .underline{background:var(--ls-lemon);border-radius:var(--ls-radius-sm);width:60%;height:3px;margin-top:.25rem;display:block}.nav .portal-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ls-sand);opacity:.7;margin:0 0 1.5rem;font-size:.7rem}.nav a.navlink{color:var(--ls-sand);padding:.4rem 0;font-size:.9rem;text-decoration:none;display:block}.nav a.navlink:hover{color:var(--ls-paper)}.nav a.navlink.active{color:var(--ls-lemon)}.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}.badge.status-approved,.badge.status-published,.badge.status-synced{background:var(--ls-lemon)}.badge.status-rejected,.badge.status-error{color:#8a2e22;background:#f0d9d4}.badge.status-pending_review,.badge.status-pending{background:var(--ls-sea)}.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.stacked{flex-direction:column;gap:.75rem;max-width:480px;margin-top:1rem;display:flex}form.inline{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1rem;display:flex}label{margin-bottom:.25rem;font-size:.8rem;font-weight:600;display:block}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);width:100%;padding:.4rem .5rem}textarea{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:.5rem 1rem}button.secondary{background:var(--ls-sand);color:var(--ls-ink)}.error{color:#8a2e22;margin-top:.5rem;font-size:.85rem}.notice{color:var(--ls-ink);opacity:.7;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}
