:root{
  --bg:#f7f3ec;
  --card:#ffffff;
  --line:#e8dccf;
  --text:#2f231d;
  --muted:#72655d;
  --brown:#40281c;
  --gold:#d7a236;
  --green:#2f7a43;
  --red:#a33d2e;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{text-decoration:none;color:inherit}
.panel-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}
.sidebar{background:var(--brown);color:#fff;padding:28px 20px;display:flex;flex-direction:column;gap:26px}
.sidebar-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.1em;opacity:.7}
.sidebar-brand{font-size:30px;font-weight:900;line-height:1.05;margin-top:8px}
.sidebar-sub{margin-top:8px;opacity:.7;line-height:1.5}
.sidebar-nav{display:grid;gap:10px}
.sidebar-nav a{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.07)}
.sidebar-nav a.is-active,.sidebar-nav a:hover{background:rgba(255,255,255,.16)}
.content{padding:28px}
.topbar h1{margin:0 0 20px;font-size:34px}
.flash{padding:14px 16px;border-radius:14px;margin-bottom:18px;font-weight:700}
.flash.success{background:#e7f7ec;color:var(--green)}
.flash.error{background:#fde8e4;color:var(--red)}
.grid{display:grid;gap:18px}
.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 12px 30px rgba(49,34,24,.04)}
.card h2{margin-top:0}
.stat-value{font-size:38px;font-weight:900}
.muted{color:var(--muted)}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{padding:14px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{font-size:13px;color:var(--muted)}
label{display:block;font-weight:700;margin-bottom:8px}
input,select,textarea{width:100%;padding:13px 14px;border-radius:14px;border:1px solid var(--line);font:inherit;background:#fff;color:var(--text)}
textarea{min-height:140px;resize:vertical}
button,.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border:0;border-radius:14px;background:var(--gold);color:#231812;font-weight:800;cursor:pointer}
.btn.secondary{background:#fff;border:1px solid var(--line);color:var(--text)}
.toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:20px}
.pills{display:flex;flex-wrap:wrap;gap:8px}
.pill{display:inline-flex;padding:7px 12px;border-radius:999px;background:#f6ede2;font-size:12px;font-weight:800}
.badge{display:inline-flex;padding:7px 10px;border-radius:999px;background:#f6ede2;font-size:12px;font-weight:800}
.badge.active{background:#e7f7ec;color:var(--green)}
.badge.draft{background:#fff6df;color:#765200}
.badge.template{background:#ece8ff;color:#4e3c9c}
.badge.archived{background:#eee;color:#555}
.badge.ended{background:#fde8e4;color:var(--red)}
.help{font-size:13px;color:var(--muted);line-height:1.6;margin-top:6px}
hr.sep{border:0;border-top:1px solid var(--line);margin:22px 0}
.login-box{max-width:460px;margin:80px auto}
.small{font-size:12px;color:var(--muted)}
.row-actions{display:flex;gap:8px;flex-wrap:wrap}
.kv{display:grid;grid-template-columns:180px 1fr;gap:10px 14px}
.template-card h3{margin:0 0 8px}
.preview-box{padding:16px;border-radius:18px;background:#fbf8f4;border:1px dashed var(--line)}
@media (max-width: 1020px){
  .panel-shell{grid-template-columns:1fr}
  .grid.cols-2,.grid.cols-3{grid-template-columns:1fr}
  .kv{grid-template-columns:1fr}
}
