/* Stripes & Pips - shared styles for topic and guide pages.
   Tokens, nav and footer match index.html exactly. */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --bg:#f0f4fb;--bg2:#e8edf7;--card:#ffffff;--border-col:#d0daea;--nav-bg:#ffffff;
  --accent:#b8922a;--accent2:#d4a83a;--accent-light:rgba(184,146,42,0.1);
  --text:#0b1a2e;--text2:#1e3a5f;--muted:#5a6e85;
  --hero-bg:linear-gradient(150deg,#0b2040 0%,#1b3d6e 60%,#0f2a50 100%);
  --hero-text:#ffffff;--hero-muted:#a8c0d8;
  --shadow:0 2px 16px rgba(11,26,46,0.07);--shadow-lg:0 12px 40px rgba(11,26,46,0.14);
  --section-alt:#e8edf7;
  --law-bg:#f8f6f0;--law-highlight:#fff3cd;--law-highlight-text:#5a3e00;
  --correct:#1e6e3a;--correct-bg:#e8f5ee;--wrong:#8b1a1a;--wrong-bg:#fdeaea;
}
@media(prefers-color-scheme:dark){:root{
  --bg:#0b1a2e;--bg2:#0d1f3a;--card:#102340;--border-col:rgba(255,255,255,0.07);--nav-bg:#0d1f3a;
  --accent:#c9a84c;--accent2:#e8c96a;--accent-light:rgba(201,168,76,0.1);
  --text:#eef2f8;--text2:#c8d8ec;--muted:#8a9fba;
  --hero-bg:linear-gradient(150deg,#060f1e 0%,#0b2040 60%,#071629 100%);
  --hero-text:#eef2f8;--hero-muted:#8a9fba;
  --shadow:0 2px 16px rgba(0,0,0,0.3);--shadow-lg:0 12px 40px rgba(0,0,0,0.5);
  --section-alt:#0d1f3a;
  --law-bg:#0f1d33;--law-highlight:#3a2e00;--law-highlight-text:#e8c96a;
  --correct:#4aad72;--correct-bg:#0d2a1a;--wrong:#cc6666;--wrong-bg:#2a0d0d;
}}
[data-theme="dark"]{
  --bg:#0b1a2e;--bg2:#0d1f3a;--card:#102340;--border-col:rgba(255,255,255,0.07);--nav-bg:#0d1f3a;
  --accent:#c9a84c;--accent2:#e8c96a;--accent-light:rgba(201,168,76,0.1);
  --text:#eef2f8;--text2:#c8d8ec;--muted:#8a9fba;
  --hero-bg:linear-gradient(150deg,#060f1e 0%,#0b2040 60%,#071629 100%);
  --hero-text:#eef2f8;--hero-muted:#8a9fba;
  --shadow:0 2px 16px rgba(0,0,0,0.3);--shadow-lg:0 12px 40px rgba(0,0,0,0.5);
  --section-alt:#0d1f3a;
  --law-bg:#0f1d33;--law-highlight:#3a2e00;--law-highlight-text:#e8c96a;
  --correct:#4aad72;--correct-bg:#0d2a1a;--wrong:#cc6666;--wrong-bg:#2a0d0d;
}
[data-theme="light"]{
  --bg:#f0f4fb;--bg2:#e8edf7;--card:#ffffff;--border-col:#d0daea;--nav-bg:#ffffff;
  --accent:#b8922a;--accent2:#d4a83a;--accent-light:rgba(184,146,42,0.1);
  --text:#0b1a2e;--text2:#1e3a5f;--muted:#5a6e85;
  --hero-bg:linear-gradient(150deg,#0b2040 0%,#1b3d6e 60%,#0f2a50 100%);
  --hero-text:#ffffff;--hero-muted:#a8c0d8;
  --shadow:0 2px 16px rgba(11,26,46,0.07);--shadow-lg:0 12px 40px rgba(11,26,46,0.14);
  --section-alt:#e8edf7;
  --law-bg:#f8f6f0;--law-highlight:#fff3cd;--law-highlight-text:#5a3e00;
  --correct:#1e6e3a;--correct-bg:#e8f5ee;--wrong:#8b1a1a;--wrong-bg:#fdeaea;
}
html{scroll-behavior:smooth;}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*{animation:none!important;transition:none!important;}}
body{font-family:'Lora',Georgia,serif;background:var(--bg);color:var(--text);transition:background .3s,color .3s;min-height:100vh;display:flex;flex-direction:column;}
main{flex:1;}
a{color:var(--accent);}

/* NAV (same as index.html) */
nav{background:var(--nav-bg);border-bottom:2px solid var(--accent);padding:11px 20px;display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:200;box-shadow:var(--shadow);transition:background .3s;}
.logo-svg{width:40px;height:36px;flex-shrink:0;}
.nav-brand{font-family:'Rajdhani',sans-serif;font-size:1.25rem;font-weight:700;color:var(--accent);letter-spacing:2px;text-transform:uppercase;text-decoration:none;line-height:1;}
.nav-brand span{display:block;font-size:.55rem;letter-spacing:3px;color:var(--muted);font-weight:500;margin-top:2px;}
.nav-links{margin-left:auto;display:flex;align-items:center;gap:14px;list-style:none;}
.nav-links a{font-family:'Rajdhani',sans-serif;font-size:0.76rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .2s;}
.nav-links a:hover,.nav-links a.active{color:var(--accent);}
.nav-links a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px;}
.nav-links .btn-nav{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#0b1a2e;padding:7px 14px;border-radius:4px;font-weight:700;}
.nav-links .btn-nav:hover{opacity:.9;color:#0b1a2e;}
.nav-links .btn-nav-outline{border:1px solid var(--accent);color:var(--accent);padding:6px 13px;border-radius:4px;font-weight:700;}
.nav-links .btn-nav-outline:hover{background:var(--accent-light);color:var(--accent);}
.theme-toggle{background:var(--accent-light);border:1px solid var(--accent);border-radius:20px;width:40px;height:22px;cursor:pointer;position:relative;flex-shrink:0;transition:background .3s;}
.theme-toggle::after{content:'';position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--accent);transition:transform .3s;}
[data-theme="light"] .theme-toggle::after{transform:translateX(18px);}
@media(max-width:760px){
  nav{flex-wrap:wrap;padding:10px 14px;gap:8px;row-gap:8px;}
  .nav-links{gap:8px;margin-left:0;flex-wrap:wrap;width:100%;justify-content:flex-end;order:3;}
  .nav-links a{font-size:0.66rem;letter-spacing:1px;}
  .nav-links .btn-nav{padding:6px 10px;}
  .nav-links .btn-nav-outline{padding:5px 9px;}
}
@media(max-width:400px){.nav-links{gap:6px;}.nav-links a{font-size:0.6rem;}}

/* PAGE HEADER */
.page-head{background:var(--hero-bg);padding:44px 20px 48px;position:relative;overflow:hidden;}
.page-head::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--accent),var(--accent2),var(--accent),transparent);}
.page-head-inner{max-width:820px;margin:0 auto;position:relative;z-index:1;}
.crumbs{font-family:'Rajdhani',sans-serif;font-size:.7rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--hero-muted);margin-bottom:14px;}
.crumbs a{color:var(--hero-muted);text-decoration:none;}
.crumbs a:hover{color:var(--accent2);}
.crumbs span{margin:0 6px;opacity:.6;}
.eyebrow{display:inline-block;font-family:'Rajdhani',sans-serif;font-size:.66rem;letter-spacing:3px;text-transform:uppercase;color:var(--accent2);border:1px solid rgba(201,168,76,0.4);padding:4px 12px;border-radius:20px;margin-bottom:14px;}
.page-head h1{font-family:'Rajdhani',sans-serif;font-size:clamp(1.7rem,4vw,2.5rem);font-weight:700;color:var(--hero-text);letter-spacing:1px;text-transform:uppercase;line-height:1.1;margin-bottom:12px;text-wrap:balance;}
.page-head h1 em{font-style:normal;color:var(--accent2);}
.page-head .lede{font-size:1rem;color:var(--hero-muted);line-height:1.8;font-style:italic;max-width:640px;}
.head-facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:18px;font-family:'Rajdhani',sans-serif;font-size:.78rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent2);}

