/* The API's reference (docs/api/, generated from panel.proto): what legal.css sets for reading,
   with the contents beside the page and the landing's font for code. */
@font-face{font-family:'JetBrains Mono';font-weight:400 500;font-display:swap;src:url(/fonts/jetbrains-mono-latin.woff2) format('woff2')}

:root{--mono:'JetBrains Mono',ui-monospace,monospace}
html{scroll-behavior:smooth;scroll-padding-top:20px}

.api{display:grid;grid-template-columns:220px minmax(0,1fr);gap:72px;align-items:start}

.toc{position:sticky;top:0;max-height:100vh;overflow-y:auto;padding:80px 0 40px;font-size:15px;font-weight:500;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.toc summary{display:none}
.toc nav{display:flex;flex-direction:column}
.toc a{padding:5px 0;color:var(--muted);text-decoration:none}
.toc a:hover{color:var(--text)}
.toc h2{margin:24px 0 6px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.toc .rpc{font-family:var(--mono);font-size:13px;letter-spacing:0}

.api .doc{max-width:820px}
.doc .meta{font-size:19px;line-height:1.45;color:var(--soft)}
.doc h3{margin:36px 0 0;font-size:19px;line-height:1.3;font-weight:600;color:var(--text)}
.doc h4{margin:28px 0 0;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.doc ol{margin:16px 0 0;padding-left:22px}
.doc code{padding:1px 5px;border-radius:5px;background:rgba(255,255,255,.07);font-family:var(--mono);font-size:.84em;letter-spacing:0;color:var(--text)}
.doc a code{background:rgba(183,156,245,.14)}
.doc pre{margin:16px 0 0;padding:16px 18px;border-radius:12px;background:var(--card);overflow-x:auto;font-family:var(--mono);font-size:13.5px;line-height:1.6;letter-spacing:0;color:var(--text)}

/* A method, or a type: its name, what it is, and its fields. */
.def{margin-top:40px}
.def + .def{padding-top:40px;border-top:1px solid var(--line)}
.def h3{margin:0;font-family:var(--mono);font-size:20px;letter-spacing:-0.01em}
.def h3 a,.sig a{text-decoration:none}
.def h3 small{margin-left:8px;font-family:'Onest',system-ui,sans-serif;font-size:15px;font-weight:500;color:var(--muted)}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.doc .tags{margin-top:12px}
.tag{padding:3px 10px;border-radius:999px;background:var(--card);font-size:12.5px;font-weight:600;color:var(--soft)}
.tag.tool{background:rgba(183,156,245,.16);color:var(--accent)}
.tag.warn{background:rgba(240,170,120,.14);color:#f0b48a}
.endpoint b{font-weight:500;color:var(--accent)}

.fields{margin-top:10px;border-top:1px solid var(--line)}
.field{padding:14px 0;border-bottom:1px solid var(--line);font-size:15.5px;line-height:1.55}
.field p,.field ul{margin:6px 0 0}
.sig{font-family:var(--mono);font-size:14px;font-weight:500;letter-spacing:0;color:var(--text)}
.sig .type{margin-left:8px;font-weight:400;color:var(--muted)}
.sig .type a{color:var(--accent)}
.oneof{padding-left:16px;border-left:2px solid var(--line)}
.oneof-head{padding-top:14px;font-size:14px;color:var(--muted)}
.oneof > p{margin:6px 0 0;font-size:15.5px}
.doc .none{font-size:15.5px;color:var(--muted)}
.doc .index{display:flex;flex-wrap:wrap;gap:8px 16px;font-family:var(--mono);font-size:13.5px;letter-spacing:0}

/* Where a link on the page led. */
.field:target{margin:0 -12px;padding-left:12px;padding-right:12px;border-radius:8px;background:rgba(183,156,245,.1)}
.def:target > h3 a,h4:target{color:var(--accent)}

@media (max-width:900px){
  .api{display:block}
  .toc{position:static;max-height:none;margin-top:16px;padding:0;border-radius:12px;background:var(--card)}
  .toc summary{display:block;padding:14px 18px;font-weight:600;cursor:pointer}
  .toc nav{padding:0 18px 16px}
  .toc h2{margin-top:16px}
}
