/* DPA Page Styles */
:root{
  --bg: #ffffff; 
  --ink:#111827; 
  --muted:#6b7280; 
  --brand:#0ea5e9; 
  --line:#e5e7eb; 
  --card:#f9fafb;
}

.dpa-page html{scroll-behavior:smooth}
.dpa-page body{margin:0;font-family:'Roboto',system-ui,-apple-system,'Segoe UI',Ubuntu,Cantarell,'Noto Sans',Helvetica,Arial,sans-serif;line-height:1.6;color:var(--ink);background:var(--bg)}
.dpa-page header{position:sticky;top:0;background:rgba(255,255,255,.9);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--line);z-index:50}
.dpa-page .container{max-width:1000px;margin-inline:auto;padding:24px}
.dpa-page .title{font-size:clamp(24px,3vw,36px);margin:0 0 8px}
.dpa-page .subtitle{color:var(--muted);margin:0}
.dpa-page nav.toc{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--card)}
.dpa-page nav.toc a{display:block;padding:6px 8px;border-radius:8px;color:var(--ink);text-decoration:none}
.dpa-page nav.toc a:hover{background:#eef6ff;color:#0b6cbf}
.dpa-page h2{margin-top:40px;margin-bottom:8px;font-size:1.5rem}
.dpa-page h3{margin-top:28px;margin-bottom:6px;font-size:1.1rem}
.dpa-page .meta{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:.9rem}
.dpa-page .badge{padding:.2rem .5rem;border-radius:999px;border:1px solid var(--line);background:#fff}
.dpa-page .callout{background:#eef6ff;border-left:4px solid var(--brand);padding:12px 16px;border-radius:8px;margin:16px 0}
.dpa-page .section{padding-top:8px;border-top:1px dashed var(--line)}
.dpa-page .foot{margin-top:48px;padding-top:24px;border-top:1px solid var(--line);font-size:.9rem;color:var(--muted)}
.dpa-page details{border:1px solid var(--line);border-radius:12px;padding:12px 16px;background:#fff}
.dpa-page details+details{margin-top:12px}
.dpa-page details summary{cursor:pointer;font-weight:600}
.dpa-page code.inline{background:#f3f4f6;border:1px solid var(--line);border-radius:6px;padding:0 .35rem}
.dpa-page .grid{display:grid;grid-template-columns:1fr;gap:24px}
@media(min-width:960px){.dpa-page .grid{grid-template-columns:260px 1fr}}
.dpa-page .btn{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--ink)}
.dpa-page .btn:hover{box-shadow:0 2px 10px rgba(0,0,0,.06)}
.dpa-page .tag{display:inline-block;background:#f3f4f6;border:1px solid var(--line);border-radius:999px;padding:2px 10px;margin-right:6px}
.dpa-page .list-tight li{margin:.25rem 0}

/* Print styles */
@media print{
  .dpa-page header, .dpa-page .no-print{display:none !important}
  .dpa-page .container{max-width:none}
  .dpa-page nav.toc{page-break-inside:avoid}
  .dpa-page a[href^="http"]:after{content:" (" attr(href) ")"}
}