modular session management daemon
Something went wrong. Try again.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023:root { /* Palettes created with: https://www.tints.dev/?output=oklch&version=4 */ --neutral-50: oklch(0.958 0.004 315.23); --neutral-100: oklch(0.915 0.009 314.98); --neutral-200: oklch(0.83 0.018 311.64); --neutral-300: oklch(0.735 0.027 308.1); --neutral-400: oklch(0.65 0.036 305.11); --neutral-500: oklch(0.564 0.043 301.96); --neutral-600: oklch(0.478 0.042 298.9); --neutral-700: oklch(0.381 0.036 295.59); --neutral-800: oklch(0.295 0.029 293.15); --neutral-900: oklch(0.207 0.022 288.52); --neutral-950: oklch(0.144 0.015 284.33);
--purple-50: oklch(0.974 0.011 297.77); --purple-100: oklch(0.95 0.02 295.26); --purple-200: oklch(0.899 0.045 291.06); --purple-300: oklch(0.858 0.066 288.75); --purple-400: oklch(0.807 0.094 284.78); --purple-500: oklch(0.757 0.127 280.94); --purple-600: oklch(0.643 0.18 281.15); --purple-700: oklch(0.533 0.231 281.62); --purple-800: oklch(0.402 0.196 285.08); --purple-900: oklch(0.272 0.121 290.44); --purple-950: oklch(0.207 0.084 293.71);
--orange-50: oklch(0.983 0.011 84.53); --orange-100: oklch(0.965 0.024 77.45); --orange-200: oklch(0.94 0.044 77.22); --orange-300: oklch(0.907 0.074 77.91); --orange-400: oklch(0.882 0.098 76.87); --orange-500: oklch(0.85 0.139 78.45); --orange-600: oklch(0.71 0.134 81.98); --orange-700: oklch(0.562 0.101 83.56); --orange-800: oklch(0.425 0.071 85.35); --orange-900: oklch(0.275 0.042 85.54); --orange-950: oklch(0.207 0.03 89.51);
--primary-50: var(--purple-50); --primary-100: var(--purple-100); --primary-200: var(--purple-200); --primary-300: var(--purple-300); --primary-400: var(--purple-400); --primary-500: var(--purple-500); --primary-600: var(--purple-600); --primary-700: var(--purple-700); --primary-800: var(--purple-800); --primary-900: var(--purple-900); --primary-950: var(--purple-950);
--accent-50: var(--orange-50); --accent-100: var(--orange-100); --accent-200: var(--orange-200); --accent-300: var(--orange-300); --accent-400: var(--orange-400); --accent-500: var(--orange-500); --accent-600: var(--orange-600); --accent-700: var(--orange-700); --accent-800: var(--orange-800); --accent-900: var(--orange-900); --accent-950: var(--orange-950);
/* Light Mode Colors */ --bg-color: #ffffff; --bg-surface: #f8fafc; --bg-surface-2: #f1f5f9; --text-color: #334155; --text-muted: #64748b; --heading-color: #0f172a; --link-color: #3b82f6; --link-hover-color: #2563eb;
/* Accent */ --brand: var(--link-color); --brand-hover: var(--link-hover-color); --focus-ring: rgba(59, 130, 246, 0.35); --border-strong: #cbd5e1;
--border-color: #e2e8f0; --table-border-color: #cbd5e1; --code-bg: #f1f5f9; --header-bg: rgba(255, 255, 255, 0.8); --header-text: #1e293b; --header-muted: #64748b; --header-border: #e2e8f0; --sidebar-bg: #f8fafc; --sidebar-hover: #eef1f6; --sidebar-active: #e6eaf1; --footer-bg: #f1f5f9; --shadow-color: rgba(15, 23, 42, 0.08); --shadow-color-darker: rgba(15, 23, 42, 0.12);
/* Admonition colors */ --admonition-note-color: #3b82f6; --admonition-tip-color: #10b981; --admonition-warning-color: #f59e0b; --admonition-danger-color: #ef4444; --admonition-info-color: #6366f1; --admonition-important-color: #8b5cf6; --admonition-example-color: #06b6d4; --admonition-caution-color: #f97316;
/* Spacing */ --space-1: 0.25rem; --space-2: 0.5rem; --space-3: 0.75rem; --space-4: 1rem; --space-6: 1.5rem; --space-8: 2rem; --space-12: 3rem; --space-16: 4rem; --header-height: calc(var(--space-4) * 4);
/* UI Elements */ --radius-sm: 0.25rem; --radius-md: 0.375rem; --radius-lg: 0.5rem; --radius-xl: 0.75rem; --shadow-sm: 0 1px 2px var(--shadow-color); --shadow-md: 0 4px 6px -1px var(--shadow-color), 0 2px 4px -2px var(--shadow-color); --shadow-lg: 0 10px 15px -3px var(--shadow-color), 0 4px 6px -4px var(--shadow-color); --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1); --transition: 250ms cubic-bezier(0.4, 0, 0.2, 1);
/* Fonts */ --font-mono: "JetBrains Mono", monospace;}
@media (prefers-color-scheme: dark) { :root { /* Dark Mode Colors */ --bg-color: var(--neutral-950); --bg-surface: var(--neutral-900); --bg-surface-2: #334155; --text-color: #e2e8f0; --text-muted: #94a3b8; --heading-color: var(--neutral-100); --link-color: #60a5fa; --link-hover-color: #93c5fd;
--brand: var(--link-color); --brand-hover: var(--link-hover-color); --focus-ring: rgba(96, 165, 250, 0.4); --border-strong: var(--neutral-700);
--border-color: var(--neutral-800); --code-bg: #111827; --code-border: var(--neutral-800); --header-bg: color-mix(in oklch, var(--neutral-950) 80%, transparent); --header-text: var(--neutral-100); --header-muted: var(--neutral-400); --header-border: var(--neutral-800); --sidebar-bg: var(--neutral-900); --sidebar-hover: var(--neutral-800); --sidebar-active: var(--neutral-700); --footer-bg: var(--neutral-900); --shadow-color: rgba(0, 0, 0, 0.25); --shadow-color-darker: rgba(0, 0, 0, 0.35);
/* Admonition Colors */ --admonition-note-color: #3b82f6; --admonition-tip-color: #10b981; --admonition-warning-color: #f59e0b; --admonition-danger-color: #ef4444; --admonition-info-color: #6366f1; --admonition-important-color: #8b5cf6; --admonition-example-color: #06b6d4; --admonition-caution-color: #f97316; }}
/* Smooth scrolling */html { scroll-behavior: smooth;}
::view-transition-old(root),::view-transition-new(root) { animation-duration: 0s;}
/* Core Layout */body { font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; font-size: 16px; line-height: 1.7; color: var(--text-color); background-color: var(--bg-color); margin: 0; padding: 0; transition: background-color var(--transition), color var(--transition); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}
/* Footnotes */section.footnotes { margin-top: 2em; padding-top: 1em; border-top: 1px solid var(--border-color, #e2e8f0); font-size: 0.95em; color: var(--text-muted, #64748b);}section.footnotes ol { padding-left: 1.5em; margin: 0;}section.footnotes li { margin-bottom: 0.5em; position: relative;}section.footnotes p { display: inline;}.footnote-ref { vertical-align: super; font-size: 0.8em; line-height: 1; margin-left: 0.1em;}.footnote-backref { text-decoration: none; margin-left: 0.25em; font-size: 0.8em; color: var(--link-color, #3b82f6);}.footnote-backref:hover { text-decoration: underline;}
.container { display: flex; flex-direction: column; min-height: 100vh; width: 100%; max-width: 100%; margin: 0 auto;}
/* Header Styling */header { background-color: var(--header-bg); padding-inline: var(--space-6); position: sticky; display: flex; gap: var(--space-6); align-items: center; border-bottom: 1px solid var(--header-border); z-index: 100; top: 0px; transition: background-color var(--transition), border-color var(--transition); backdrop-filter: saturate(180%) blur(12px); -webkit-backdrop-filter: saturate(180%) blur(12px); height: var(--header-height);}
.header-left { display: flex; align-items: center; gap: var(--space-6);}
.site-title { margin: 0; font-size: 1.25rem; font-weight: 600; letter-spacing: -0.01em; border-bottom: none;
a { color: var(--header-text); text-decoration: none; transition: opacity var(--transition-fast); }
a:hover { opacity: 0.9; text-decoration: none; }}
/* Header navigation styling */.header-nav { position: sticky; top: 0; background-color: var(--header-bg); z-index: 101;
ul { display: flex; list-style: none; margin: 0; padding: 0; gap: var(--space-4); }
li { position: relative; }
a { color: var(--header-muted); text-decoration: none; font-size: 0.95rem; font-weight: 500; padding: var(--space-2) 0; transition: color var(--transition-fast); display: block; }
a:hover { color: var(--header-text); text-decoration: none; }
/* Active item, highlighted */ li.active a { color: var(--link-color); font-weight: 600; }}
/* Layout */.layout { display: flex; flex: 1;}
.no-js .js-only { display: none !important;}
.noscript-message { padding: var(--space-4); border: 1px solid var(--border-color); border-radius: var(--radius-md); background-color: var(--sidebar-bg); color: var(--text-muted);}
/* Content container */.content { max-width: 800px; width: 100%; padding: var(--space-8); box-sizing: border-box; margin: 0 auto; position: relative; z-index: 1;}
/* Sidebar */.sidebar { position: fixed; left: 0; top: var(--header-height); width: 300px; height: calc(100vh - var(--header-height)); background-color: var(--sidebar-bg); padding: var(--space-4); border-right: 1px solid var(--border-color); overflow-y: auto; z-index: 10; box-sizing: border-box; transition: transform var(--transition); font-size: 0.875rem; scrollbar-gutter: stable;
h2 { font-size: 0.875rem; text-transform: uppercase; letter-spacing: 0.05em; margin-top: var(--space-6); margin-bottom: var(--space-2); color: var(--text-muted); font-weight: 600; transition: color var(--transition); }
ul { padding-left: 0; list-style-type: none; margin: var(--space-3) 0; }
li { margin-bottom: var(--space-1); }
a { color: var(--text-color); text-decoration: none; display: block; padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); transition: color var(--transition-fast), background-color var(--transition-fast); font-size: 0.875rem;
&:hover { color: var(--heading-color); background-color: var(--sidebar-hover); }
&.active { color: var(--link-color); background-color: var(--sidebar-active); font-weight: 600; } }
.sidebar-collapsed &, .sidebar-collapsed-init & { transform: translateX(-100%); }}
.no-js .sidebar { position: sticky; flex: 0 0 300px; top: var(--header-height); height: calc(100vh - var(--header-height)); transform: none !important; z-index: 1;}
/* Sidebar Toggle Button */.sidebar-toggle { position: fixed; left: 300px; top: 50%; transform: translateY(-50%); width: 28px; height: 48px; background-color: var(--sidebar-bg); border: 1px solid var(--border-color); border-left: none; border-radius: 0 var(--radius-md) var(--radius-md) 0; cursor: pointer; z-index: 20; transition: left var(--transition); display: flex; align-items: center; justify-content: center;
.sidebar-collapsed & { left: 0; }
.sidebar-collapsed & svg { transform: rotate(180deg); }
&:hover { background-color: var(--sidebar-hover); }
svg { width: 16px; height: 16px; fill: var(--text-color); transition: transform var(--transition); }
.sidebar-collapsed &, .sidebar-collapsed-init & { left: 0; }
.sidebar-collapsed & svg, .sidebar-collapsed-init & svg { transform: rotate(180deg); }}
/* Footer */footer { background-color: var(--footer-bg); padding: var(--space-6); text-align: center; font-size: 0.875rem; color: var(--text-muted); margin-top: auto; border-top: 1px solid var(--border-color); transition: background-color var(--transition), border-color var(--transition);}
.content { h1, h2, h3, h4, h5, h6 { color: var(--heading-color); line-height: 1.3; margin-top: 1.75em; margin-bottom: 0.75em; position: relative; cursor: pointer; font-weight: 600; transition: color var(--transition); letter-spacing: -0.015em; }
h1:hover, h2:hover, h3:hover, h4:hover, h5:hover, h6:hover { color: var(--link-color); }
h1 { font-size: 2.25rem; border-bottom: 2px solid var(--border-color); padding-bottom: 0.5rem; margin-top: 1em; transition: border-color var(--transition); }
h2 { font-size: 1.75rem; transition: border-color var(--transition); }
h3 { font-size: 1.5rem; }
h4 { font-size: 1.25rem; }
/* Add scroll margin to headings */ h1[id], h2[id], h3[id], h4[id], h5[id], h6[id] { scroll-margin-top: 80px; }
p { margin: 1.25em 0; line-height: 1.8; }}
/* Links */a { color: var(--link-color); text-decoration: none; transition: color var(--transition-fast), text-decoration-color var(--transition-fast); text-underline-offset: 0.15em;}
a:hover { color: var(--link-hover-color); text-decoration: underline; text-decoration-thickness: from-font;}
/* Visible keyboard focus everywhere interactive. */a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,.copy-link:focus-visible { outline: 2px solid var(--brand); outline-offset: 2px; border-radius: var(--radius-sm);}
/* Code Styling */code { font-family: var(--font-mono); background-color: var(--code-bg); border-radius: var(--radius-sm); padding: 0.2em 0.4em; font-size: 0.875em; transition: background-color var(--transition); letter-spacing: -0.025em; border: 1px solid var(--code-border);}
pre { background-color: var(--code-bg); padding: var(--space-4); border-radius: var(--radius-md); overflow-x: auto; margin: 1.5em 0; border: 1px solid var(--border-color); transition: background-color var(--transition), border-color var(--transition); line-height: 1.6; position: relative;}
pre code { background-color: transparent; padding: 0; border-radius: 0; font-size: 0.9em; border: none;}
pre:hover::before { opacity: 0.7;}
/* Quotes */blockquote { border-left: 4px solid var(--link-color); padding: var(--space-4) var(--space-6); margin: var(--space-6) 0; background-color: var(--sidebar-bg); border-radius: 0 var(--radius-md) var(--radius-md) 0; color: var(--text-color); font-style: italic; transition: border-color var(--transition), background-color var(--transition);}
blockquote p:first-of-type { margin-top: 0;}
blockquote p:last-of-type { margin-bottom: 0;}
/* Tables */table { border-collapse: collapse; width: 100%; margin: var(--space-6) 0; border-radius: var(--radius-md); overflow: hidden; box-shadow: var(--shadow-sm);}
th,td { border: 1px solid var(--border-color); padding: var(--space-2) var(--space-3); text-align: left; transition: border-color var(--transition);}
th { background-color: var(--sidebar-bg); font-weight: 600; transition: background-color var(--transition); border-bottom-width: 2px;}
@media (prefers-color-scheme: light) { :root { --table-border-color: #cbd5e1; }
th, td { border-color: var(--table-border-color); }}
@media (prefers-color-scheme: dark) { :root { --table-border-color: var(--neutral-800); }
th, td { border-color: var(--table-border-color); }}
/* Images */img { max-width: 100%; height: auto; border-radius: var(--radius-md); display: block; margin: var(--space-6) auto; box-shadow: var(--shadow-md);}
/* Search */.search-container { position: relative; margin-left: auto;}
/* Desktop search input */#search-input { padding: var(--space-2) var(--space-3); padding-left: 2.5rem; border: 1px solid var(--border-color); border-radius: var(--radius-lg); width: 240px; font-size: 0.875rem; background-color: var(--bg-surface); color: var(--text-color); transition: background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), width var(--transition); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: 0.75rem center; background-size: 1rem; cursor: text;}
#search-input::placeholder { color: var(--text-muted);}
/* Expand input when focused OR when results are visible */.search-container:focus-within #search-input,.search-container.has-results #search-input { outline: none; background-color: var(--bg-color); border-color: var(--brand); box-shadow: 0 0 0 3px var(--focus-ring); width: 320px;}
.search-results { position: absolute; top: calc(100% + var(--space-2)); right: 0; width: 350px; max-height: 500px; overflow-y: auto; background-color: var(--sidebar-bg); border: 1px solid var(--border-color); border-radius: var(--radius-md); box-shadow: var(--shadow-lg); display: none; z-index: 1000; transition: background-color var(--transition), border-color var(--transition);}
.search-result-item { padding: var(--space-4); border-bottom: 1px solid var(--border-color); transition: border-color var(--transition); min-height: 44px; display: flex; align-items: center;}
.search-result-item:last-child { border-bottom: none;}
.search-result-item a { color: var(--text-color); text-decoration: none; display: block; flex-grow: 1;}
.search-result-item:hover { background-color: var(--sidebar-hover);}
.search-result-item.search-result-active { background-color: var(--sidebar-active); border-left: 3px solid var(--link-color);}
.search-result-title { font-weight: 600; margin-bottom: var(--space-2); color: var(--heading-color);}
.search-result-preview { font-size: 0.875rem; color: var(--text-muted); line-height: 1.5;}
/* Mobile Search Popup */.mobile-search-popup { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(15, 23, 42, 0.5); z-index: 1000; align-items: flex-start; justify-content: center; padding-top: 10vh; backdrop-filter: blur(4px);}
@media (prefers-color-scheme: dark) { .mobile-search-popup { background-color: rgba(0, 0, 0, 0.7); }}
.mobile-search-popup.active { display: flex;}
.mobile-search-container { background-color: var(--sidebar-bg); padding: 1rem; border-radius: 8px; width: 90%; max-width: 500px; box-shadow: 0 4px 20px var(--shadow-color-darker); display: flex; flex-direction: column;}
.mobile-search-header { display: flex; align-items: center; margin-bottom: 1rem;}
#mobile-search-input { flex-grow: 1; padding: var(--space-3) var(--space-4); min-height: 48px; font-size: 1.1em; border: 1px solid var(--border-color); border-radius: 4px; background-color: var(--bg-color); color: var(--text-color);}
#mobile-search-input:focus { outline: none; border-color: var(--brand); box-shadow: 0 0 0 3px var(--focus-ring);}
.close-mobile-search { background: transparent; border: none; font-size: 2rem; color: var(--text-muted); cursor: pointer; padding: 0; margin-left: 0.5rem; line-height: 1; min-width: 44px; min-height: 44px; display: flex; align-items: center; justify-content: center;}
.close-mobile-search:hover { color: var(--text-color);}
.mobile-search-results { max-height: 60vh; overflow-y: auto;}
/* Reuse desktop search result styling */.mobile-search-results .search-result-item { padding: var(--space-3) var(--space-4); min-height: 44px; display: flex; align-items: center; border-bottom: 1px solid var(--border-color);}
.mobile-search-results .search-result-item:last-child { border-bottom: none;}
.mobile-search-results .search-result-item a { text-decoration: none; color: inherit; display: flex; align-items: center; padding: var(--space-2) 0; min-height: 44px; flex-grow: 1;}
.mobile-search-results .search-result-item:hover { background-color: var(--sidebar-hover);}
/* Touch feedback for mobile devices */@media (hover: none) and (pointer: coarse) { .mobile-search-results .search-result-item:active { background-color: var(--sidebar-active); }}
.mobile-search-results .search-result-title { font-weight: 600; color: var(--heading-color); margin-bottom: 4px;}
.mobile-search-results .search-result-preview { font-size: 0.9em; color: var(--text-muted);}
/* Search Page Styling */.search-page { width: 100%; max-width: 800px; margin: 0 auto;}
#search-page-input { width: 100%; padding: var(--space-3) var(--space-3) var(--space-3) 3rem; border: 1px solid var(--border-color); border-radius: var(--radius-md); background-color: var(--sidebar-bg); color: var(--text-color); font-size: 1rem; transition: border-color var(--transition-fast), background-color var(--transition); box-sizing: border-box; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: 1rem center; background-size: 1.25rem;}
@media (prefers-color-scheme: dark) { #search-page-input { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E"); }}
#search-page-input:focus { outline: none; border-color: var(--brand); box-shadow: 0 0 0 3px var(--focus-ring);}
.search-keyboard-hints { display: flex; gap: var(--space-4); margin-top: var(--space-3); padding: var(--space-2) var(--space-3); background-color: var(--sidebar-bg); border-radius: var(--radius-sm); font-size: 0.875rem; color: var(--text-muted); flex-wrap: wrap;}
.search-keyboard-hints .hint-item { display: flex; align-items: center; gap: var(--space-1);}
.search-keyboard-hints kbd { display: inline-block; padding: 0.125rem 0.375rem; font-size: 0.75rem; font-family: ui-monospace, monospace; background-color: var(--code-bg); border: 1px solid var(--border-color); border-radius: 3px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); color: var(--text-color);}
@media (prefers-color-scheme: dark) { .search-keyboard-hints kbd { background-color: var(--sidebar-bg); border-color: var(--border-color); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); }}
@media (max-width: 800px) { .search-keyboard-hints { display: none; }}
.search-page-results { margin-top: var(--space-6);}
.search-results-list { padding: 0; list-style: none; margin: 0;}
.search-page-results .search-result-item { margin-bottom: var(--space-4); padding: var(--space-4); border: 1px solid var(--border-color); border-radius: var(--radius-md); background-color: var(--sidebar-bg); transition: transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);}
.search-page-results .search-result-item:hover { transform: translateY(-2px); border-color: var(--link-color); box-shadow: var(--shadow-md);}
.search-page-results .search-result-item a { text-decoration: none; color: var(--text-color); display: block;}
.search-page-results .search-result-title { font-size: 1.125rem; font-weight: 600; margin-bottom: var(--space-3); color: var(--heading-color);}
.search-page-results .search-result-preview { font-size: 0.875rem; color: var(--text-muted); line-height: 1.6;}
/* Search highlighting */mark { background-color: rgba(59, 130, 246, 0.2); color: var(--link-color); font-weight: 600; padding: 0 2px; border-radius: 2px;}
@media (prefers-color-scheme: dark) { mark { background-color: rgba(59, 130, 246, 0.3); color: #60a5fa; }}
@media (max-width: 800px) { .search-page-results { margin-top: var(--space-4); }
.search-page-results .search-result-item { padding: var(--space-3); }}
/* Admonition styling */.admonition { margin: var(--space-6) 0; border-radius: var(--radius-md); background-color: var(--sidebar-bg); overflow: hidden; box-shadow: var(--shadow-md); transition: background-color var(--transition), box-shadow var(--transition); border: 1px solid var(--border-color);}
.admonition-title { margin: 0 !important; padding: var(--space-3) var(--space-4); font-weight: 600; display: flex; align-items: center; font-size: 1rem !important; border-bottom: 1px solid var(--border-color); transition: border-color var(--transition);}
.admonition > :not(.admonition-title) { padding: var(--space-4); margin: 0;}
.admonition ul,.admonition ol { margin: var(--space-3) 0; padding-left: var(--space-8); margin-left: var(--space-8); list-style-position: inside;}
.admonition li { margin: var(--space-2) 0; line-height: 1.6; text-indent: -1em; padding-left: 1em;}
.admonition li p { display: inline; margin: 0;}
.admonition ul ul,.admonition ol ol,.admonition ul ol,.admonition ol ul { margin: var(--space-1) 0; padding-left: var(--space-8); margin-left: 0; list-style-position: outside;}
.admonition p { margin: var(--space-3) 0;}
.admonition p:first-child { margin-top: 0;}
.admonition p:last-child { margin-bottom: 0;}
.admonition.note { border-top: 4px solid var(--admonition-note-color);}
.admonition.note .admonition-title { color: var(--admonition-note-color);}
.admonition.tip { border-top: 4px solid var(--admonition-tip-color);}
.admonition.tip .admonition-title { color: var(--admonition-tip-color);}
.admonition.warning { border-top: 4px solid var(--admonition-warning-color);}
.admonition.warning .admonition-title { color: var(--admonition-warning-color);}
.admonition.danger { border-top: 4px solid var(--admonition-danger-color);}
.admonition.danger .admonition-title { color: var(--admonition-danger-color);}
.admonition.info { border-top: 4px solid var(--admonition-info-color);}
.admonition.info .admonition-title { color: var(--admonition-info-color);}
.admonition.important { border-top: 4px solid var(--admonition-important-color);}
.admonition.important .admonition-title { color: var(--admonition-important-color);}
.admonition.example { border-top: 4px solid var(--admonition-example-color);}
.admonition.example .admonition-title { color: var(--admonition-example-color);}
.admonition.caution { border-top: 4px solid var(--admonition-caution-color);}
.admonition.caution .admonition-title { color: var(--admonition-caution-color);}
/* Admonition icons */.admonition .admonition-title::before { display: inline-flex; width: 1.25rem; height: 1.25rem; align-items: center; justify-content: center; margin-right: var(--space-3); content: ""; background-position: center; background-repeat: no-repeat; background-size: contain;}
/* Dark mode SVG icon adjustments */@media (prefers-color-scheme: dark) { .admonition.note .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%2360a5fa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='16' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='8' x2='12.01' y2='8'%3E%3C/line%3E%3C/svg%3E"); }
.admonition.tip .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%2334d399' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E"); }
.admonition.warning .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%23fbbf24' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'%3E%3C/path%3E%3Cline x1='12' y1='9' x2='12' y2='13'%3E%3C/line%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'%3E%3C/line%3E%3C/svg%3E"); }
.admonition.danger .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%23f87171' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2'%3E%3C/polygon%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E"); }
.admonition.info .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%23818cf8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpath d='M12 16v-4'%3E%3C/path%3E%3Cpath d='M12 8h.01'%3E%3C/path%3E%3C/svg%3E"); }
.admonition.important .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%23a78bfa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpath d='M12 8v4'%3E%3C/path%3E%3Cpath d='M12 16h.01'%3E%3C/path%3E%3C/svg%3E"); }
.admonition.example .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%2322d3ee' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='4 17 10 11 4 5'%3E%3C/polyline%3E%3Cpolyline points='12 19 20 19'%3E%3C/polyline%3E%3C/svg%3E"); }
.admonition.caution .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%23fb923c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z'%3E%3C/path%3E%3C/svg%3E"); }}
/* Light mode SVG icon adjustments */@media (prefers-color-scheme: light) { .admonition.note .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%233b82f6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='16' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='8' x2='12.01' y2='8'%3E%3C/line%3E%3C/svg%3E"); }
.admonition.tip .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%2310b981' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E"); }
.admonition.warning .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%23f59e0b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'%3E%3C/path%3E%3Cline x1='12' y1='9' x2='12' y2='13'%3E%3C/line%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'%3E%3C/line%3E%3C/svg%3E"); }
.admonition.danger .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%23ef4444' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2'%3E%3C/polygon%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E"); }
.admonition.info .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpath d='M12 16v-4'%3E%3C/path%3E%3Cpath d='M12 8h.01'%3E%3C/path%3E%3C/svg%3E"); }
.admonition.important .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%238b5cf6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpath d='M12 8v4'%3E%3C/path%3E%3Cpath d='M12 16h.01'%3E%3C/path%3E%3C/svg%3E"); }
.admonition.example .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%2306b6d4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='4 17 10 11 4 5'%3E%3C/polyline%3E%3Cpolyline points='12 19 20 19'%3E%3C/polyline%3E%3C/svg%3E"); }
.admonition.caution .admonition-title::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='%23f97316' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z'%3E%3C/path%3E%3C/svg%3E"); }}
@keyframes highlight-pulse { 0% { background-color: rgba(59, 130, 246, 0.1); }
70% { background-color: rgba(59, 130, 246, 0.05); }
100% { background-color: var(--sidebar-bg); }}
/* Copy Link Styling */.copy-link { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 24px; height: 24px; margin-left: var(--space-2); padding: 0; border: 0; background-color: transparent; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='16' height='16' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'%3E%3C/path%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'%3E%3C/path%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; cursor: pointer; opacity: 0; transition: opacity var(--transition-fast), background-color var(--transition-fast); vertical-align: middle; border-radius: var(--radius-sm);}
@media (prefers-color-scheme: dark) { .copy-link { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='16' height='16' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'%3E%3C/path%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'%3E%3C/path%3E%3C/svg%3E"); }}
h1:hover .copy-link,h2:hover .copy-link,h3:hover .copy-link,h4:hover .copy-link,h5:hover .copy-link,h6:hover .copy-link { opacity: 1;}
.copy-link:hover { opacity: 1; background-color: var(--sidebar-hover);}
.copy-feedback { display: none; margin-left: var(--space-2); font-size: 0.75rem; color: var(--admonition-tip-color); font-weight: normal; background-color: var(--sidebar-bg); padding: var(--space-1) var(--space-2); border-radius: var(--radius-md); animation: fade-in 0.2s ease;}
@keyframes fade-in { from { opacity: 0; transform: translateY(-5px); }
to { opacity: 1; transform: translateY(0); }}
/* Scrollbar styling */::-webkit-scrollbar { width: 8px; height: 8px;}
::-webkit-scrollbar-track { background: transparent;}
::-webkit-scrollbar-thumb { background: var(--border-color); border-radius: 4px; transition: background-color var(--transition); border: 2px solid var(--bg-color);}
::-webkit-scrollbar-thumb:hover { background: var(--text-muted);}
/* Responsive Design */@media (max-width: 800px) { .layout, .js .layout { display: block; padding-left: 0; }
.sidebar { top: 60px; height: calc(100vh - 60px); z-index: 90; box-shadow: 2px 0 10px var(--shadow-color-darker); transform: translateX(-100%); }
body:not(.sidebar-collapsed) .sidebar { transform: translateX(0); }
.sidebar-toggle { position: fixed; top: 70px; left: 0; background-color: var(--header-bg); color: var(--header-text); border-radius: 0 var(--radius-md) var(--radius-md) 0; padding: var(--space-2); width: 32px; height: 40px; display: flex; align-items: center; justify-content: center; }
.sidebar-toggle svg { fill: var(--header-text); }
body:not(.sidebar-collapsed) .sidebar-toggle { left: 300px; }
header { padding: var(--space-3) var(--space-4); box-shadow: 0 4px 24px 0 rgba(0, 0, 0, 0.16); }
.site-title { font-size: 1.125rem; }
.content { padding: var(--space-6) var(--space-4); width: 100%; max-width: 100%; }
header { gap: var(--space-3); }
.header-left { min-width: 0; }
.header-nav ul { gap: var(--space-3); }
.header-nav { display: none; }
.option, .lib-entry { padding: var(--space-4); }
.option-details { grid-template-columns: 1fr; gap: var(--space-1); }
.option-details dd + dt { margin-top: var(--space-2); }
/* Mobile search styles */ .search-container { position: relative; }
.search-container #search-input { width: 36px; height: 36px; padding: 0; border-radius: var(--radius-md); background-color: rgba(255, 255, 255, 0.1); color: transparent; cursor: pointer; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='rgba(255, 255, 255, 0.9)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E"); background-position: center; background-size: 18px; background-repeat: no-repeat; border: 1px solid rgba(255, 255, 255, 0.1); transition: background-color var(--transition-fast), border-color var(--transition-fast); }
.search-container #search-input::placeholder { color: transparent; }
.search-container #search-input:hover { background-color: rgba(255, 255, 255, 0.15); border-color: rgba(255, 255, 255, 0.2); }
.search-container #search-input:focus { outline: none; background-color: rgba(255, 255, 255, 0.2); border-color: rgba(255, 255, 255, 0.3); width: 36px; /* Don't expand on mobile */ }
h1 { font-size: 1.875rem; }
h2 { font-size: 1.5rem; }
h3 { font-size: 1.25rem; }}
/* Medium screen adjustments for sidebar toggle */@media (max-width: 1000px) and (min-width: 801px) { .sidebar-toggle { left: min(300px, 100vw - 50px); }
.sidebar-collapsed .sidebar-toggle { left: 0; }}
/* Print styles */@media print { .sidebar, .sidebar-toggle, .search-container, footer, .copy-link { display: none !important; }
.layout { display: block !important; padding-left: 0 !important; }
.option { content-visibility: visible; }
body { background: white !important; color: black !important; font-size: 12pt !important; }
a { color: black !important; text-decoration: underline !important; }
h1, h2, h3, h4, h5, h6 { color: black !important; break-after: avoid !important; page-break-after: avoid !important; }
pre, blockquote, table { page-break-inside: avoid !important; }
img { max-width: 100% !important; page-break-inside: avoid !important; }
article { page-break-before: always !important; }}
/* Options TOC styling */.toc-list { list-style-type: none; padding-left: 0; margin: var(--space-6) 0; transition: border-color var(--transition); background-color: transparent; padding: var(--space-2) 0;}
.toc-list ul { list-style-type: none; margin: var(--space-1) 0 var(--space-1) var(--space-3); padding-left: var(--space-4); border-left: 1px solid var(--border-color);}
.toc-list li { position: relative; margin-bottom: var(--space-1); padding-left: 0;}
.toc-list ul > li::before { content: ""; position: absolute; left: calc(-1 * var(--space-4)); top: 1.05rem; width: var(--space-3); border-top: 1px solid var(--border-color);}
.toc-list a { color: var(--text-color); text-decoration: none; display: block; padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); transition: color var(--transition-fast), background-color var(--transition-fast); font-size: 0.875rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%;}
.toc-list a:hover,.toc-list a.active { color: var(--link-color); background-color: var(--sidebar-hover);}
.toc-list a.active { background-color: var(--sidebar-active); font-weight: 500;}
/* Details and summary styling */.toc-list details { margin: 0;}
.toc-list details summary { cursor: pointer; gap: var(--space-2); padding: var(--space-2); font-weight: 400; font-size: 0.875rem; color: var(--text-color); display: flex; align-items: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; list-style: none; border-radius: var(--radius-md); transition: transform var(--transition-fast), color var(--transition-fast), background-color var(--transition-fast);}
.toc-list details summary:hover { background-color: var(--sidebar-hover); color: var(--link-color);}
.toc-list details summary::-webkit-details-marker { display: none;}
.toc-list details summary::before { content: "▶"; font-size: 0.65rem; flex-shrink: 0; color: var(--text-muted); transition: transform var(--transition-fast), color var(--transition-fast);}
.toc-list details summary span:first-of-type { min-width: 0; overflow: hidden; text-overflow: ellipsis;}
.toc-list details[open] > summary::before { transform: rotate(90deg); color: var(--link-color);}
/* Count badge */.toc-count { background-color: var(--primary-600); color: white; border-radius: 999px; font-size: 0.7rem; font-weight: 600; padding: 0 var(--space-2); min-width: 20px; height: 18px; display: inline-flex; align-items: center; justify-content: center; margin-left: auto; flex-shrink: 0; font-variant-numeric: tabular-nums;}
/* Status badges */.toc-internal,.toc-readonly { display: inline-flex; align-items: center; justify-content: center; font-size: 0.65rem; padding: 0 var(--space-1); border-radius: var(--radius-sm); margin-left: var(--space-2); font-weight: 500; text-transform: uppercase; flex-shrink: 0; height: 16px;}
.toc-internal { background-color: var(--admonition-info-color); color: white;}
.toc-readonly { background-color: var(--admonition-warning-color); color: white;}
/* Option styling */.options-page .content { max-width: 960px;}
.option { content-visibility: auto; contain-intrinsic-size: auto 20rem; scroll-margin-top: 80px; padding: var(--space-6); border: 1px solid var(--border-color); border-radius: var(--radius-lg); margin: var(--space-6) 0; background-color: var(--bg-surface); transition: background-color var(--transition), border-color var(--transition-fast), box-shadow var(--transition-fast); box-shadow: var(--shadow-sm); min-width: 0;}
.options-container.options-revealed .option { content-visibility: visible;}
@media (hover: hover) { .option:hover { border-color: var(--border-strong); box-shadow: var(--shadow-md); }}
.option:target,.option.highlight { border-color: var(--link-color); box-shadow: 0 0 0 2px var(--focus-ring); animation: highlight-pulse 1.5s ease;}
.content .option-name { margin-top: 0; margin-bottom: var(--space-3); display: flex; align-items: center; max-width: 100%; min-width: 0; overflow-x: auto; overflow-y: hidden; white-space: nowrap; scrollbar-width: thin;}
.option-anchor { color: var(--heading-color); text-decoration: none; white-space: nowrap; font-family: var(--font-mono); font-size: 0.9em; letter-spacing: -0.035em;}
.option-anchor:hover { color: var(--link-color); text-decoration: none;}
.option-metadata { display: flex; flex-wrap: wrap; gap: var(--space-2); color: var(--text-muted); margin-bottom: var(--space-3);}
.option-badge { display: inline-flex; align-items: center; min-height: 1.5rem; padding: 0 var(--space-2); border: 1px solid var(--border-strong); border-radius: 999px; background: var(--bg-surface-2); color: var(--text-muted); font-size: 0.7rem; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase;}
.option-details { display: grid; grid-template-columns: 6rem minmax(0, 1fr); gap: var(--space-3) var(--space-4); align-items: baseline; margin: 0; max-width: 100%;}
.option-details dt,.option-details dd { margin: 0;}
.option-details dt,.option-related-title { color: var(--text-muted); font-size: 0.75rem; font-weight: 650; letter-spacing: 0.04em; text-transform: uppercase;}
.option-description { margin-block-end: var(--space-4);}
.option-description > :first-child,.option-related > :first-child { margin-top: 0;}
.option-description > :last-child,.option-related > :last-child { margin-bottom: 0;}
.option-value { min-width: 0;}
.option-value > code,.option-source-list code { padding: 0; border: 0; background: transparent; font-size: 0.875rem; letter-spacing: normal; line-height: 1.6; overflow-wrap: anywhere;}
.option-value pre { margin: 0; max-width: 100%;}
.option-source-list { display: grid; gap: var(--space-2); margin: 0; padding: 0; list-style: none;}
.option-sources { margin-top: var(--space-5, 1.25rem);}
.option-related { margin-top: var(--space-5, 1.25rem); padding-top: var(--space-4); border-top: 1px solid var(--border-color);}
.option-related-title { margin: 0 0 var(--space-2);}
.no-js .copy-link,.no-js .copy-feedback { display: none;}
/* Lib entry specific styling */.lib-entry { scroll-margin-top: 80px; padding: var(--space-6); border: 1px solid var(--border-color); border-radius: var(--radius-md); margin: var(--space-6) 0; background-color: var(--sidebar-bg); transition: opacity var(--transition-fast), transform var(--transition-fast), background-color var(--transition), border-color var(--transition); box-shadow: var(--shadow-sm);}
.lib-entry:target,.lib-entry.highlight { border-color: var(--brand); box-shadow: 0 0 0 3px var(--focus-ring); animation: highlight-pulse 1.5s ease;}
.content .lib-entry-name { margin-top: 0; margin-bottom: var(--space-3); display: flex; align-items: center;}
.lib-entry-anchor { color: var(--heading-color); text-decoration: none;}
.lib-entry-anchor:hover { color: var(--link-color); text-decoration: none;}
.lib-entry-declared { color: var(--text-muted); font-style: italic; margin-top: var(--space-3);}
.lib-entry-type { margin-bottom: var(--space-3);}
.lib-entry-description { margin-bottom: var(--space-4);}
.lib-entry-arguments h3,.lib-entry-examples h3,.lib-entry-notes h3,.lib-entry-warnings h3 { font-size: 0.875rem; font-weight: 600; color: var(--text-muted); margin: var(--space-4) 0 var(--space-2) 0; text-transform: uppercase; letter-spacing: 0.05em;}
.lib-entry-arguments dl { margin: 0;}
.lib-entry-arguments dt { font-weight: 600;}
.lib-entry-arguments dd { margin-left: var(--space-6); margin-bottom: var(--space-2); color: var(--text-muted);}
.lib-entry-examples pre { margin: var(--space-2) 0; padding: var(--space-3); background-color: var(--code-bg); border-radius: var(--radius-sm); overflow-x: auto;}
.lib-entry-examples code { font-family: var(--font-mono); font-size: 0.875em;}
.lib-entry-deprecated { margin-top: var(--space-3); padding: var(--space-3); background-color: color-mix( in srgb, var(--admonition-warning-color) 10%, transparent ); border-left: 3px solid var(--admonition-warning-color); border-radius: var(--radius-sm);}
.lib-entry-deprecated p { margin: 0; color: var(--admonition-warning-color);}
.lib-entry-notes ul,.lib-entry-warnings ul { margin: 0; padding-left: var(--space-6);}
.lib-entry-notes li,.lib-entry-warnings li { margin-bottom: var(--space-1);}
.lib-entry-warnings { margin-top: var(--space-3); padding: var(--space-3); background-color: color-mix( in srgb, var(--admonition-danger-color) 10%, transparent ); border-left: 3px solid var(--admonition-danger-color); border-radius: var(--radius-sm);}
.lib-entry-warnings h3 { color: var(--admonition-danger-color);}
/* Lib container */.lib-container { position: relative; overflow: visible; min-height: 0; height: auto; margin-bottom: 0; padding-bottom: 0;}
/* Filter styling */.search-form { margin: var(--space-4) 0; position: relative; max-width: 100%; box-sizing: border-box;}
#lib-filter,#options-filter { width: 100%; padding: var(--space-3); border: 1px solid var(--border-color); border-radius: var(--radius-md); background-color: var(--sidebar-bg); color: var(--text-color); font-size: 1rem; transition: border-color var(--transition-fast); box-sizing: border-box;}
#lib-filter:focus,#options-filter:focus { outline: none; border-color: var(--link-color); box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);}
.filter-clear { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); background: none; border: none; font-size: 20px; cursor: pointer; color: var(--text-muted); padding: 0; width: 24px; height: 24px; display: flex; align-items: center; justify-content: center;}
.filter-results { margin-top: var(--space-2); font-size: 0.875rem; color: var(--text-muted);}
/* Animation */@keyframes highlight-pulse { 0% { background-color: rgba(59, 130, 246, 0.1); }
70% { background-color: rgba(59, 130, 246, 0.05); }
100% { background-color: var(--sidebar-bg); }}
/* Parent option styling */.parent-option { font-weight: 500;}
/* Responsive Design */@media (max-width: 800px) { .sidebar, .sidebar-toggle { display: none; }
.no-js .sidebar { display: block; position: static; width: 100%; height: auto; max-height: none; transform: none !important; border-right: 0; border-bottom: 1px solid var(--border-color); box-shadow: none; }
.content { margin-left: 0; padding: 20px; }}
/* Options Container */.options-container { position: relative; overflow: visible !important; min-height: 0 !important; height: auto !important; margin-bottom: 0 !important; padding-bottom: 0 !important;}
.options-chunk-status,.options-chunk-noscript,.options-chunk-error { color: var(--text-muted); padding: var(--space-4) 0; text-align: center;}
.options-chunk-error { color: var(--admonition-danger-color);}
/* Search result styles */.search-result-page { font-weight: 600;}
.search-result-anchor { padding-left: calc(var(--space-4) + var(--space-6)); font-size: 0.9em; position: relative;}
.search-result-anchor::before { content: "↳"; position: absolute; left: var(--space-4); color: var(--text-muted); font-size: 1em;}
.search-result-anchor a { color: var(--text-muted);}
.search-result-anchor:hover::before { color: var(--link-color);}
/* Search page specific styling */.search-page-results .search-result-page { font-weight: 700;}
.search-page-results .search-result-anchor { padding-left: calc(var(--space-6) + var(--space-6));}
.search-page-results .search-result-anchor::before { left: var(--space-6);}
/* Mobile search anchor styling */.mobile-search-results .search-result-anchor { padding-left: calc(var(--space-4) + var(--space-4)); font-size: 0.875em;}
.mobile-search-results .search-result-anchor::before { left: var(--space-3);}
/* Sidebar Sections */.sidebar-section { margin-bottom: var(--space-4);}
.sidebar-section + .sidebar-section { margin-top: 0;}
/* Only target direct child summary (section headers like "Documents", "Contents") */.sidebar-section > summary { font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text-muted); font-weight: 700; cursor: pointer; padding: var(--space-2) var(--space-3); list-style: none; display: flex; align-items: center; gap: var(--space-2); border-radius: var(--radius-md); transition: color var(--transition-fast), background-color var(--transition-fast);}
.sidebar-section > summary:hover { background-color: var(--sidebar-hover); color: var(--text-color);}
.sidebar-section[open] > summary { color: var(--heading-color);}
.sidebar-section > summary::before { content: "▶"; font-size: 0.625rem; transition: transform var(--transition-fast); flex-shrink: 0;}
.sidebar-section[open] > summary::before { transform: rotate(90deg);}
/* Hide default marker */.sidebar-section > summary::-webkit-details-marker { display: none;}
/* Animated content wrapper using CSS Grid */.sidebar-section-content { display: grid; grid-template-rows: 0fr; overflow: hidden; transition: grid-template-rows var(--transition);}
.sidebar-section[open] .sidebar-section-content { grid-template-rows: 1fr;}
.sidebar-section-content > * { min-height: 0; overflow: hidden;}
.sidebar-section-content > ul { margin: var(--space-1) 0 0;}
.sidebar-section-content > .toc-list { border-left: 0; background-color: transparent; border-radius: 0; padding: 0;}
.sidebar-section-content > .toc-list ul { margin: 0; padding-left: var(--space-3);}
.sidebar-section-content > .toc-list li { margin-bottom: var(--space-1); padding-left: 0;}
/* Right-side Page Table of Contents */.page-toc { position: fixed; top: calc(var(--header-height) + var(--space-4)); max-height: calc(100vh - var(--header-height) - var(--space-8)); width: 220px; overflow-y: auto; padding: var(--space-4); font-size: 0.8125rem; display: none;
/* Position to the right of centered content Content is max 800px, centered. Sidebar is 300px fixed left. Calculate: sidebar (300px) + half remaining + half content (400px) + gap */ right: var(--space-4);}
.no-js .page-toc { display: none !important;}
.page-toc-nav h3 { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted); margin: 0 0 var(--space-3) 0; padding-left: var(--space-3); font-weight: 600;}
.page-toc-list { list-style: none; padding: 0; margin: 0;}
.page-toc-list ul { list-style: none; padding-left: var(--space-3); margin: 0;}
.page-toc-list li { margin: 0;}
.page-toc-list a { display: block; padding: var(--space-1) var(--space-3); color: var(--text-muted); text-decoration: none; transition: color var(--transition-fast), border-color var(--transition-fast); border-left: 2px solid transparent;}
.page-toc-list a:hover { color: var(--link-color);}
.page-toc-list a.active { color: var(--link-color); border-left-color: var(--link-color); font-weight: 500;}
/* Show page-toc only on wide screens */@media (min-width: 1600px) { .page-toc { display: block; }}
/* Hide page-toc on mobile */@media (max-width: 800px) { .page-toc { display: none !important; }}
/* Keyboard navigation active state */.search-result-item.search-result-active { background-color: var(--sidebar-active); border-left: 3px solid var(--link-color);}
/* Search error styling */.search-error { padding: var(--space-4); border: 1px solid var(--admonition-danger-color); border-radius: var(--radius-md); background-color: var(--sidebar-bg); color: var(--text-color);}
.search-error p { margin: 0 0 var(--space-3) 0;}
.search-error button,.search-error a { display: inline-block; padding: var(--space-2) var(--space-4); background-color: var(--link-color); color: white; border: none; border-radius: var(--radius-sm); cursor: pointer; text-decoration: none; font-size: 0.875rem; transition: background-color var(--transition-fast);}
.search-error button:hover,.search-error a:hover { background-color: var(--link-hover-color);}
.search-result-item.search-result-active a { color: var(--link-color);}
/* Search result highlighting on target pages */.search-highlight { background-color: rgba(255, 235, 59, 0.4); color: inherit; font-weight: inherit; padding: 2px 0; border-radius: 2px; animation: highlight-fade 3s ease-out forwards;}
.search-highlight-active { background-color: rgba(255, 193, 7, 0.6); animation: highlight-pulse-active 1s ease-in-out infinite alternate;}
@keyframes highlight-fade { 0% { background-color: rgba(255, 235, 59, 0.6); } 100% { background-color: rgba(255, 235, 59, 0.2); }}
@keyframes highlight-pulse-active { 0% { background-color: rgba(255, 193, 7, 0.5); } 100% { background-color: rgba(255, 193, 7, 0.7); }}
@media (prefers-color-scheme: dark) { .search-highlight { background-color: rgba(255, 193, 7, 0.3); animation: highlight-fade-dark 3s ease-out forwards; }
.search-highlight-active { background-color: rgba(255, 152, 0, 0.5); animation: highlight-pulse-active-dark 1s ease-in-out infinite alternate; }
@keyframes highlight-fade-dark { 0% { background-color: rgba(255, 193, 7, 0.4); } 100% { background-color: rgba(255, 193, 7, 0.15); } }
@keyframes highlight-pulse-active-dark { 0% { background-color: rgba(255, 152, 0, 0.4); } 100% { background-color: rgba(255, 152, 0, 0.6); } }}
/* Sidebar directory groups */.sidebar-dir-group { list-style: none; margin-bottom: var(--space-1);
> details { > summary { display: flex; align-items: center; gap: var(--space-2); padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); cursor: pointer; user-select: none; font-size: 0.8125rem; font-weight: 600; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.04em; list-style: none; transition: background-color var(--transition-fast), color var(--transition-fast);
&::-webkit-details-marker { display: none; }
&::before { content: "▶"; font-size: 0.625rem; transition: transform var(--transition-fast); flex-shrink: 0; }
&:hover { background-color: var(--sidebar-hover); color: var(--text-color); } }
&[open] > summary::before { transform: rotate(90deg); }
> ul { margin: var(--space-1) 0 var(--space-1) var(--space-4); padding-left: var(--space-2); border-left: 2px solid var(--border-color); } }
.sidebar-dir-count { font-size: 0.7rem; font-weight: 500; background-color: var(--sidebar-active); color: var(--text-muted); border-radius: 9999px; padding: 0 var(--space-2); line-height: 1.6; margin-left: auto; }
.sidebar-dir-label { flex: 1; }}
/* Mobile Sidebar */.mobile-sidebar-toggle { display: none;}
.mobile-sidebar-backdrop { position: fixed; inset: 0; z-index: 900; background-color: rgba(15, 23, 42, 0.4); opacity: 0; transition: opacity var(--transition-fast);}
.mobile-sidebar-backdrop.active { opacity: 1;}
.mobile-sidebar-container { display: none; position: fixed; top: 0; left: 0; bottom: 0; width: min(320px, calc(100vw - var(--space-8))); height: 100dvh; background-color: var(--sidebar-bg); border: 1px solid var(--border-color); border-top: 0; border-bottom: 0; border-left: 0; border-radius: 0; box-shadow: var(--shadow-lg); z-index: 1000; transform: translateX(-100%); transition: transform var(--transition); flex-direction: column;}
.mobile-sidebar-container.active { transform: translateX(0);}
.mobile-sidebar-header { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding: var(--space-3) var(--space-4); border-bottom: 1px solid var(--border-color); background-color: var(--sidebar-bg);}
.mobile-sidebar-header h2 { margin: 0; color: var(--heading-color); font-size: 1rem; font-weight: 600;}
.mobile-sidebar-close { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--border-color); border-radius: var(--radius-md); background-color: var(--bg-surface); color: var(--text-color); cursor: pointer; font-size: 1.25rem; line-height: 1;}
.mobile-sidebar-close:hover { background-color: var(--sidebar-hover); color: var(--link-color);}
.mobile-sidebar-site-nav { flex: 0 0 auto; padding: var(--space-3) var(--space-4); border-bottom: 1px solid var(--border-color); background-color: var(--sidebar-bg);}
.mobile-sidebar-site-nav ul { display: grid; gap: var(--space-2); padding: 0; margin: 0; list-style: none;}
.mobile-sidebar-site-nav a { display: flex; align-items: center; width: 100%; min-height: 44px; box-sizing: border-box; padding: 0 var(--space-3); border: 1px solid transparent; border-radius: var(--radius-md); background-color: transparent; color: var(--text-color); text-decoration: none; font-size: 0.875rem; font-weight: 600;}
.mobile-sidebar-site-nav a:hover,.mobile-sidebar-site-nav .active a { border-color: var(--border-color); background-color: var(--sidebar-hover); color: var(--link-color);}
.mobile-sidebar-site-nav .active a { border-color: var(--border-color); background-color: var(--sidebar-active);}
.mobile-sidebar-content { overflow-y: auto; flex: 1 1 auto; min-height: 0; padding: var(--space-3) var(--space-4) var(--space-6);}
.mobile-sidebar-content .sidebar-section-content > ul:not(.toc-list) { margin: var(--space-1) 0 0; padding: 0; list-style: none;}
.mobile-sidebar-content .sidebar-section-content > ul:not(.toc-list) > li { margin-bottom: var(--space-1);}
.mobile-sidebar-content .sidebar-section-content > ul:not(.toc-list) > li > a { display: block; padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); color: var(--text-color); text-decoration: none;}
.mobile-sidebar-content .sidebar-section-content > ul:not(.toc-list) > li > a:hover,.mobile-sidebar-content .sidebar-section-content > ul:not(.toc-list) > li > a.active { background-color: var(--sidebar-hover); color: var(--link-color);}
body.mobile-sidebar-open { overflow: hidden;}
@media (max-width: 800px) { .mobile-sidebar-container { display: flex; }
.mobile-sidebar-toggle { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 44px; height: 44px; padding: 0; border: 1px solid var(--border-color); border-radius: var(--radius-md); background-color: var(--bg-surface); color: var(--header-text); font: inherit; cursor: pointer; transition: background-color var(--transition-fast), border-color var(--transition-fast); }
.mobile-sidebar-toggle:hover { background-color: var(--sidebar-hover); border-color: var(--border-strong); }
.mobile-sidebar-toggle[aria-expanded="true"] { background-color: var(--sidebar-active); border-color: var(--border-strong); }
.no-js .mobile-sidebar-container { display: none; }
.no-js .mobile-sidebar-toggle, .no-js .mobile-sidebar-backdrop { display: none; }}
@media (prefers-reduced-motion: reduce) { .mobile-sidebar-backdrop, .mobile-sidebar-container { transition: none; }}
/* Option page index and pagination */.options-index { margin-top: var(--space-4);}
.options-index-summary { display: flex; gap: var(--space-2); align-items: center; margin-bottom: var(--space-3); color: var(--text-muted); font-size: 0.875rem;}
.options-index-summary strong { color: var(--heading-color);}
.options-index-list { display: block; border-top: 1px solid var(--border-color);}
.option-page-row { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); min-width: 0; padding: var(--space-3) 0; border-bottom: 1px solid var(--border-color); color: var(--text-color); text-decoration: none; transition: opacity var(--transition-fast), transform var(--transition-fast), color var(--transition-fast), background-color var(--transition-fast);}
.filter-entering,.filter-leaving { opacity: 0; transform: translateY(4px);}
@media (prefers-reduced-motion: reduce) { .filter-entering, .filter-leaving { transform: none; }}
.option-page-row:hover { color: var(--link-color);}
.option-page-main { display: grid; gap: var(--space-1); min-width: 0;}
.option-page-title { font-weight: 600;}
.option-page-row code { display: inline-block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; vertical-align: top; color: var(--text-muted); background: transparent; padding: 0;}
.option-page-count { flex: 0 0 auto; white-space: nowrap; color: var(--text-muted); font-size: 0.875rem;}
.options-index-empty { color: var(--text-muted);}
.option-page-breadcrumb { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; margin: var(--space-2) 0 var(--space-4); color: var(--text-muted); font-size: 0.875rem;}
.option-page-breadcrumb a { color: var(--link-color); text-decoration: none;}
.option-page-breadcrumb a:hover { text-decoration: underline;}
.option-page-breadcrumb span::before { content: "/"; margin-right: var(--space-2); color: var(--text-muted);}
.option-page-meta { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; color: var(--text-muted); font-size: 0.875rem; margin-bottom: var(--space-4); padding-bottom: var(--space-4); border-bottom: 1px solid var(--border-color);}
.option-page-meta code { color: var(--text-color); background-color: var(--code-bg); border-radius: var(--radius-sm); padding: var(--space-1) var(--space-2);}
.option-page-sidebar-nav { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-2); margin-bottom: var(--space-4); padding-bottom: var(--space-4); border-bottom: 1px solid var(--border-color);}
.option-page-sidebar-link { min-width: 0; color: var(--text-color); text-decoration: none;}
.option-page-sidebar-next { text-align: right;}
.option-page-sidebar-link span { display: block; color: var(--text-muted); font-size: 0.7rem; font-weight: 600; text-transform: uppercase;}
.option-page-sidebar-link strong { display: block; overflow: hidden; color: var(--link-color); font-size: 0.85rem; font-weight: 600; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap;}
.option-page-sidebar-link:hover strong { text-decoration: underline;}
.option-page-sidebar-disabled { visibility: hidden;}