/* Documentation preview theme. Historical content and media remain unchanged. */
.docs-sidebar .search-results-dropdown{position:static;width:100%;max-height:min(50vh,400px);margin-top:4px;overflow-y:auto;overflow-wrap:anywhere}
:root{color-scheme:light;--ink:#172c40;--muted:#5f6e7e;--accent:#0067b8;--line:#dce3e9;--surface:#f6f8fa}
*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font-family:'Segoe UI',system-ui,sans-serif;font-size:15px;line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #77baff;outline-offset:2px}
.docs-header{height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 32px;gap:20px;position:sticky;top:0;background:#fff;z-index:5}.docs-brand{font-size:20px;font-weight:700;letter-spacing:-.6px;color:#12314a;white-space:nowrap}.docs-brand span{color:#0876bd}.header-divider{width:1px;height:25px;background:#d4dce2}.header-label{font-weight:600;color:#465a6b}.header-github{margin-left:auto;font-size:14px;font-weight:600}.menu-toggle{display:none}
.docs-layout{display:grid;grid-template-columns:260px minmax(0,1fr) 210px;max-width:1600px;margin:auto}.docs-sidebar{position:sticky;top:64px;height:calc(100vh - 64px);overflow:auto;border-right:1px solid var(--line);padding:32px 22px}.sidebar-heading,.nav-label,.section-kicker,.eyebrow,.docs-toc>div{font-size:11px;letter-spacing:.12em;font-weight:700;color:#64798a}.sidebar-heading{margin-bottom:20px}.sidebar-search{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.docs-sidebar input{width:100%;padding:10px 12px;border:1px solid #b7c5d1;border-radius:4px;background:#fff;font:inherit}.docs-sidebar nav{display:flex;flex-direction:column;gap:2px;margin-top:28px}.nav-label{margin:20px 10px 8px}.docs-sidebar nav a{padding:7px 10px;border-radius:4px;color:#344d60;font-size:14px}.docs-sidebar nav a:hover,.docs-sidebar nav a[aria-current=page]{background:#eaf4fb;color:#005a9e;text-decoration:none}.docs-sidebar nav a[aria-current=page]{font-weight:700;border-left:3px solid #0078d4}.sidebar-note{margin:40px 10px;color:#778795;font-size:12px}
.docs-main{min-width:0;padding:30px 54px 90px}.docs-content{max-width:980px;margin:0 auto}.breadcrumbs{max-width:980px;margin:0 auto 30px;color:#728393;font-size:13px}.breadcrumbs span{padding-left:8px}.docs-hero{padding:28px 0 38px;border-bottom:1px solid var(--line)}.eyebrow{color:#0078bd}.docs-hero h1{font-size:clamp(35px,4vw,52px);line-height:1.12;letter-spacing:-1.8px;margin:14px 0 17px;color:#102d43;font-weight:650}.docs-hero p{font-size:18px;color:#526779;max-width:630px;margin:0}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:25px;font-weight:600}.primary-action{background:#0067b8;color:white;padding:10px 16px;border-radius:4px}.primary-action span{margin-left:15px}.quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0 45px}.quick-links a{border:1px solid var(--line);border-radius:6px;padding:20px;display:flex;flex-direction:column;gap:8px;color:var(--ink);min-height:140px}.quick-links a:hover{border-color:#78add0;text-decoration:none;box-shadow:0 5px 18px #173c5911}.quick-links span{color:#0072bd;font-size:10px;font-weight:700;letter-spacing:.09em}.quick-links strong{font-size:16px}.quick-links small{font-size:13px;color:#667987;line-height:1.45}.section-kicker{margin-bottom:4px}.docs-content h1{color:#102d43}.docs-content>.docs-hero+h1{font-size:28px}.docs-content>.archive-notice{display:none}.cards{display:block}.post-card{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;gap:25px;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;padding:20px 0;margin:0;background:transparent}.post-card .thumb{width:112px;height:78px;object-fit:contain;border-radius:4px}.post-card .card-body{padding:0;flex:1}.post-card h3{margin:3px 0;font-size:18px}.post-card p{margin:5px 0;color:#607182;font-size:14px}.post-card .button{display:none}.meta,.compact-meta{color:#687d8c;font-size:13px}.docs-content .post-full{max-width:850px;background:transparent;box-shadow:none;padding:0}.post-full header{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:28px}.post-full header h1{font-size:38px;line-height:1.2;letter-spacing:-.8px}.post-header-image img{max-width:130px}.post-content{font-size:16px;line-height:1.75}.post-content img{max-width:100%;height:auto}.post-content pre{overflow:auto;padding:16px;background:#f2f5f7;border:1px solid var(--line);border-radius:4px}.post-content table{display:block;max-width:100%;overflow:auto}.docs-toc{position:sticky;top:96px;align-self:start;border-left:1px solid var(--line);padding:10px 20px;margin-top:34px;font-size:13px}.docs-toc nav{display:flex;flex-direction:column;gap:10px;margin-top:15px}.docs-toc a{color:#536879}.docs-toc .toc-sub{padding-left:12px}.category-badge,.tag-badge{display:inline-block;background:#eef5fa;color:#245c80;padding:3px 8px;border-radius:3px;margin:3px;font-size:12px}.compact-post{border-bottom:1px solid var(--line);padding:12px 0}.compact-post h3{margin:2px 0}.pagination{margin:30px 0}footer{padding:20px;color:var(--muted)}
@media(max-width:1150px){.docs-layout{grid-template-columns:240px minmax(0,1fr)}.docs-toc{display:none}.docs-main{padding:30px 40px 70px}}
@media(max-width:700px){.docs-header{padding:0 16px;gap:12px}.header-label,.header-divider,.header-github{display:none}.menu-toggle{display:block;margin-left:auto;background:#fff;border:1px solid #aebfcb;border-radius:4px;padding:7px 10px;color:#23445c}.docs-layout{display:block}.docs-sidebar{display:none;position:fixed;top:64px;left:0;width:min(310px,90vw);height:calc(100vh - 64px);background:white;z-index:4;box-shadow:8px 10px 25px #172c4022}.docs-sidebar.is-open{display:block}.docs-main{padding:22px 20px 60px}.breadcrumbs{margin-bottom:15px}.docs-hero h1{font-size:36px}.quick-links{grid-template-columns:1fr}.quick-links a{min-height:0}.post-card .thumb{width:75px;height:65px}.post-full header h1{font-size:30px}}

/* Subtle surfaces keep the content area bright and the hierarchy clear. */
.docs-header{background:linear-gradient(110deg,#ffffff 38%,#eff6fc 100%);box-shadow:0 2px 12px #153b5910}
.docs-sidebar{background:linear-gradient(180deg,#f6f9fc 0%,#fff 70%)}
.docs-hero{background:linear-gradient(120deg,#edf6fc 0%,#f7fbfd 58%,#fff 100%);border:1px solid #d6e5ef;border-radius:8px;padding:32px 34px 38px;box-shadow:0 5px 22px #163e5910}
.quick-links a{background:linear-gradient(155deg,#fff 45%,#f2f7fb 100%);border-color:#cfdee8;box-shadow:0 3px 10px #173c590b}
.quick-links a:hover{background:#edf6fc;border-color:#598fb5;box-shadow:0 6px 18px #173c591a}
.primary-action{background:linear-gradient(110deg,#005a9e,#0067b8);box-shadow:0 2px 5px #00457730}
.primary-action:hover{background:#004e89;color:#fff}
.sidebar-heading,.nav-label,.section-kicker,.docs-toc>div{color:#4c6273}
.eyebrow,.quick-links span{color:#005b94}
.sidebar-note,.quick-links small,.post-card p,.meta,.compact-meta,.breadcrumbs{color:#536779}
.docs-sidebar nav a:hover,.docs-sidebar nav a[aria-current=page]{background:#dfedf8;color:#004f87}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #005a9e;outline-offset:3px}
@media(max-width:700px){.docs-hero{padding:25px 22px 29px}.docs-sidebar{background:#f6f9fc}}
@media(forced-colors:active){.docs-header,.docs-sidebar,.docs-hero,.quick-links a,.primary-action{background:Canvas;color:CanvasText;box-shadow:none}.primary-action{border:1px solid ButtonText;color:LinkText}.docs-sidebar nav a[aria-current=page]{border:2px solid Highlight;color:Highlight}}
.skip-link{position:fixed;left:12px;top:12px;z-index:20;padding:10px 16px;background:#fff;color:#004f87;border:2px solid #004f87;transform:translateY(-160%)}
.skip-link:focus{transform:none}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.primary-action span{display:inline-block;transition:transform 200ms cubic-bezier(.23,1,.32,1)}.primary-action:hover span{transform:translateX(3px)}.quick-links a{transition:transform 200ms cubic-bezier(.23,1,.32,1)}.quick-links a:hover{transform:translateY(-2px)}}
@media (prefers-reduced-motion:reduce){.primary-action span{transition:none}}
/* Selected light theme: option 5, layered blue-gray. */
.docs-header{background:linear-gradient(110deg,#eef5fa,#fff)}
.docs-sidebar{background:linear-gradient(180deg,#e8f0f6,#f6f8fa)}
.docs-hero{background:linear-gradient(115deg,#e5f1f8 0%,#f3f6f8 55%,#fff 100%);box-shadow:0 8px 24px #193f5b1c}
.quick-links a{background:linear-gradient(150deg,#f9fcfe,#eaf0f5);box-shadow:0 4px 14px #193f5b15}
@media(forced-colors:active){.docs-header,.docs-sidebar,.docs-hero,.quick-links a{background:Canvas;color:CanvasText;box-shadow:none}}
.docs-theme-toggle{margin-left:auto;border:1px solid #9aafbe;background:#fff;color:#173b55;border-radius:4px;padding:7px 11px;font:600 13px 'Segoe UI',system-ui,sans-serif;cursor:pointer;white-space:nowrap}.docs-theme-toggle+.header-github{margin-left:0}
.post-content a{text-decoration:underline;text-underline-offset:2px}
.post-content pre code{color:#172c40;background:transparent}
/* Selected light theme: graphite header and neutral gray surfaces. */
html[data-docs-theme="light"] .docs-header{background:#203443;border-color:#203443}
html[data-docs-theme="light"] .docs-brand,html[data-docs-theme="light"] .header-label,html[data-docs-theme="light"] .header-github{color:#fff}
html[data-docs-theme="light"] .docs-brand span{color:#a6dcff}
html[data-docs-theme="light"] .docs-header a:focus-visible,html[data-docs-theme="light"] .docs-header button:focus-visible{outline-color:#a6dcff}
html[data-docs-theme="light"] .docs-sidebar{background:#d5dce1;border-color:#a9becd}
html[data-docs-theme="light"] .sidebar-search,html[data-docs-theme="light"] .sidebar-note{color:#344d60}
html[data-docs-theme="light"] .docs-hero{background:linear-gradient(120deg,#dce3e8,#fff);border-color:#9fb9ca;box-shadow:0 8px 24px #193f5b20}
html[data-docs-theme="light"] .quick-links a{background:#e7edf1;border-color:#a7bdcc;box-shadow:0 4px 14px #193f5b18}
html[data-docs-theme="light"] .docs-sidebar nav a[aria-current=page]{background:#c2ddef;color:#003d6b}
@media(forced-colors:active){html[data-docs-theme="light"] .docs-header,html[data-docs-theme="light"] .docs-sidebar,html[data-docs-theme="light"] .docs-hero,html[data-docs-theme="light"] .quick-links a{background:Canvas;color:CanvasText;box-shadow:none}html[data-docs-theme="light"] .docs-brand,html[data-docs-theme="light"] .docs-brand span,html[data-docs-theme="light"] .header-github{color:LinkText}html[data-docs-theme="light"] .header-label{color:CanvasText}}
html[data-docs-theme="dark"]{color-scheme:dark;--ink:#e4edf5;--muted:#b9c9d7;--accent:#8dccff;--line:#405665;--surface:#182936}
html[data-docs-theme="dark"] body{background:#101b24;color:#e4edf5}
html[data-docs-theme="dark"] .docs-header{background:linear-gradient(110deg,#192d3c,#17212c);border-color:#405665;box-shadow:none}
html[data-docs-theme="dark"] .docs-brand,html[data-docs-theme="dark"] .header-label{color:#e6f1f9}html[data-docs-theme="dark"] .docs-brand span{color:#8dccff}
html[data-docs-theme="dark"] .docs-sidebar{background:linear-gradient(180deg,#1a2a37,#14212c);border-color:#405665}
html[data-docs-theme="dark"] .docs-hero{background:linear-gradient(115deg,#213c50,#192c3b 58%,#17232e);border-color:#456274;box-shadow:0 5px 22px #0004}
html[data-docs-theme="dark"] .quick-links a{background:linear-gradient(145deg,#243a49,#1b2c38);border-color:#526a78;color:#e4edf5}
html[data-docs-theme="dark"] .quick-links a:hover{background:#2b4658;border-color:#8dccff}
html[data-docs-theme="dark"] .docs-hero h1,html[data-docs-theme="dark"] .docs-content h1,html[data-docs-theme="dark"] .post-full h2,html[data-docs-theme="dark"] .post-full h3{color:#edf6fc}
html[data-docs-theme="dark"] .docs-hero p,html[data-docs-theme="dark"] .quick-links small,html[data-docs-theme="dark"] .sidebar-note,html[data-docs-theme="dark"] .breadcrumbs,html[data-docs-theme="dark"] .post-card p,html[data-docs-theme="dark"] .meta,html[data-docs-theme="dark"] .compact-meta{color:#b9c9d7}
html[data-docs-theme="dark"] .sidebar-heading,html[data-docs-theme="dark"] .nav-label,html[data-docs-theme="dark"] .section-kicker,html[data-docs-theme="dark"] .docs-toc>div{color:#b9c9d7}
html[data-docs-theme="dark"] .eyebrow,html[data-docs-theme="dark"] .quick-links span{color:#9cd4ff}
html[data-docs-theme="dark"] .docs-sidebar nav a,html[data-docs-theme="dark"] .docs-toc a{color:#d3e1eb}
html[data-docs-theme="dark"] .docs-sidebar nav a:hover,html[data-docs-theme="dark"] .docs-sidebar nav a[aria-current=page]{background:#29475b;color:#fff;border-color:#80c9ff}
html[data-docs-theme="dark"] .docs-sidebar input,html[data-docs-theme="dark"] .docs-theme-toggle,html[data-docs-theme="dark"] .menu-toggle{background:#192b38;border-color:#8297a6;color:#eef6fc}
html[data-docs-theme="dark"] .docs-sidebar input::placeholder{color:#b9c9d7}
html[data-docs-theme="dark"] .primary-action{background:#8dccff;color:#102a3d}html[data-docs-theme="dark"] .primary-action:hover{background:#bee3ff;color:#102a3d}
html[data-docs-theme="dark"] .category-badge,html[data-docs-theme="dark"] .tag-badge{background:#29475b;color:#d9efff}
html[data-docs-theme="dark"] .post-content pre{background:#1b2b38;border-color:#526a78;color:#e4edf5}
html[data-docs-theme="dark"] .post-content pre code{color:#e4edf5;background:transparent}
html[data-docs-theme="dark"] .post-card h3 a,html[data-docs-theme="dark"] .compact-post h3 a,html[data-docs-theme="dark"] .post-content a,html[data-docs-theme="dark"] .repo-edit a{color:#8dccff}
html[data-docs-theme="dark"] .pagination a.page-link{color:#102a3d;background:#8dccff;border-color:#8dccff}
html[data-docs-theme="dark"] .search-results-dropdown{background:#1b2c38;border-color:#8297a6}html[data-docs-theme="dark"] .search-result-item{background:#1b2c38;color:#e4edf5}html[data-docs-theme="dark"] .search-result-item:hover{background:#29475b}
html[data-docs-theme="dark"] .search-result-title{color:#b9e0ff}html[data-docs-theme="dark"] .search-result-footer{background:#1b2c38;color:#b9c9d7}
html[data-docs-theme="dark"] a:focus-visible,html[data-docs-theme="dark"] button:focus-visible,html[data-docs-theme="dark"] input:focus-visible{outline-color:#9cd4ff}
@media(max-width:700px){.docs-theme-toggle{margin-left:auto}.menu-toggle{margin-left:0}.docs-theme-toggle+.header-github{display:none}}
@media(max-width:420px){.docs-header{gap:8px;padding-inline:12px}.docs-brand{font-size:16px;letter-spacing:-.4px}.docs-theme-toggle,.menu-toggle{font-size:12px;padding:7px 8px}}
@media(forced-colors:active){html[data-docs-theme="dark"] body,html[data-docs-theme="dark"] .docs-header,html[data-docs-theme="dark"] .docs-sidebar,html[data-docs-theme="dark"] .docs-hero,html[data-docs-theme="dark"] .quick-links a{background:Canvas;color:CanvasText;box-shadow:none}html[data-docs-theme="dark"] a,html[data-docs-theme="dark"] .docs-brand,html[data-docs-theme="dark"] .docs-sidebar nav a{color:LinkText}html[data-docs-theme="dark"] .docs-hero h1,html[data-docs-theme="dark"] .docs-hero p,html[data-docs-theme="dark"] .quick-links small{color:CanvasText}}

/* Keep theme changes coordinated, including surfaces that use gradients. */
::view-transition-old(root),::view-transition-new(root){animation-duration:240ms;animation-timing-function:ease}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) and (forced-colors:none){
  .quick-links a{transition:transform 240ms cubic-bezier(.23,1,.32,1),border-color 240ms ease,box-shadow 240ms ease,background-color 240ms ease}
  .docs-sidebar nav a,.search-result-item,.docs-theme-toggle,.menu-toggle{transition:background-color 220ms ease,color 220ms ease,border-color 220ms ease,box-shadow 220ms ease}
  .primary-action{transition:filter 220ms ease,box-shadow 220ms ease,color 220ms ease}
  html[data-docs-theme="light"] .primary-action:hover{background:linear-gradient(110deg,#005a9e,#0067b8);filter:brightness(.9)}
  html[data-docs-theme="dark"] .primary-action:hover{background:#8dccff;filter:brightness(1.12)}
  html[data-docs-theme="dark"] .quick-links a:hover{background:linear-gradient(145deg,#243a49,#1b2c38);box-shadow:0 6px 18px #0006}
  .docs-theme-toggle:hover,.menu-toggle:hover{box-shadow:0 2px 8px #193f5b30}
}
@media (prefers-reduced-motion:reduce){
  .quick-links a,.docs-sidebar nav a,.search-result-item,.docs-theme-toggle,.menu-toggle,.primary-action{transition:none}
  ::view-transition-old(root),::view-transition-new(root){animation-duration:0s}
}
