/* Agentic Security Pedia (/pedia/): the index and its articles. Layered on home.css and doc.css.
   One question per article, answered in the lead; boxes for what auditors ask, the frameworks it
   maps to, and how GIRD helps; FAQs and sources close each article. */
.pedia-head .crumb { color:var(--teal); text-decoration:none; }
.pedia-head .crumb:hover { color:#fff; }
.pedia-head .byline { margin-top:24px; font-family:var(--mono); font-size:12px; letter-spacing:.06em; color:var(--on-dark-2); display:flex; flex-wrap:wrap; gap:6px 16px; }
.pedia-head .byline a { color:var(--teal); text-decoration:none; }
.pedia-head .byline a:hover { text-decoration:underline; }

.prose .ask { font-family:var(--mono); font-size:12.5px; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); padding-bottom:18px; border-bottom:1px solid var(--line); }
.prose .ask b { color:var(--ink); font-weight:500; }

/* boxes */
.prose .box { border-radius:12px; padding:22px 24px 24px; margin-top:2.2em; }
.prose .box > * + * { margin-top:.8em; }
.prose .box h2 { margin:0; padding:0; border:0; font-family:var(--mono); font-size:12px; font-weight:500; letter-spacing:.14em; text-transform:uppercase; line-height:1.4; }
.prose .box ul { margin-top:.6em; }
.prose .box li { margin-top:.45em; }
.prose .box-audit { background:#FFFBEB; border:1px solid #FDE68A; }
.prose .box-audit h2 { color:#B45309; }
.prose .box-audit li::marker { color:#B45309; }
.prose .box-frame { background:var(--paper); border:1px solid var(--line); }
.prose .box-frame h2 { color:var(--teal-deep); }
.prose .box-frame ul { list-style:none; padding:0; display:grid; gap:8px; }
.prose .box-frame li { margin:0; padding:10px 12px; background:#fff; border:1px solid var(--line); border-radius:8px; font-size:15px; }
.prose .box-frame li b { display:block; font-family:var(--mono); font-size:11.5px; font-weight:500; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); margin-bottom:2px; }
.prose .box-gird { background:var(--navy); color:var(--on-dark-2); position:relative; overflow:hidden; }
.prose .box-gird h2 { color:var(--teal); }
.prose .box-gird p { color:var(--on-dark-2); }
.prose .box-gird strong { color:#fff; }
.prose .box-gird a.btn { color:var(--navy); text-decoration:none; margin-top:1.1em; height:44px; font-size:14.5px; }

/* FAQs */
.prose .faq details { border-top:1px solid var(--line); padding:14px 0; }
.prose .faq details:last-of-type { border-bottom:1px solid var(--line); }
.prose .faq summary { cursor:pointer; list-style:none; font-weight:600; color:var(--ink); display:flex; justify-content:space-between; gap:16px; align-items:baseline; }
.prose .faq summary::-webkit-details-marker { display:none; }
.prose .faq summary::after { content:"+"; font-family:var(--mono); font-weight:500; color:var(--teal-deep); flex:none; }
.prose .faq details[open] summary::after { content:"\2212"; }
.prose .faq details > p { margin-top:.6em; }

/* sources and related */
.prose .sources ol { font-size:14.5px; line-height:1.6; }
.prose .sources li { margin-top:.5em; }
.prose .related { margin-top:2.4em; padding-top:1.6em; border-top:1px solid var(--line); }
.prose .related h2 { border:0; padding:0; margin:0 0 .6em; font-size:19px; }
.prose .related ul { list-style:none; padding:0; display:grid; gap:8px; }
.prose .related li { margin:0; padding:0; }

/* the index */
.pedia-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:28px; }
.pedia-card { display:grid; gap:8px; align-content:start; padding:24px 26px; background:#fff; border:1px solid var(--line); border-radius:12px; text-decoration:none; transition:border-color .15s, transform .15s; }
.pedia-card:hover { border-color:var(--teal-deep); transform:translateY(-1px); }
.pedia-card .n { font-family:var(--mono); font-size:11.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--teal-deep); }
.pedia-card h3 { font-size:19px; line-height:1.3; }
.pedia-card p { font-size:15.5px; color:var(--body); }
.pedia-group { margin-top:56px; }
.pedia-group:first-child { margin-top:0; }
.pedia-group > h2 { font-family:var(--mono); font-size:12px; font-weight:500; letter-spacing:.16em; text-transform:uppercase; color:var(--muted); padding-bottom:12px; border-bottom:1px solid var(--line); }
.pedia-how { margin-top:64px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.pedia-how div { border-top:2px solid var(--ink); padding-top:16px; }
.pedia-how h3 { font-family:var(--mono); font-size:12px; font-weight:500; letter-spacing:.14em; text-transform:uppercase; }
.pedia-how p { margin-top:8px; font-size:15.5px; }
.pedia-wide { max-width:calc(1000px + 2 * clamp(20px,4vw,40px)); }

@media (max-width:760px) {
  .pedia-list, .pedia-how { grid-template-columns:1fr; }
}
@media (max-width:560px) {
  .prose .box { padding:18px 18px 20px; }
}
.doc-head .inner.pedia-wide { max-width:calc(1000px + 2 * clamp(20px,4vw,40px)); }
.pedia-head .lead code { font-family:var(--mono); font-size:.86em; color:#fff; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); border-radius:4px; padding:.05em .35em; }
.prose .ask + h2 { border-top:0; padding-top:0; margin-top:1.6em; }