/* CONTENT */
.wrap{max-width:820px;margin:0 auto;padding:40px 20px 56px;}
.prose{font-size:.98rem;line-height:1.85;color:var(--text2);}
.prose h2{font-family:'Rajdhani',sans-serif;font-size:clamp(1.25rem,2.6vw,1.55rem);font-weight:700;color:var(--text);letter-spacing:1px;text-transform:uppercase;margin:38px 0 10px;line-height:1.2;}
.prose h2:first-child{margin-top:0;}
.prose h3{font-family:'Rajdhani',sans-serif;font-size:1.08rem;font-weight:700;color:var(--text);letter-spacing:.5px;margin:24px 0 6px;}
.prose p{margin-bottom:14px;}
.prose ul,.prose ol{margin:0 0 16px 22px;}
.prose li{margin-bottom:6px;}
.prose strong{color:var(--text);}
.rule{width:44px;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent2));margin:6px 0 18px;border-radius:1px;}
.note{background:var(--card);border:1px solid var(--border-col);border-left:4px solid var(--accent);border-radius:8px;padding:16px 18px;margin:20px 0;font-size:.9rem;line-height:1.7;color:var(--text2);box-shadow:var(--shadow);}
.note strong{color:var(--text);}
table.data{width:100%;border-collapse:collapse;margin:8px 0 20px;font-size:.9rem;background:var(--card);border:1px solid var(--border-col);border-radius:8px;overflow:hidden;}
table.data th{font-family:'Rajdhani',sans-serif;font-size:.72rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);text-align:left;padding:10px 12px;border-bottom:1px solid var(--border-col);background:var(--bg2);}
table.data td{padding:10px 12px;border-bottom:1px solid var(--border-col);color:var(--text2);vertical-align:top;}
table.data tr:last-child td{border-bottom:none;}
.table-wrap{overflow-x:auto;}

