[hidden] { display: none !important; }
:root {
  color-scheme: dark;
  --bg: #121212;
  --surface: #1d1d1d;
  --surface-raised: #2a2a2a;
  --surface-hover: #343434;
  --text: #f0f0f0;
  --muted: #aeaeae;
  --muted2: #999999;
  --line: rgba(230,230,230,.16);
  --line-dark: rgba(194,194,194,.4);
  --accent: #c2c2c2;
  --accent-strong: #d8d8d8;
  --accent-ink: #1d1d1d;
  --radius: 16px;
  --panel: radial-gradient(ellipse at 100% 0,rgba(151,151,151,.12),transparent 70%),var(--surface);
  --panel-shadow: inset 0 1px 0 #ffffff0e,0 24px 58px -34px #000000bb;
}
:root[data-theme="light"] {
  color-scheme: light;
  --bg: #f5f5f5;
  --surface: #fafafa;
  --surface-raised: #f0f0f0;
  --surface-hover: #e8e8e8;
  --text: #323232;
  --muted: #676767;
  --muted2: #6c6c6c;
  --line: rgba(79,79,79,.18);
  --line-dark: rgba(102,102,102,.4);
  --accent: #666666;
  --accent-strong: #515151;
  --accent-ink: #fcfcfc;
  --panel-shadow: inset 0 1px 0 #ffffff,0 24px 54px -36px #29292938;
}
body { background: var(--bg); color: var(--text); }
::selection { color: #1c1c1c; background: #c7c7c7; }
::-webkit-scrollbar-track { background: var(--bg); }
::-webkit-scrollbar-thumb { background: color-mix(in srgb,var(--accent) 35%,var(--bg)); }
::-webkit-scrollbar-thumb:hover { background: var(--accent); }
nav.site-nav { background: color-mix(in srgb,var(--bg) 90%,transparent); gap: 14px; }
.nav-links { gap: 0; padding: 4px; border: 1px solid var(--line); border-radius: 999px; background: linear-gradient(140deg,var(--surface-raised),var(--surface)); }
.nav-link-item, .nav-dropdown-btn { border-radius: 999px; }
.nav-dropdown-menu { background: var(--surface); border-radius: 16px; box-shadow: var(--panel-shadow); }
.dropdown-icon, .why-icon { color: var(--accent); background: var(--surface-raised); }
.dropdown-item:hover .dropdown-icon, .why-card:hover .why-icon { background: var(--accent); color: var(--accent-ink); }
.why-card:hover .why-icon svg { stroke: var(--accent-ink); }
.mobile-drawer { background: color-mix(in srgb,var(--bg) 96%,transparent); }
.mobile-sub-item, .mobile-nav-item:active, .kbd-shortcut { background: var(--surface); }
.site-theme-toggle { display: grid; flex: 0 0 auto; place-items: center; width: 34px; height: 34px; padding: 0; border: 1px solid var(--line); border-radius: 999px; color: var(--accent); background: var(--surface); cursor: pointer; font: 20px/1 system-ui; }
.site-theme-toggle:hover { border-color: var(--accent); }
.btn-nav, .btn-hero-primary, .btn-hero-secondary, .btn-cta-primary, .btn-cta-secondary { border-radius: 12px; }
.btn-nav--solid, .btn-hero-primary, .btn-cta-primary { background: linear-gradient(130deg,var(--accent-strong),var(--accent)); color: var(--accent-ink); box-shadow: inset 0 1px 0 #ffffff25; border-color: var(--accent); }
.btn-nav--solid:hover, .btn-hero-primary:hover, .btn-cta-primary:hover { background: var(--accent-strong); }
.btn-hero-secondary, .btn-cta-secondary { background: var(--surface); color: var(--text); border-color: var(--line); }
.btn-hero-secondary:hover, .btn-cta-secondary:hover { color: var(--text); background: var(--surface-raised); border-color: var(--accent); }
.button--mc-coffee { color: #c6c6c6 !important; background: #8e8e8e1a !important; border-color: #9e9e9e40 !important; border-radius: 999px; }
[data-theme="light"] .button--mc-coffee { color: #5e5e5e !important; }
.hero h1 em { background: linear-gradient(130deg,var(--text),var(--accent)); background-clip: text; -webkit-text-fill-color: transparent; }
.hero-logo-label { color: var(--text); }
.hero-logo-lines .line, .hero-logo-lines .line::after, .hero-chip-dot { background: var(--accent); }
.devs-card, .hero-terminal, .hero-stats, .code-panel, .file-tree-visual, .struct-note, .contribute-card, .docs-card, .policy-card { background: var(--panel); border-radius: 20px; border-color: var(--line); box-shadow: var(--panel-shadow); }
.devs-card:hover, .hero-terminal:hover, .hero-stats:hover, .code-panel:hover, .file-tree-visual:hover, .struct-note:hover, .contribute-card:hover, .docs-card:hover, .policy-card:hover { border-color: var(--line-dark); box-shadow: var(--panel-shadow); }
.hero-chip, .dev-tag, .cp-body, .edition-cell { background: var(--surface); }
.hero-chip { border-radius: 999px; }
.why-grid { gap: 18px; border: 0; background: transparent; overflow: visible; }
.why-card { border: 1px solid var(--line); border-radius: 20px; background: var(--panel); box-shadow: var(--panel-shadow); }
.why-card:hover { background: var(--surface-raised); }
.check-mark, .edition-label .lbl-oss { background: var(--accent); color: var(--accent-ink); }
.edition-label .lbl-pro { background: var(--surface-raised); }
.edition-row.ok::before, .step-row:hover .step-num, .docs-card h3 i, .policy-card h2 i { color: var(--accent); }
.ht-code, .cp-body pre, .ft-body { color: var(--muted); }
.ft-dir { color: var(--text); }
.cp-body pre .cm { color: var(--muted2); }
[data-theme="dark"] .ft-ext-css { color: #acacac; }
[data-theme="dark"] .ft-ext-md { color: #afafaf; }
.cta-section { background: var(--panel); border: 1px solid var(--line); border-radius: 24px; color: var(--text); box-shadow: var(--panel-shadow); margin: 24px max(20px,4vw); }
.cta-section .eyebrow { color: var(--accent); }
.cta-section .section-h { color: var(--text); }
.cta-section .section-lead { color: var(--muted); }
footer.site-footer { background: var(--surface); }
aside.docs-sidebar { background: var(--bg); }
.sidebar-link.active { border-left-color: var(--accent); }
.sidebar-link-tag { background: var(--surface-raised); color: var(--muted); }
.docs-header h1, .policy-header h1 { font-weight: 650; }
.search-modal { background: var(--surface); border-radius: 20px; }
.rating-btn { background: var(--surface); color: var(--text); border-radius: 10px; }
.pag-card:hover { border-color: var(--accent); }
.callout--tip { background: color-mix(in srgb,var(--accent) 10%,var(--surface)); color: var(--text); border-color: var(--line-dark); }
[data-theme="dark"] .callout--warn { background: #3b3b3b; border-color: #6d6d6d; color: #d6d6d6; }
.code-block .comment { color: #a1a1a1; }
@media (max-width: 1100px) { .nav-right .button--mc-coffee { font-size: 0; gap: 0; }.nav-right .button--mc-coffee i { font-size: .85rem; }.nav-link-item, .nav-dropdown-btn { padding-inline: 8px; } }
@media (max-width: 840px) { nav.site-nav { gap: 10px; }.site-theme-toggle { margin-left: auto; }.cta-section { padding-inline: 24px; } }
:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.nav-dropdown-wrap.is-open .nav-dropdown-menu { opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0) scale(1); }
nav.site-nav .nav-dropdown-wrap:not(.is-open) .nav-dropdown-menu { opacity: 0; visibility: hidden; pointer-events: none; }
.platform-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 32px; }
.platform-grid article { padding: 26px; border: 1px solid var(--line); border-radius: 20px; background: var(--panel); box-shadow: var(--panel-shadow); }
.platform-grid h3 { margin: 20px 0 8px; font-size: 1rem; }
.platform-grid p { color: var(--muted); font-size: .86rem; }
.platform-build-link { display: inline-flex; align-items: center; gap: 8px; padding: 10px 18px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); color: var(--text); font-size: .88rem; font-weight: 700; }
.search-empty { padding: 22px; color: var(--muted); font-size: .88rem; }
.search-input-wrap .kbd-shortcut { white-space: nowrap; }
@media (max-width: 768px) { .platform-grid { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } .reveal, body.page-entering { opacity: 1; transform: none; } }
img, svg { filter: grayscale(1); }
.button--mc-coffee i, .ft-ext-css, .ft-ext-md, .code-block .keyword, .code-block .string { color: var(--text) !important; }
.docs-sidebar { scrollbar-width: none; }
.docs-sidebar::-webkit-scrollbar { display: none; }
.nav-dropdown-wrap::after { content: ""; position: absolute; top: 100%; left: 0; width: 100%; height: 24px; }
.kv-depth-card { opacity: 0; transform: perspective(1200px) rotateX(8deg) translateY(32px) scale(.978); transform-style: preserve-3d; transition: opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1),box-shadow .25s ease; box-shadow: inset 0 1px 0 #fff1,0 7px 0 -3px var(--surface-raised),0 8px 0 -3px var(--line),0 30px 60px -38px #000a !important; }
.kv-depth-card--visible { opacity: 1; transform: perspective(1200px) rotateX(var(--kv-tilt-x,0deg)) rotateY(var(--kv-tilt-y,0deg)); }.kv-depth-card--visible:hover { box-shadow: inset 0 1px 0 #fff2,0 9px 0 -3px var(--surface-raised),0 10px 0 -3px var(--line),0 40px 72px -42px #000c !important; }
@media (max-width: 640px), (prefers-reduced-motion: reduce) { .kv-depth-card { opacity: 1; transform: none; transition: none; } }
.source-architecture { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; overflow: hidden; padding: clamp(28px,5vw,64px); border: 1px solid var(--line); border-radius: 28px; background: radial-gradient(ellipse at 95% 0,color-mix(in srgb,var(--text) 12%,transparent),transparent 65%),var(--surface); box-shadow: var(--panel-shadow); }
.source-architecture::before { content: ''; position: absolute; inset: 0; opacity: .16; background: radial-gradient(var(--text) .6px,transparent .7px) 0 0/5px 5px; mask-image: linear-gradient(110deg,transparent 25%,black); pointer-events: none; }
.source-architecture__copy, .source-architecture__visual { position: relative; min-width: 0; }
.source-architecture h2 { font-size: clamp(2rem,3.8vw,3.6rem); line-height: 1.02; letter-spacing: -.05em; margin: 22px 0; }
.source-architecture__copy > p:not(.eyebrow) { color: var(--muted); line-height: 1.8; }
.source-architecture ul { padding: 0; list-style: none; margin: 25px 0 30px; display: grid; gap: 10px; color: var(--muted); font-size: 13px; }.source-architecture li::before { content: '✓'; margin-right: 12px; color: var(--text); }
.source-architecture__visual { perspective: 1000px; padding-bottom: 48px; }
.source-architecture__window { padding-bottom: 10px; border: 1px solid var(--line); border-radius: 18px; background: var(--bg); box-shadow: 12px 14px 0 -4px var(--surface-raised),12px 14px 0 -3px var(--line),0 35px 40px -30px #0008; transform: rotateY(-10deg) rotateX(5deg); }
.source-architecture__window header { display: flex; align-items: center; gap: 8px; padding: 17px; border-bottom: 1px solid var(--line); font: 8px var(--mono); letter-spacing: .08em; }.source-architecture__window header span { margin-left: auto; color: var(--muted); }
.source-architecture__window > div { margin: 14px; padding: 17px; border: 1px solid var(--line); border-radius: 11px; background: var(--surface); }.source-architecture__window > div span { display: block; color: var(--muted2); font: 8px var(--mono); margin-bottom: 5px; }.source-architecture__window strong { font-size: 17px; }.source-architecture__window p { color: var(--muted); font-size: 11px; }
.source-architecture__float { position: absolute; display: flex; align-items: center; gap: 14px; bottom: 15px; left: -20px; right: 20px; padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-raised); transform: rotate(-3deg); box-shadow: 0 20px 30px -20px #000b; }.source-architecture__float span { display: grid; gap: 3px; }.source-architecture__float strong { font-size: 12px; }.source-architecture__float small { color: var(--muted); font: 9px var(--mono); }.source-architecture__float > i:last-child { margin-left: auto; }
@media (max-width: 800px) { .source-architecture { grid-template-columns: 1fr; gap: 24px; }.source-architecture__visual { width: min(100%,440px); margin-inline: auto; }.source-architecture__float { left: 0; right: 0; } }
@media (prefers-reduced-motion: reduce) { .source-architecture__window, .source-architecture__float { transform: none; } }
.ht-dot, .cp-dot { background: var(--muted) !important; }
.ft-ext-js, .ft-ext-json { color: var(--text) !important; }
