*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0d1117;--bg-surface: #161b22;--bg-card: #1c2128;--bg-hover: #242b35;--border: #30363d;--text: #e6edf3;--text-muted: #8b949e;--text-dim: #6e7681;--accent: #58a6ff;--accent-dim: #1f3a5f;--green: #3fb950;--green-dim: #1a472a;--orange: #d29922;--orange-dim: #3d2e00;--red: #f85149;--purple: #bc8cff;--purple-dim: #2a1a47;--cyan: #39d2c0;--cyan-dim: #0d3330;--pink: #f778ba;--sidebar-width: 240px;--font-mono: "Cascadia Code", "Fira Code", "JetBrains Mono", monospace;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.6;display:flex;min-height:100vh}#sidebar{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;background:var(--bg-surface);border-right:1px solid var(--border);overflow-y:auto;z-index:100;display:flex;flex-direction:column}.sidebar-header{padding:1.5rem 1.25rem 1rem;border-bottom:1px solid var(--border)}.sidebar-header h1{font-size:1.1rem;font-weight:700;color:var(--accent);line-height:1.3;letter-spacing:-.02em}#sidebar ul{list-style:none;padding:.5rem 0;flex:1}#sidebar li{margin:0}.nav-link{display:block;padding:.5rem 1.25rem;color:var(--text-muted);text-decoration:none;font-size:.85rem;border-left:3px solid transparent;transition:all .15s ease}.nav-link:hover{color:var(--text);background:var(--bg-hover)}.nav-link.active{color:var(--accent);border-left-color:var(--accent);background:var(--accent-dim)}#content{margin-left:var(--sidebar-width);flex:1;max-width:none;padding:2rem 3rem 6rem}section{margin-bottom:4rem;scroll-margin-top:1.5rem}h2{font-size:1.75rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border);color:var(--text)}h3{font-size:1.15rem;font-weight:600;margin-top:2rem;margin-bottom:.75rem;color:var(--text)}p{margin-bottom:.75rem;color:var(--text-muted)}p.lead{font-size:1.05rem;color:var(--text);margin-bottom:1.5rem}strong{color:var(--text);font-weight:600}code{font-family:var(--font-mono);font-size:.85em;background:var(--bg-card);padding:.15em .4em;border-radius:4px;color:var(--accent)}ol,ul{margin-left:1.5rem;margin-bottom:.75rem;color:var(--text-muted)}li{margin-bottom:.25rem}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:1.25rem;margin-bottom:1rem}.card h3{margin-top:0;font-size:1rem;color:var(--accent)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.callout{border-radius:8px;padding:1rem 1.25rem;margin:1.25rem 0;border-left:4px solid}.callout.info{background:var(--accent-dim);border-color:var(--accent)}.callout.warning{background:var(--orange-dim);border-color:var(--orange)}.callout.warning strong{color:var(--orange)}.callout.info strong{color:var(--accent)}.callout p{margin:0;color:var(--text)}.ref-table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.9rem}.ref-table th{background:var(--bg-surface);color:var(--text);font-weight:600;text-align:left;padding:.6rem .75rem;border-bottom:2px solid var(--border)}.ref-table td{padding:.5rem .75rem;border-bottom:1px solid var(--border);color:var(--text-muted);vertical-align:top}.ref-table tr:hover td{background:var(--bg-hover)}.ref-table.compact td,.ref-table.compact th{padding:.35rem .6rem;font-size:.82rem}.component-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin:1rem 0}.component-card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:1rem;display:flex;flex-direction:column}.component-card p{font-size:.85rem;flex:1}.component-header{font-family:var(--font-mono);font-size:.85rem;font-weight:600;padding:.35rem .6rem;border-radius:4px;margin-bottom:.75rem;display:inline-block;align-self:flex-start}.component-header.storage{background:#2a2a1a;color:#ffeb3b;border:1px solid #5a5a1a}.component-header.dynvar{background:var(--green-dim);color:var(--green);border:1px solid #2a5a2a}.component-header.driver{background:var(--purple-dim);color:var(--purple);border:1px solid #4a2a6a}.component-header.flux{background:#471a2a;color:var(--pink);border:1px solid #6a2a4a}.component-header.cloud{background:var(--cyan-dim);color:var(--cyan);border:1px solid #1a5a55}.type-string{display:block;margin-top:.5rem;font-size:.75rem;color:var(--text-dim);word-break:break-all}.diagram-container{margin:1.5rem 0;text-align:center}.diagram-container svg{max-width:100%;height:auto}.mermaid{margin:1.5rem 0;text-align:center;overflow-x:auto}.type-anatomy{display:flex;align-items:center;flex-wrap:wrap;gap:0;font-family:var(--font-mono);font-size:1.2rem;padding:1.25rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;margin:1rem 0;justify-content:center}.type-part{padding:.3rem .1rem;font-weight:600}.type-part.assembly{color:#ff7b72}.type-part.namespace{color:#d2a8ff}.type-part.classname{color:#79c0ff}.type-part.generic{color:#56d364}.type-legend{display:flex;gap:1.5rem;justify-content:center;margin-bottom:1.5rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--text-muted)}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.dot.assembly{background:#ff7b72}.dot.namespace{background:#d2a8ff}.dot.classname{background:#79c0ff}.dot.generic{background:#56d364}.tag-list{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0}.tag{font-family:var(--font-mono);font-size:.8rem;padding:.25rem .6rem;border-radius:12px;font-weight:500}.tag.value{background:#1a2a47;color:var(--accent);border:1px solid #2a4a6a}.tag.ref{background:#472a1a;color:var(--orange);border:1px solid #6a4a1a}.small-note{font-size:.8rem;color:var(--text-dim)}details{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;margin:.75rem 0}details summary{padding:.75rem 1rem;cursor:pointer;font-weight:600;color:var(--text);-webkit-user-select:none;user-select:none}details summary:hover{background:var(--bg-hover);border-radius:8px}details[open] summary{border-bottom:1px solid var(--border);border-radius:8px 8px 0 0}details .ref-table{margin:0}details .ref-table td,details .ref-table th{padding:.4rem 1rem}.euler-diagram text{font-family:var(--font-sans)}.euler-diagram .label{fill:var(--text);font-weight:600}.euler-diagram .sublabel{fill:var(--text-muted);font-size:12px}.euler-diagram .highlight{fill:var(--orange);font-weight:700}@media(max-width:900px){#sidebar{display:none}#content{margin-left:0;padding:1.5rem}.two-col,.component-grid{grid-template-columns:1fr}}