/* QUESTION CARD */
.qcard{background:var(--card);border:1px solid var(--border-col);border-top:3px solid var(--accent);border-radius:10px;padding:22px 20px;margin:22px 0;box-shadow:var(--shadow);}
.qmeta{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;}
.qnum{font-family:'Rajdhani',sans-serif;font-size:.7rem;color:var(--muted);letter-spacing:2px;text-transform:uppercase;}
.qbadge{font-family:'Rajdhani',sans-serif;font-size:.62rem;letter-spacing:1px;text-transform:uppercase;background:var(--accent-light);color:var(--accent);padding:2px 9px;border-radius:20px;border:1px solid var(--accent);}
.qtext{font-size:.95rem;line-height:1.8;color:var(--text2);margin-bottom:14px;}
.qopts{list-style:none;margin:0 0 4px;}
.qopt{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--border-col);border-radius:7px;padding:10px 12px;margin-bottom:8px;font-size:.9rem;color:var(--text2);line-height:1.55;}
.qopt .ltr{font-family:'Rajdhani',sans-serif;font-size:.74rem;font-weight:700;color:var(--accent);background:var(--accent-light);width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;}
.qcard details{margin-top:12px;}
.qcard summary{cursor:pointer;list-style:none;font-family:'Rajdhani',sans-serif;font-size:.86rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#0b1a2e;background:linear-gradient(135deg,var(--accent),var(--accent2));display:inline-block;padding:10px 18px;border-radius:4px;}
.qcard summary::-webkit-details-marker{display:none;}
.qcard summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}
.qcard details[open] summary{background:transparent;color:var(--accent);border:1px solid var(--accent);}
.qcard:has(details[open]) .qopt.is-correct{border-color:var(--correct);background:var(--correct-bg);}
.answer{margin-top:16px;}
.answer-head{font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--correct);margin-bottom:8px;}
.answer p{font-size:.92rem;line-height:1.8;color:var(--text2);margin-bottom:10px;}
.answer mark,.why mark{background:var(--law-highlight);color:var(--law-highlight-text);border-radius:2px;padding:0 3px;font-weight:600;}
.law{background:var(--law-bg);border-left:3px solid var(--accent);border-radius:6px;padding:12px 14px;margin:14px 0;}
.law-src{font-family:'Rajdhani',sans-serif;font-size:.66rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:6px;}
.law-txt{font-family:'Source Code Pro',ui-monospace,monospace;font-size:.78rem;line-height:1.75;color:var(--text2);white-space:pre-line;}
.why{list-style:none;margin:10px 0 0;}
.why li{font-size:.88rem;line-height:1.7;color:var(--text2);padding:9px 0;border-top:1px solid var(--border-col);}
.why b{font-family:'Rajdhani',sans-serif;letter-spacing:1px;color:var(--wrong);margin-right:4px;}

