/* Comigo docs — layered on svc.css tokens (AI2 Sans + DM Mono only). */
.docs{position:relative;z-index:1;padding-block:clamp(28px,4vw,56px) 0}
.doc-grid{display:grid;grid-template-columns:240px minmax(0,1fr) 200px;gap:clamp(24px,4vw,56px);align-items:start}
.doc-side{position:sticky;top:96px;max-height:calc(100vh - 110px);overflow:auto;padding-bottom:24px}
.doc-brand{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.doc-brand img{border-radius:8px}
.doc-brand b{display:block;font-size:16px;line-height:1.1}
.doc-brand small{display:block;color:var(--muted);font-size:12px}
.doc-nav .mono{margin:20px 0 8px;font-size:11px;color:var(--dim);display:block}
.doc-nav ul{list-style:none;margin:0;padding:0;border-left:1px solid var(--line)}
.doc-nav a{display:block;padding:6px 0 6px 14px;margin-left:-1px;border-left:2px solid transparent;color:var(--muted);font-size:14.5px;transition:color .2s,border-color .2s}
.doc-nav a:hover{color:var(--ink)}
.doc-nav a[aria-current=page]{color:var(--ink);border-left-color:var(--accent);font-weight:600}
.doc-menu{display:none}
.doc-body{min-width:0;max-width:760px}
.doc-body .doc-crumbs{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 14px;line-height:1.5}
.doc-body .doc-crumbs a{color:var(--muted)!important;text-decoration:none!important}
.doc-body .doc-crumbs a:hover{color:var(--ink)!important}
.doc-body h1{font-size:clamp(34px,4.6vw,56px);line-height:1.04;margin-bottom:18px}
.doc-body h2{font-size:clamp(24px,2.6vw,32px);max-width:none;margin:52px 0 14px;scroll-margin-top:96px;padding-top:8px}
.doc-body h3{font-size:19px;margin:30px 0 10px;scroll-margin-top:96px}
.doc-body p,.doc-body li{color:#c9cdea;font-size:16.5px;line-height:1.7}
.doc-body p{margin:0 0 16px}
.doc-body > h1 + p{font-size:19px;color:var(--ink)}
.doc-body ul,.doc-body ol{padding-left:22px;margin:0 0 18px}
.doc-body li{margin:6px 0}
.doc-body strong{color:var(--ink)}
.doc-body a:not(.btn):not(.prev):not(.next){color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}
.doc-body a:hover{text-decoration-color:var(--ink)}
.doc-body code{font-family:var(--f-mono);font-size:.86em;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:.1em .38em;color:#ffd0d8;word-break:break-word}
.doc-body pre{position:relative;background:#080a18;border:1px solid var(--line);border-radius:14px;padding:18px 20px;overflow:auto;margin:0 0 20px}
.doc-body pre code{background:none;border:0;padding:0;color:#e7e9ff;font-size:13.5px;line-height:1.65;word-break:normal;white-space:pre}
.copy-code{position:absolute;top:10px;right:10px;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:var(--panel);color:var(--muted);border:1px solid var(--line-2);border-radius:999px;padding:5px 10px;cursor:pointer;opacity:0;transition:opacity .2s}
.doc-body pre:hover .copy-code,.copy-code:focus-visible{opacity:1}
@media (hover:none){.copy-code{opacity:1}}
.tbl{overflow-x:auto;margin:0 0 22px;border:1px solid var(--line);border-radius:14px}
.doc-body table{border-collapse:collapse;width:100%;font-size:15px}
.doc-body th,.doc-body td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top;color:#c9cdea}
.doc-body th{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--bg-2);font-weight:500}
.doc-body tr:last-child td{border-bottom:0}
.doc-body td:first-child{color:var(--ink)}
.note{margin:0 0 22px;padding:16px 18px;border:1px solid var(--line-2);border-left:3px solid var(--accent);border-radius:12px;background:linear-gradient(90deg,var(--accent-soft),transparent 60%)}
.note p{margin:0;color:var(--ink)}
.doc-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:28px 0 8px}
.doc-cards a{display:block;padding:18px 18px 16px;border:1px solid var(--line);border-radius:16px;background:var(--panel);text-decoration:none!important;transition:border-color .25s,transform .25s var(--ease)}
.doc-cards a:hover{border-color:var(--accent);transform:translateY(-2px)}
.doc-cards b{display:block;color:var(--ink);font-size:17px;margin-bottom:4px}
.doc-cards span{display:block;color:var(--muted);font-size:14.5px;line-height:1.5}
.doc-pn{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:64px;padding-top:28px;border-top:1px solid var(--line)}
.doc-pn a{display:block;padding:16px 18px;border:1px solid var(--line);border-radius:14px;color:var(--ink);font-weight:600;transition:border-color .25s}
.doc-pn a:hover{border-color:var(--accent)}
.doc-pn small{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:400;margin-bottom:4px}
.doc-pn .next{text-align:right}
.doc-toc{position:sticky;top:96px}
.doc-toc .mono{font-size:11px;color:var(--dim);margin:6px 0 10px;display:block}
.doc-toc ul{list-style:none;margin:0;padding:0}
.doc-toc a{display:block;padding:5px 0;font-size:13.5px;color:var(--muted);line-height:1.4;transition:color .2s}
.doc-toc a:hover,.doc-toc a.on{color:var(--ink)}
.doc-toc a.on{box-shadow:inset 2px 0 0 var(--accent);padding-left:10px}
@media (max-width:1180px){.doc-grid{grid-template-columns:220px minmax(0,1fr)}.doc-toc{display:none}}
@media (max-width:860px){
  .doc-grid{grid-template-columns:minmax(0,1fr);gap:8px}
  .doc-side{position:static;max-height:none;overflow:visible;padding:0}
  .doc-menu-wide{display:none}
  .doc-menu{display:block;border:1px solid var(--line);border-radius:14px;background:var(--panel);margin-bottom:18px}
  .doc-menu summary{cursor:pointer;padding:12px 16px;font-weight:600;list-style:none}
  .doc-menu summary::-webkit-details-marker{display:none}
  .doc-menu summary::after{content:"▾";float:right;color:var(--muted)}
  .doc-menu .doc-nav{padding:0 16px 14px}
  .doc-cards{grid-template-columns:minmax(0,1fr)}
  .doc-pn{grid-template-columns:minmax(0,1fr)}
  .doc-pn .next{text-align:left}
  .doc-body p,.doc-body li{font-size:16px}
}
