:root {
  --paper:    #2a1647;
  --paper2:   #23133a;
  --paper3:   #1f1232;
  --white:    #23133a;
  --ink:      #f6f6f6;
  --ink2:     #ecebe9;
  --ink3:     #f0f8ff;
  --ink4:     #eeefef;
  --ink5:     #f0f8ff;
  --rule:     #3a1c63;

  --laps:     #883CF0;
  --laps-lt:  #b43ff31f;
  --laps-md:  #883CF0;
  --laps-bg:  #1e1a2036;

  --pm:       #b33ff3;
  --pm-lt:    #b43ff31f;
  --pm-md:    #b33ff3;
  --pm-bg:    #1b181c36;

  --warn:     #ad3ef2;
  --warn-lt:  #b43ff31f;
  --warn-bg:  #1b181c36;

  --amber:    #9f3df1;
  --amber-lt: #b43ff31f;
  --amber-bg: #1b181c36;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }

.laps-vs-privilege-manager-guide {
  background: #191127;
  color: var(--ink);
  font-size: 14px;
  line-height: 1.65;
  overflow-x: hidden;
  position: relative;
}

/* Subtle paper texture */
.laps-vs-privilege-manager-guide::after {
  content: '';
  position: absolute; inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");
  pointer-events: none; z-index: 1;
}

/* ── LAYOUT ── */
.shell { display: flex; min-height: 100vh; }

/* ── SIDEBAR ── */
.sidebar {
  width: 272px; min-width: 272px;
  background: #180f26;
  position: sticky; top: 0; left: 0; bottom: 0;
  overflow-y: auto; z-index: 1;
  display: flex; flex-direction: column;
}
.sidebar::-webkit-scrollbar { width: 3px; }
.sidebar::-webkit-scrollbar-thumb { background: #23133a; }

.sb-head {
  padding: 28px 26px 22px;
  border-bottom: 1px solid #3a1c63;
}

.sb-vs {
  display: flex; align-items: center; gap: 10px; margin-bottom: 12px;
}

.sb-product {
   font-weight: 700; 
  font-size: 13px;
}
.sb-product.laps { color: var(--laps-md); }
.sb-product.pm   { color: var(--pm-md); }

.sb-divider {
  width: 1px; height: 20px; background: #5e309d;
}

.sb-vs-text {
   font-size: 10px; font-weight: 600;
   text-transform: uppercase;
  color: #f0f8ff;
}

.sb-title {
   font-size: 15px; font-weight: 700;
  color: #f5f1ea; line-height: 1.3;
}

.sb-sub {
   font-size: 10px; font-weight: 400;
   color: #f0f8ff; margin-top: 5px;
  text-transform: uppercase;
}

/* Score tracker */
.sb-score {
  padding: 16px 26px;
  border-bottom: 1px solid #3a1c63;
  display: flex; gap: 16px;
}

.score-block { flex: 1; text-align: center; }
.score-val {
   font-size: 28px; font-weight: 900;
  line-height: 1; display: block; margin-bottom: 3px;
}
.score-val.l { color: var(--laps-md); }
.score-val.p { color: var(--pm-md); }
.score-lbl {  font-size: 9px; font-weight: 500;  text-transform: uppercase; color: #f2ebe5; }

.score-sep { width: 1px; background: #222122; margin: 4px 0; }

/* Nav */
nav { padding: 12px 0; flex: 1; }

.nav-sec-lbl {
   font-size: 9px; font-weight: 600;
   text-transform: uppercase;
  color: #ffffff; padding: 10px 26px 4px;
}

.nl {
  display: flex; align-items: center; gap: 10px;
  padding: 8px 26px; cursor: pointer;
  border-left: 2px solid transparent;
  transition: all 0.15s; color: #efedec;
   font-size: 13px; font-weight: 500;
  
}
.nl:hover { color: #cdc7c0; background: #23133a9f; }
.nl.active { color: #fff; border-left-color: var(--pm-md); background: #23133a; }

.nl-num { font-size: 9px; color: #ffffff; min-width: 18px; font-weight: 400; }
.nl.active .nl-num { color: #ba20e1; }

.nl-pip {
  width: 14px; height: 14px; border-radius: 50%;
  border: 1px solid #3a3530; flex-shrink: 0; margin-left: auto;
  display: flex; align-items: center; justify-content: center;
  font-size: 8px; font-weight: 700;
  transition: all 0.2s;
}
.nl-pip.done { background: var(--pm); border-color: var(--pm); color: #fff; }

/* ── MAIN ── */
.main { flex: 1; height: 100vh; overflow-y: auto; }

/* Topbar */
.topbar {
  background: #180f26; border-bottom: 2px solid var(--rule);
  padding: 11px 52px; display: flex; align-items: center; justify-content: space-between;
  position: sticky; top: 0; z-index: 1;
}

.tb-crumb {
   font-size: 12px; font-weight: 500;
   color: var(--ink3);
  display: flex; align-items: center; gap: 8px; text-transform: uppercase;
}
.tb-crumb span { color: var(--ink); }

.tb-badges { display: flex; gap: 8px; }

.badge {
   font-size: 10px; font-weight: 600;
  padding: 3px 10px;  text-transform: uppercase;
  border-radius: 2px;
}
.badge-laps { background: var(--laps-bg); border: 1px solid var(--laps-md); color: var(--laps); }
.badge-pm   { background: var(--pm-bg);   border: 1px solid var(--pm-md);   color: var(--pm); }
.badge-warn { background: var(--warn-lt); border: 1px solid #1f1232; color: var(--warn); }

/* ── PAGES ── */
.laps-vs-privilege-manager-guide .page { display: none; padding: 52px 52px 80px; max-width: 1000px; animation: lift .3s ease; }
.laps-vs-privilege-manager-guide .page.active { display: block; }

@keyframes lift {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ── SECTION HEADER ── */
.pg-kicker {
   font-size: 11px; font-weight: 700;
   text-transform: uppercase;
  color: var(--ink4); margin-bottom: 8px;
  display: flex; align-items: center; gap: 10px;
}
.pg-kicker::before { content: ''; width: 24px; height: 2px; background: var(--rule); display: inline-block; }

.pg-title {
   font-size: clamp(30px, 4vw, 46px);
  font-weight: 900; line-height: 1.1; color: var(--ink);
  margin-bottom: 14px;
}
.pg-title em { font-style: italic; color: var(--pm); }
.pg-title .laps-em { font-style: italic; color: var(--laps); }

.pg-lead {
  font-size: 15px; color: var(--ink2); line-height: 1.8; max-width: 680px;
  margin-bottom: 40px; font-weight: 400;
}

/* ── DIVIDER ── */
.hr { height: 1px; background: var(--rule); margin: 32px 0; }
.hr-label {
  display: flex; align-items: center; gap: 12px;
   font-size: 10px; font-weight: 600;
   text-transform: uppercase; color: var(--ink4);
  margin: 28px 0 20px;
}
.hr-label::after { content: ''; flex: 1; height: 1px; background: var(--rule); }

/* ── VERDICT CARD (the hero comparison element) ── */
.verdict-grid { display: grid; gap: 20px; margin-bottom: 32px; }

.verdict-card {
  display: grid; grid-template-columns: 1fr 1fr;
  border: 1px solid var(--rule); border-radius: 4px; overflow: hidden;
  background: var(--white); transition: box-shadow 0.2s;
  position: relative;
}
.verdict-card:hover { box-shadow: 0 4px 20px rgba(0,0,0,0.08); }

.vc-label {
  grid-column: 1 / -1;
  padding: 12px 20px; background: var(--paper2);
  border-bottom: 1px solid var(--rule);
  display: flex; align-items: center; gap: 10px;
}

.vc-cap-num {
   font-size: 10px; font-weight: 700;
   color: var(--ink4);
  background: var(--paper3); padding: 2px 8px; border-radius: 2px;
}

.vc-cap-name {
   font-size: 14px; font-weight: 700;
   color: var(--ink);
}

.vc-verdict-badge {
  margin-left: auto;  font-size: 10px; font-weight: 700;
   text-transform: uppercase; padding: 3px 10px; border-radius: 20px;
}
.vc-verdict-badge.pm-wins {
  background: var(--pm-lt); color: var(--pm);
}
.vc-verdict-badge.laps-wins {
  background: var(--laps-lt); color: var(--laps);
}
.vc-verdict-badge.tie {
  background: var(--amber-lt); color: var(--amber);
}

.vc-side {
  padding: 20px 22px; position: relative;
}

.vc-side.laps-side { background: var(--laps-bg); border-right: 1px solid var(--rule); }
.vc-side.pm-side   { background: var(--pm-bg); }

.vc-side-header {
  display: flex; align-items: center; gap: 8px; margin-bottom: 12px;
}

.vc-brand {
   font-size: 11px; font-weight: 700;
   text-transform: uppercase;
}
.vc-brand.l { color: var(--laps); }
.vc-brand.p { color: var(--pm); }

.vc-status {
   font-size: 10px; font-weight: 600;
  padding: 2px 8px; border-radius: 12px; 
}
.vc-status.gap   { background: var(--warn-lt); color: var(--warn); border: 1px solid #f0a090; }
.vc-status.has   { background: var(--pm-lt); color: var(--pm); border: 1px solid var(--pm-md); }
.vc-status.partial { background: var(--amber-lt); color: var(--amber); border: 1px solid #e0b050; }

.vc-body {
  font-size: 13px; color: var(--ink2); line-height: 1.7;
}

.vc-detail-toggle {
  margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--rule);
   font-size: 11px; font-weight: 600;
   text-transform: uppercase;
  color: var(--ink4); cursor: pointer; display: flex; align-items: center; gap: 5px;
  transition: color 0.15s; user-select: none;
}
.vc-detail-toggle:hover { color: var(--pm); }
.vc-detail-toggle .arrow { transition: transform 0.2s; }
.vc-detail-toggle.open .arrow { transform: rotate(90deg); }

.vc-detail-body {
  display: none; margin-top: 10px; font-size: 12px; color: var(--ink2); line-height: 1.7;
  animation: lift .2s ease;
}
.vc-detail-body.open { display: block; }

/* ── COVERAGE METER ── */
.coverage-meter {
  height: 8px; background: var(--rule); border-radius: 4px;
  overflow: hidden; margin-top: 10px;
}
.cm-fill {
  height: 100%; border-radius: 4px; transition: width 1s ease;
  width: 0;
}
.cm-fill.laps-fill { background: linear-gradient(90deg, var(--laps-md), var(--laps)); }
.cm-fill.pm-fill   { background: linear-gradient(90deg, var(--pm-md), var(--pm)); }

.meter-row { display: flex; align-items: center; gap: 10px; margin-top: 8px; }
.meter-label {  font-size: 10px; font-weight: 600;  text-transform: uppercase; min-width: 36px; }
.meter-label.l { color: var(--laps); }
.meter-label.p { color: var(--pm); }
.meter-wrap { flex: 1; }
.meter-pct {  font-size: 11px; font-weight: 700; color: var(--ink3); min-width: 32px; text-align: right; }

/* ── STAT GRID ── */
.stat-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-bottom: 32px; }

.stat-c {
  background: var(--white); border: 1px solid var(--rule); padding: 18px 20px;
  border-radius: 4px; border-top: 3px solid var(--rule);
  transition: border-top-color 0.2s;
}
.stat-c.warn { border-top-color: var(--warn); }
.stat-c.laps { border-top-color: var(--laps); }
.stat-c.pm   { border-top-color: var(--pm); }
.stat-c.amber { border-top-color: var(--amber); }

.stat-num {
   font-size: 32px; font-weight: 900;
  line-height: 1; margin-bottom: 4px;
}
.stat-num.warn { color: var(--warn); }
.stat-num.laps { color: var(--laps); }
.stat-num.pm   { color: var(--pm); }
.stat-num.amber{ color: var(--amber); }

.stat-lbl {  font-size: 12px; font-weight: 500; color: var(--ink2); line-height: 1.3; }
.stat-src {  font-size: 10px; color: var(--ink4); margin-top: 4px; }

/* ── LAPS WHAT IT DOES BOX ── */
.laps-hero {
  background: var(--laps-bg); border: 1px solid var(--laps-lt);
  border-left: 4px solid var(--laps); border-radius: 4px;
  padding: 24px 28px; margin-bottom: 20px;
}
.pm-hero {
  background: var(--pm-bg); border: 1px solid var(--pm-lt);
  border-left: 4px solid var(--pm); border-radius: 4px;
  padding: 24px 28px; margin-bottom: 20px;
}

.hero-title {
   font-size: 13px; font-weight: 700;
   text-transform: uppercase;
  margin-bottom: 8px; display: flex; align-items: center; gap: 8px;
}
.hero-title.l { color: var(--laps); }
.hero-title.p { color: var(--pm); }

.hero-body { font-size: 13px; color: var(--ink2); line-height: 1.75; }

/* ── TWO COL ── */
.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
.three-col { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-bottom: 20px; }

/* ── CARD ── */
.card {
  background: var(--white); border: 1px solid var(--rule);
  border-radius: 4px; padding: 20px 22px;
}
.card.laps { border-top: 2px solid var(--laps); }
.card.pm   { border-top: 2px solid var(--pm); }
.card.warn { border-top: 2px solid var(--warn); }
.card.amber{ border-top: 2px solid var(--amber); }

.card-title {
   font-size: 13px; font-weight: 700;
   text-transform: uppercase; margin-bottom: 8px;
  display: flex; align-items: center; gap: 8px;
}
.card-title.l { color: var(--laps); }
.card-title.p { color: var(--pm); }
.card-title.w { color: var(--warn); }
.card-title.a { color: var(--amber); }
.card-title.k { color: var(--ink); }

.card-body { font-size: 13px; color: var(--ink2); line-height: 1.7; }

/* ── ALERT ── */
.alert {
  display: flex; gap: 14px; padding: 16px 20px; border-radius: 4px;
  font-size: 13px; line-height: 1.7; margin: 20px 0;
}
.alert-icon { font-size: 18px; flex-shrink: 0; padding-top: 1px; }
.alert.warn { background: var(--warn-bg); border: 1px solid #f0b0a0; border-left: 3px solid var(--warn); }
.alert.pm   { background: var(--pm-bg);   border: 1px solid var(--pm-lt); border-left: 3px solid var(--pm); }
.alert.laps { background: var(--laps-bg); border: 1px solid var(--laps-lt); border-left: 3px solid var(--laps); }
.alert.amber{ background: var(--amber-bg); border: 1px solid var(--amber-lt); border-left: 3px solid var(--amber); }
.alert strong { font-weight: 600; color: var(--ink); display: block; margin-bottom: 3px; }

/* ── BIG TABLE ── */
.comp-table { width: 100%; border-collapse: collapse; font-size: 13px; margin: 16px 0 28px; }
.comp-table th {
  padding: 10px 14px; text-align: left;
   font-size: 11px; font-weight: 700;
   text-transform: uppercase; border-bottom: 2px solid var(--rule);
}
.comp-table th.laps-col { color: var(--laps); background: var(--laps-bg); }
.comp-table th.pm-col   { color: var(--pm);   background: var(--pm-bg); }
.comp-table th.cap-col  { color: var(--ink3);  background: var(--paper2); }

.comp-table td { padding: 11px 14px; border-bottom: 1px solid var(--rule); color: var(--ink2); vertical-align: top; line-height: 1.55; }
.comp-table td.cap-cell { font-weight: 600; color: var(--ink); background: var(--paper);  font-size: 13px;  }
.comp-table td.laps-cell { background: var(--laps-bg); }
.comp-table td.pm-cell   { background: var(--pm-bg); }
.comp-table tr:last-child td { border-bottom: none; }

.yn {  font-size: 11px; font-weight: 700;  padding: 2px 8px; border-radius: 2px; display: inline-block; margin-bottom: 4px; }
.yn-yes  { background: var(--pm-lt); color: var(--pm); }
.yn-no   { background: var(--warn-lt); color: var(--warn); }
.yn-part { background: var(--amber-lt); color: var(--amber); }
.yn-na   { background: var(--paper3); color: var(--ink4); }

/* ── SCENARIO CARDS ── */
.scenario {
  background: var(--white); border: 1px solid var(--rule); border-radius: 4px;
  margin-bottom: 18px; overflow: hidden;
}
.scenario-header {
  padding: 14px 20px; background: var(--paper2); border-bottom: 1px solid var(--rule);
  display: flex; align-items: center; gap: 12px; cursor: pointer;
}
.scenario-header:hover { background: var(--paper3); }
.scenario-header.open { background: #1f1232; }
.scenario-header.open .sc-title { color: #fff; }
.scenario-header.open .sc-num { color: var(--ink4); }
.scenario-header.open .sc-arr { color: var(--pm-md); }

.sc-num {  font-size: 10px; font-weight: 700;  color: var(--ink4); }
.sc-title {  font-size: 14px; font-weight: 700; color: var(--ink); flex: 1;  }
.sc-arr { margin-left: auto; color: var(--ink4); transition: transform 0.2s; }
.scenario-header.open .sc-arr { transform: rotate(90deg); }

.scenario-body { padding: 0; display: none; }
.scenario-body.open { display: block; animation: lift .2s ease; }
.scenario-split { display: grid; grid-template-columns: 1fr 1fr; }

.sc-col {
  padding: 20px 22px;
}
.sc-col.l { background: var(--laps-bg); border-right: 1px solid var(--rule); }
.sc-col.p { background: var(--pm-bg); }

.sc-col-header {
   font-size: 11px; font-weight: 700;
   text-transform: uppercase; margin-bottom: 12px;
  padding-bottom: 8px; border-bottom: 1px solid var(--rule);
}
.sc-col-header.l { color: var(--laps); }
.sc-col-header.p { color: var(--pm); }

.sc-col-body { font-size: 13px; color: var(--ink2); line-height: 1.7; }

/* ── CHECKLIST ── */
.checklist { list-style: none; }
.checklist li {
  display: flex; align-items: flex-start; gap: 12px;
  padding: 10px 0; border-bottom: 1px solid var(--rule);
  cursor: pointer;
}
.checklist li:last-child { border-bottom: none; }
.checklist li:hover { background: var(--paper2); margin: 0 -8px; padding-left: 8px; padding-right: 8px; }

.ck {
  width: 18px; height: 18px; border-radius: 3px; flex-shrink: 0; margin-top: 2px;
  border: 1.5px solid var(--rule); display: flex; align-items: center; justify-content: center;
  font-size: 10px; font-weight: 700; transition: all 0.2s;
}
.checklist li.done .ck { background: var(--pm); border-color: var(--pm); color: #fff; }
.checklist li.done .ck-main { color: var(--ink4); text-decoration: line-through; }

.ck-main { font-size: 13px; font-weight: 600; color: var(--ink); display: block; }
.ck-sub  { font-size: 12px; color: var(--ink3); line-height: 1.5; }

/* ── QUIZ ── */
.q-block {
  background: var(--white); border: 1px solid var(--rule); border-radius: 4px;
  padding: 28px; margin-bottom: 18px;
}
.q-num {  font-size: 10px; font-weight: 700;  text-transform: uppercase; color: var(--ink4); margin-bottom: 8px; }
.q-text {  font-size: 18px; font-weight: 700; color: var(--ink); margin-bottom: 20px; line-height: 1.4; }
.q-opts { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.q-opt {
  padding: 13px 16px; border: 1.5px solid var(--rule); border-radius: 4px;
  cursor: pointer; font-size: 13px; color: var(--ink2);
  transition: all 0.15s; background: var(--paper); line-height: 1.5;
}
.q-opt:hover:not(.locked) { border-color: var(--pm); color: var(--ink); background: var(--pm-bg); }
.q-opt.correct { border-color: #77b255;
    background: #77b25520;
    color: #60c090; font-weight: 600; }
.q-opt.wrong   { border-color: #dc143c;
    background: #dc143c2b;
    color:#ff7a90; }
.q-opt.locked  { cursor: default; }

.q-exp {
  margin-top: 16px; padding: 14px 16px; background: var(--paper2); border-radius: 4px;
  font-size: 13px; color: var(--ink2); line-height: 1.7; display: none; animation: lift .2s;
}
.q-exp.show { display: block; }
.q-exp .lbl {  font-size: 11px; font-weight: 700;  margin-right: 6px; text-transform: uppercase; }
.ok-lbl  { color: var(--pm); }
.no-lbl  { color: var(--warn); }

.quiz-result {
  background: var(--ink); color: var(--paper); border-radius: 4px;
  padding: 36px; text-align: center; display: none; margin-top: 24px;
}
.qr-score {  font-size: 72px; font-weight: 900; color: var(--pm-md); line-height: 1; }
.qr-of {  font-size: 14px; font-weight: 500; color: #5a5550; margin-top: 8px;  }
.qr-msg { font-size: 14px; color: #9a9490; margin-top: 14px; max-width: 440px; margin-left: auto; margin-right: auto; line-height: 1.7; }

/* ── BULLETS ── */
ul.bl { list-style: none; padding: 0; }
ul.bl li { padding: 4px 0 4px 18px; position: relative; font-size: 13px; color: var(--ink2); line-height: 1.65; }
ul.bl li::before { content: '—'; position: absolute; left: 0; color: var(--ink4); font-size: 11px; top: 5px; }
ul.bl.pm li::before { color: var(--pm-md); content: '›'; font-size: 14px; font-weight: 700; top: 3px; }
ul.bl.warn li::before { color: var(--warn); content: '✕'; font-size: 10px; top: 5px; }

/* ── NAV BUTTONS ── */
.nav-btns { display: flex; gap: 12px; margin-top: 48px; padding-top: 26px; border-top: 2px solid var(--rule); }

.btn {
   font-size: 12px; font-weight: 700;
  padding: 11px 24px; border-radius: 3px; cursor: pointer;
   text-transform: uppercase; transition: all 0.15s;
  border: 1.5px solid transparent;
}
.btn-pm { background: var(--pm); color: #fff; border-color: var(--pm); }
.btn-pm:hover { background: #883cf0e0; }
.btn-out { background: transparent; color: var(--ink3); border-color: var(--rule); }
.btn-out:hover { color: var(--ink); border-color: var(--ink3); }

/* ── DECISION MATRIX ── */
.decision-grid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 0; border: 1.5px solid var(--rule); border-radius: 4px; overflow: hidden;
  margin-bottom: 24px;
}
.dg-header {
  padding: 12px 20px;  font-size: 12px; font-weight: 700;
   text-transform: uppercase; border-bottom: 1.5px solid var(--rule);
  text-align: center;
}
.dg-header.l { background: var(--laps-bg); color: var(--laps); border-right: 1px solid var(--rule); }
.dg-header.p { background: var(--pm-bg); color: var(--pm); }
.dg-cell {
  padding: 16px 20px; border-bottom: 1px solid var(--rule); font-size: 13px;
  color: var(--ink2); line-height: 1.6;
}
.dg-cell.l { background: var(--laps-bg); border-right: 1px solid var(--rule); }
.dg-cell.p { background: var(--pm-bg); }
.dg-cell:last-child, .dg-cell:nth-last-child(2) { border-bottom: none; }

/* ── PROGRESS ── */
.progress-bar { height: 5px; background: var(--rule); border-radius: 3px; overflow: hidden; margin: 10px 26px; }
.pb-fill { height: 100%; background: var(--pm); border-radius: 3px; transition: width 0.5s ease; width: 0%; }

/* ── TAGS ── */
.tag { display: inline-block;  font-size: 9px; font-weight: 700; padding: 2px 7px; border-radius: 2px;  text-transform: uppercase; }
.tag-pm   { background: var(--pm-lt); color: var(--pm); }
.tag-laps { background: var(--laps-lt); color: var(--laps); }
.tag-warn { background: var(--warn-lt); color: var(--warn); }
.tag-amber{ background: var(--amber-lt); color: var(--amber); }

h3 {  font-size: 20px; font-weight: 700; color: var(--ink); margin-bottom: 12px; margin-top: 28px; }
h3:first-child { margin-top: 0; }
p { font-size: 13px; color: var(--ink2); line-height: 1.8; margin-bottom: 12px; }
strong { color: var(--ink); font-weight: 600; }

::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: var(--paper); }
::-webkit-scrollbar-thumb { background: var(--rule); border-radius: 3px; }

@media (max-width: 880px) {
  .sidebar { transform: translateX(-100%); position: absolute; }
  .main { margin-left: 0; }
  .laps-vs-privilege-manager-guide .page { padding: 28px 20px 60px; }
  .topbar { padding: 11px 20px;     flex-direction: column; }
  .two-col, .three-col, .stat-row, .verdict-card, .scenario-split, .q-opts { grid-template-columns: 1fr; }
  .verdict-card .vc-side.laps-side { border-right: none; border-bottom: 1px solid var(--rule); }
  .dg-header.l, .dg-cell.l { border-right: none; border-bottom: 1px solid var(--rule); }
}