:root{
  --green:#1a6b4a;--green-mid:#2d8a63;--green-lt:#e6f4ee;
  --blue:#1e4d8c;--blue-lt:#e8f0fb;
  --amber:#b45309;--amber-lt:#fef3c7;
  --red:#be123c;--red-lt:#ffe4e6;
  --gray-100:#f8f9fa;--gray-200:#e9ecef;--gray-300:#dee2e6;
  --gray-600:#6c757d;--gray-700:#495057;--gray-800:#343a40;--gray-900:#212529;
  --shadow-sm:0 1px 3px rgba(0,0,0,.08);
  --radius:10px;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--gray-900);background:#fbfcfe;font-size:15px}
button,input,textarea,select{font:inherit}
#topnav{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--gray-200);box-shadow:var(--shadow-sm)}
.nav-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:16px;padding:0 24px;overflow-x:auto}
.nav-brand{font-weight:700;font-size:15px;color:var(--green);white-space:nowrap;padding:16px 0}
.nav-tabs{display:flex}
.nav-tab{padding:18px 12px;font-size:13px;font-weight:500;color:var(--gray-600);cursor:pointer;background:none;border:none;border-bottom:2px solid transparent}
.nav-tab:hover,.nav-tab.active{color:var(--green)}
.nav-tab.active{border-bottom-color:var(--green)}
.nav-user{margin-left:auto;display:flex;align-items:center;gap:10px;color:var(--gray-600);font-size:13px;white-space:nowrap}
.section-wrap{max-width:1180px;margin:0 auto;padding:36px 24px 80px}
.page{display:none}
.page.active{display:block}
h1{font-size:26px;margin:0 0 8px}
.lede,.muted{color:var(--gray-600);line-height:1.5}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}
input,textarea,select{width:100%;padding:10px 12px;border:1px solid var(--gray-300);border-radius:8px;background:#fff}
label{display:block;font-weight:600;margin:0 0 6px}
.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:8px;font-weight:600;cursor:pointer;border:none}
.btn-primary{background:var(--green);color:#fff}
.btn-primary:hover{background:var(--green-mid)}
.btn-outline{background:#fff;color:var(--green);border:1.5px solid var(--green)}
.btn-danger{background:var(--red);color:#fff}
.btn-ghost{background:var(--gray-100);color:var(--gray-700);border:1px solid var(--gray-200)}
.btn-sm{padding:6px 12px;font-size:13px}
.btn:disabled{opacity:.55;cursor:not-allowed}
.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius);overflow:hidden}
.table th,.table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--gray-200);vertical-align:top}
.table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-600);background:var(--gray-100)}
.table tr:last-child td{border-bottom:none}
.table a{color:var(--blue);cursor:pointer}
.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11.5px;font-weight:600}
.badge-submitted,.badge-needs_info,.badge-in_review{background:var(--amber-lt);color:var(--amber)}
.badge-published{background:var(--green-lt);color:var(--green)}
.badge-declined{background:var(--red-lt);color:var(--red)}
.badge-archived,.badge-restore_pending{background:var(--blue-lt);color:var(--blue)}
.badge-active{background:var(--green-lt);color:var(--green)}
.badge-invited{background:var(--amber-lt);color:var(--amber)}
.badge-disabled{background:var(--gray-200);color:var(--gray-700)}
.card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm)}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.detail-meta{color:var(--gray-600);margin:0 0 20px;line-height:1.5}
.detail-section{margin:28px 0}
.detail-section h2{font-size:13px;margin:0 0 12px;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-600)}
.kv{display:grid;grid-template-columns:minmax(140px,220px) 1fr;gap:8px 20px;margin:0}
.kv dt{color:var(--gray-600);font-weight:600;font-size:13px}
.kv dd{margin:0;white-space:pre-wrap;word-break:break-word;line-height:1.5}
.kv.nested{grid-template-columns:minmax(120px,180px) 1fr;margin:6px 0;padding:10px 12px;background:var(--gray-100);border-radius:8px}
.prose{white-space:pre-wrap;line-height:1.55;margin:0}
.queue-block{margin:28px 0}
.queue-block h2{font-size:18px;margin:0 0 6px}
.filters{display:grid;grid-template-columns:140px 180px 1fr auto;gap:10px;align-items:end;margin:16px 0 20px}
.filters .btn{height:42px}
.reason-box{margin-top:18px;max-width:720px}
.reason-box textarea{margin-top:6px}
.audit-payload{font-size:13px;color:var(--gray-700);max-width:480px;white-space:pre-wrap}
.muted{font-size:13px}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;margin:20px 0}
.detail-grid p{margin:0}
.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(140deg,#0f4a32 0%,#1a4a6b 100%)}
.auth-card{width:min(440px,100%);background:#fff;border-radius:16px;padding:32px;box-shadow:0 8px 28px rgba(0,0,0,.13)}
.brand{color:var(--green);font-weight:700;margin:0 0 8px}
.status{min-height:1.4em;color:var(--gray-600);font-size:14px}
.banner{background:var(--red-lt);color:var(--red);padding:10px 14px;border-radius:8px}
.empty{padding:28px;text-align:center;color:var(--gray-600);background:#fff;border:1px dashed var(--gray-300);border-radius:var(--radius)}
@media (max-width:800px){
  .detail-grid,.filters,.kv{grid-template-columns:1fr}
  .nav-user{display:none}
}