/* CTA */
.cta{background:var(--hero-bg);border-radius:12px;padding:34px 26px;text-align:center;position:relative;overflow:hidden;box-shadow:var(--shadow-lg);margin:34px 0 10px;}
.cta::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent2));}
.cta h2{font-family:'Rajdhani',sans-serif;font-size:clamp(1.3rem,3vw,1.7rem);font-weight:700;color:var(--hero-text);letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;}
.cta p{color:var(--hero-muted);font-size:.92rem;line-height:1.7;max-width:520px;margin:0 auto 20px;font-style:italic;}
.cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#0b1a2e;font-family:'Rajdhani',sans-serif;font-size:.88rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;border:none;padding:13px 26px;border-radius:4px;cursor:pointer;text-decoration:none;display:inline-block;transition:transform .2s,box-shadow .2s;}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(201,168,76,.4);}
.btn-ghost{background:transparent;color:var(--hero-text);font-family:'Rajdhani',sans-serif;font-size:.88rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;border:1px solid rgba(255,255,255,.3);padding:13px 26px;border-radius:4px;text-decoration:none;display:inline-block;transition:border-color .2s,color .2s;}
.btn-ghost:hover{border-color:var(--accent2);color:var(--accent2);}

/* LINK GRIDS */
.grid-title{font-family:'Rajdhani',sans-serif;font-size:.72rem;letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin:34px 0 12px;}
.link-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;}
.link-card{display:block;background:var(--card);border:1px solid var(--border-col);border-radius:8px;padding:14px 16px;text-decoration:none;box-shadow:var(--shadow);transition:border-color .2s,transform .2s;}
.link-card:hover{border-color:var(--accent);transform:translateY(-2px);}
.link-card b{display:block;font-family:'Rajdhani',sans-serif;font-size:.98rem;letter-spacing:.5px;color:var(--text);margin-bottom:3px;}
.link-card small{font-size:.78rem;color:var(--muted);line-height:1.5;display:block;}
.vol-block{margin-bottom:10px;}

/* FOOTER (same as index.html) */
footer{background:var(--nav-bg);border-top:2px solid var(--accent);padding:24px 20px;text-align:center;transition:background .3s;}
.footer-inner{display:flex;flex-direction:column;align-items:center;gap:9px;}
.footer-brand{font-family:'Rajdhani',sans-serif;font-size:.95rem;font-weight:700;color:var(--accent);letter-spacing:2px;text-transform:uppercase;}
.footer-links{display:flex;gap:18px;list-style:none;flex-wrap:wrap;justify-content:center;}
.footer-links a{font-family:'Rajdhani',sans-serif;font-size:.68rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .2s;}
.footer-links a:hover{color:var(--accent);}
.footer-legal{font-family:'Rajdhani',sans-serif;font-size:.62rem;letter-spacing:1px;color:var(--muted);text-transform:uppercase;}
.footer-social{display:flex;gap:14px;}
.footer-social a{color:var(--muted);transition:color .2s;display:flex;}
.footer-social a:hover{color:var(--accent);}
.footer-social svg{width:18px;height:18px;}
