:root{
  --sidebar-w: 250px;
  --brand: #14532d;
  --brand-light: #e8f3ec;
}
body{ background:#f4f6f8; font-family: -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
.app-shell{ display:flex; min-height:100vh; }
.sidebar{
  width: var(--sidebar-w); background:#0f2417; color:#dce8e0; flex-shrink:0;
  position:fixed; top:0; bottom:0; left:0; overflow-y:auto; z-index:1030;
  transition: transform .2s ease;
}
.sidebar-brand{ display:flex; align-items:center; gap:.5rem; padding:1.1rem 1.2rem; font-weight:700; font-size:1.05rem; color:#fff; border-bottom:1px solid rgba(255,255,255,.08); }
.sidebar-nav{ padding:.5rem 0 2rem; }
.sidebar-nav a{ display:flex; align-items:center; gap:.6rem; color:#c7d7cd; text-decoration:none; padding:.55rem 1.2rem; font-size:.92rem; }
.sidebar-nav a:hover{ background:rgba(255,255,255,.06); color:#fff; }
.sidebar-nav a.active{ background:var(--brand); color:#fff; font-weight:600; }
.nav-heading{ text-transform:uppercase; font-size:.7rem; letter-spacing:.06em; color:#7c9184; padding:1rem 1.2rem .3rem; }
.main-area{ margin-left: var(--sidebar-w); flex:1; display:flex; flex-direction:column; min-width:0; }
.topbar{ background:#fff; border-bottom:1px solid #e5e7eb; padding:.8rem 1.5rem; display:flex; align-items:center; gap:1rem; position:sticky; top:0; z-index:10; }
.page-title{ font-size:1.15rem; font-weight:700; margin:0; flex:1; }
.content{ padding:1.5rem; }
.card{ border:1px solid #e6e9ec; border-radius:.6rem; }
.stat-card{ border-radius:.7rem; padding:1.1rem 1.3rem; color:#fff; }
.stat-card h3{ font-size:1.9rem; font-weight:800; margin:0; }
.stat-card span{ font-size:.85rem; opacity:.9; }
.bg-brand1{ background:linear-gradient(135deg,#14532d,#1e7a44); }
.bg-brand2{ background:linear-gradient(135deg,#1e3a8a,#2f5bd6); }
.bg-brand3{ background:linear-gradient(135deg,#7c2d12,#c2410c); }
.bg-brand4{ background:linear-gradient(135deg,#4c1d95,#7c3aed); }
@media print{
  .no-print{ display:none !important; }
    body{ background:#fff; }
}
@media (max-width: 991px){
  .sidebar{ transform: translateX(-100%); }
  .sidebar.show{ transform: translateX(0); }
  .main-area{ margin-left:0; }
}

/* ---- Admin: edition workspace ---- */
.sec-card{ border-left:4px solid var(--brand); }
.sec-card .sec-head{ background:var(--brand-light); padding:.6rem .9rem; display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; }
.art-row, .mcq-row{ display:flex; align-items:center; gap:.6rem; padding:.55rem .9rem; border-top:1px solid #eef0f2; }
.art-row .art-thumb{ width:44px; height:44px; object-fit:cover; border-radius:.35rem; background:#eef0f2; flex-shrink:0; }
.art-row .art-title{ flex:1; min-width:0; font-weight:600; }
.wc-badge{ font-size:.72rem; }
.btn-icon{ padding:.15rem .45rem; }
.hl-input{ border-left:3px solid var(--brand); }
.img-preview{ max-width:160px; max-height:160px; border:1px solid #dde2e6; border-radius:.4rem; padding:3px; background:#fff; }
