/* ============================================================
   Google-Research-style theme
   ============================================================ */
:root{
  --bg:#ffffff; --fg:#202124; --muted:#5f6368; --muted-2:#80868b;
  --line:#dadce0; --line-soft:#e8eaed; --surface:#f8f9fa; --surface-2:#f1f3f4;
  --blue:#1a73e8; --blue-hover:#174ea6; --blue-soft:#e8f0fe; --blue-soft-2:#d2e3fc;
  --green:#188038; --green-soft:#e6f4ea; --yellow:#e37400; --yellow-soft:#fef7e0;
  --red:#d93025; --code-bg:#f8f9fa; --code-bd:#dadce0;
  --radius:8px; --radius-lg:12px;
  --shadow-1:0 1px 2px 0 rgba(60,64,67,.30),0 1px 3px 1px rgba(60,64,67,.15);
  --shadow-2:0 1px 3px 0 rgba(60,64,67,.30),0 4px 8px 3px rgba(60,64,67,.15);
}
[data-theme="dark"]{
  --bg:#202124; --fg:#e8eaed; --muted:#9aa0a6; --muted-2:#80868b;
  --line:#3c4043; --line-soft:#2d2e31; --surface:#292a2d; --surface-2:#303134;
  --blue:#8ab4f8; --blue-hover:#aecbfa; --blue-soft:#1c2b3e; --blue-soft-2:#283a52;
  --green:#81c995; --green-soft:#1e2c22; --yellow:#fdd663; --yellow-soft:#2f2a1c;
  --red:#f28b82; --code-bg:#292a2d; --code-bd:#3c4043;
  --shadow-1:0 1px 2px 0 rgba(0,0,0,.5); --shadow-2:0 2px 6px 0 rgba(0,0,0,.6);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html,body{max-width:100%;overflow-x:clip}
body{
  margin:0;background:var(--bg);color:var(--fg);
  font-family:"Google Sans",Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  font-size:16px;line-height:1.75;letter-spacing:.004em;overflow-wrap:break-word;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--blue-hover);text-decoration:underline}
code,kbd,pre,samp{font-family:"Roboto Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:80;background:var(--blue);transition:width .1s ease}

/* ------------------------------------------------ app bar + tabs */
.appbar{position:sticky;top:0;z-index:60;background:color-mix(in srgb,var(--bg) 92%,transparent);
  backdrop-filter:saturate(150%) blur(10px);border-bottom:1px solid var(--line)}
.bar1{display:flex;align-items:center;gap:14px;height:62px}
.brand{display:flex;align-items:center;gap:10px;color:var(--fg);font-weight:500;font-size:16px}
.brand:hover{text-decoration:none;color:var(--fg)}
.logo{width:28px;height:28px;border-radius:8px;background:var(--blue);color:#fff;display:grid;place-items:center;
  font-weight:700;font-size:12px;letter-spacing:.02em}
.brand .full{color:var(--muted);font-weight:400}
.spacer{flex:1}
.segmented{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}
.segmented button{font:inherit;font-size:13px;line-height:1;padding:8px 14px;background:none;border:0;color:var(--muted);cursor:pointer;white-space:nowrap}
.segmented button+button{border-left:1px solid var(--line)}
.segmented button:hover{color:var(--fg);background:var(--surface)}
.segmented button.seg-active{background:var(--blue-soft);color:var(--blue)}
[data-theme="dark"] .segmented button.seg-active{color:var(--blue)}
.iconbtn{width:38px;height:38px;border-radius:50%;border:0;background:none;color:var(--muted);
  display:grid;place-items:center;cursor:pointer;padding:0}
.iconbtn:hover{background:var(--surface);color:var(--fg)}
.bar2{overflow-x:auto;scrollbar-width:none}
.bar2::-webkit-scrollbar{display:none}
.tabs{display:flex;gap:2px;height:46px}
.tabs a{display:flex;align-items:center;padding:0 14px;color:var(--muted);font-size:14px;white-space:nowrap;
  border-bottom:3px solid transparent;margin-bottom:-1px}
.tabs a:hover{color:var(--fg);background:var(--surface);text-decoration:none}
.tabs a.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:500}

/* ------------------------------------------------ hero */
.hero{border-bottom:1px solid var(--line)}
.hero .wrap{padding:64px 24px 44px}
.kicker{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin-bottom:18px}
h1.title{margin:0 0 18px;font-size:clamp(30px,4.2vw,46px);line-height:1.14;font-weight:400;letter-spacing:-.012em;max-width:18em;color:var(--fg)}
.subtitle{color:var(--muted);font-size:17px;max-width:48em;margin:0 0 22px}
.chips{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center}
.chip{font-size:13px;color:var(--muted)}
.chip.tag{color:var(--blue);background:var(--blue-soft);padding:2px 9px;border-radius:4px}
[data-theme="dark"] .chip.tag{color:var(--blue)}

/* ------------------------------------------------ layout */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:56px;padding:44px 0 48px}
main{min-width:0}
article{min-width:0}
article p{margin:14px 0}
article ul,article ol{margin:14px 0;padding-left:26px}
article li{margin:6px 0}
article li::marker{color:var(--muted-2)}
article strong{font-weight:600}
article hr{border:0;border-top:1px solid var(--line);margin:44px 0}
.anchor{scroll-margin-top:120px}
article h2,article h3,article h4{scroll-margin-top:130px}

/* ------------------------------------------------ findings cards */
.findings{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin:26px 0}
.finding{border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;background:var(--bg);
  transition:box-shadow .15s ease,border-color .15s ease}
.finding:hover{box-shadow:var(--shadow-1)}
.finding-k{font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--blue);margin-bottom:8px}
.finding-v{color:var(--muted);font-size:14.5px;line-height:1.65}
.finding-v code{font-size:12.5px}

/* ------------------------------------------------ headings */
article h2{font-size:28px;font-weight:400;letter-spacing:-.01em;margin:60px 0 16px;padding-bottom:12px;border-bottom:1px solid var(--line)}
article h3{font-size:20px;font-weight:500;margin:36px 0 10px;color:var(--fg)}
article h4{font-size:16.5px;font-weight:600;margin:24px 0 8px;color:var(--muted)}
.hlink{opacity:0;margin-left:8px;color:var(--muted-2);font-size:.7em;font-weight:400;vertical-align:middle;transition:opacity .15s}
h2:hover .hlink,h3:hover .hlink{opacity:1}

/* ------------------------------------------------ inline code + code block */
article code{background:var(--surface-2);border-radius:4px;padding:1.5px 6px;font-size:.82em;color:var(--fg);overflow-wrap:anywhere}
.codeblock{margin:20px 0;border:1px solid var(--code-bd);border-radius:var(--radius);overflow:hidden;background:var(--code-bg)}
.codebar{display:flex;align-items:center;gap:8px;padding:7px 12px;border-bottom:1px solid var(--line-soft);background:var(--surface)}
.cb-lang{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2)}
.codebar .copy{margin-left:auto;font:inherit;font-size:12px;color:var(--muted);background:none;border:0;border-radius:6px;padding:4px 10px;cursor:pointer}
.codebar .copy:hover{color:var(--blue);background:var(--surface-2)}
.codeblock .hl{background:transparent}
.codeblock pre{margin:0;padding:16px 18px;overflow:auto;font-size:13px;line-height:1.65}
.codeblock pre code{background:none;padding:0;color:inherit;white-space:pre;font-size:13px}
.hl pre{line-height:1.65}

/* ------------------------------------------------ tables */
.table-wrap{margin:22px 0;border:1px solid var(--line);border-radius:var(--radius);overflow:auto}
table{border-collapse:collapse;width:100%;font-size:14px;min-width:520px}
.table-wrap table.tbl-nowrap{width:max-content;min-width:100%}
.table-wrap table.tbl-nowrap th,.table-wrap table.tbl-nowrap td{white-space:nowrap}
th,td{border:0;border-bottom:1px solid var(--line-soft);padding:11px 14px;text-align:left;vertical-align:top}
thead th{background:var(--surface);color:var(--muted);font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;
  position:sticky;top:0;white-space:nowrap}
tbody tr:hover td{background:var(--surface)}
tbody tr:last-child td{border-bottom:0}
td code{font-size:12.5px;white-space:normal}

/* ------------------------------------------------ callouts */
.callout{margin:20px 0;padding:14px 18px;border-radius:var(--radius);border:1px solid var(--line);
  border-left:4px solid var(--blue);background:var(--surface);font-size:15px}
.callout p{margin:6px 0}
.callout-warn{border-left-color:var(--yellow);background:var(--yellow-soft);border-color:transparent}
.callout-ok{border-left-color:var(--green);background:var(--green-soft);border-color:transparent}
.callout-note{border-left-color:var(--blue);background:var(--blue-soft);border-color:transparent}

/* ------------------------------------------------ toc */
aside.toc{position:sticky;top:132px;align-self:start;max-height:calc(100vh - 152px);overflow:auto;font-size:13.5px}
aside.toc h4{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-weight:600}
aside.toc ul,.tocbox ul{list-style:none;margin:0;padding:0;border-left:1px solid var(--line)}
aside.toc a,.tocbox a{display:block;padding:5px 0 5px 13px;color:var(--muted);border-left:2px solid transparent;margin-left:-1.5px;line-height:1.45;transition:color .12s,border-color .12s}
aside.toc a:hover,.tocbox a:hover{color:var(--fg);text-decoration:none}
aside.toc a.active,.tocbox a.active{color:var(--blue);border-left-color:var(--blue);font-weight:500}
aside.toc > ul > li,.tocbox > ul > li{margin-top:16px}
aside.toc > ul > li:first-child,.tocbox > ul > li:first-child{margin-top:0}
aside.toc > ul > li > a,.tocbox > ul > li > a{font-weight:600;color:var(--fg);font-size:13px}
aside.toc > ul > li > ul,.tocbox > ul > li > ul{border-left:0;margin:4px 0 2px}
aside.toc > ul > li > ul a,.tocbox > ul > li > ul a{padding-left:22px;font-size:12.5px}
.toc-mobile{display:none}

/* ------------------------------------------------ footer + fab */
footer{border-top:1px solid var(--line);background:var(--surface);margin-top:24px}
footer .wrap{padding:36px 24px 60px;color:var(--muted);font-size:13.5px}
footer strong{color:var(--fg);font-weight:600}
.totop{position:fixed;right:22px;bottom:22px;width:48px;height:48px;border-radius:50%;border:0;background:var(--blue);color:#fff;
  cursor:pointer;display:grid;place-items:center;box-shadow:var(--shadow-2);opacity:0;pointer-events:none;transition:opacity .2s;z-index:40}
.totop.show{opacity:1;pointer-events:auto}
.totop:hover{background:var(--blue-hover)}

/* ------------------------------------------------ target view switching */
html[data-view="cn"] [data-target="global"],
html[data-view="global"] [data-target="cn"]{display:none !important}

/* ------------------------------------------------ responsive */
@media (max-width:1000px){
  .layout{grid-template-columns:1fr;gap:0;padding:24px 0}
  aside.toc{display:none}
  .toc-mobile{display:block;margin:10px 0}
  .toc-mobile summary{cursor:pointer;font-weight:500;color:var(--fg);padding:12px 16px;border:1px solid var(--line);
    border-radius:var(--radius);background:var(--surface);list-style:none;display:flex;align-items:center;justify-content:space-between}
  .toc-mobile summary::after{content:"⌄";color:var(--muted);font-size:14px}
  .toc-mobile[open] summary::after{content:"⌃"}
  .toc-mobile summary::-webkit-details-marker{display:none}
  .toc-mobile[open] summary{border-bottom-left-radius:0;border-bottom-right-radius:0}
  .toc-mobile .tocbox{border:1px solid var(--line);border-top:0;border-radius:0 0 var(--radius) var(--radius);
    padding:12px 16px;background:var(--surface);max-height:52vh;overflow:auto}
}
@media (max-width:820px){
  .wrap{padding:0 16px}
  .bar1{height:56px;gap:10px}
  .brand .full{display:none}
  .segmented button{padding:7px 11px}
  .tabs a{padding:0 12px}
  .hero .wrap{padding:40px 16px 30px}
  h1.title{font-size:26px}
  .subtitle{font-size:15.5px}
  article h2{font-size:22px;margin:44px 0 14px}
  article h3{font-size:18px}
  article h4{font-size:16px}
  .codeblock pre{font-size:12px}
  table{min-width:440px;font-size:13px}
  .findings{grid-template-columns:1fr}
  .totop{right:14px;bottom:14px}
}
@media (max-width:400px){ h1.title{font-size:23px} .table-wrap table{min-width:380px} }
@media print{
  .appbar,.totop,.progress,aside.toc,.toc-mobile,.codebar .copy{display:none}
  .layout{grid-template-columns:1fr}
}
/* pygments */
pre { line-height: 125%; }
td.linenos .normal { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.hl .hll { background-color: #ffffcc }
.hl { background: #f0f0f0; }
.hl .c { color: #60A0B0; font-style: italic } /* Comment */
.hl .err { border: 1px solid #F00 } /* Error */
.hl .k { color: #007020; font-weight: bold } /* Keyword */
.hl .o { color: #666 } /* Operator */
.hl .ch { color: #60A0B0; font-style: italic } /* Comment.Hashbang */
.hl .cm { color: #60A0B0; font-style: italic } /* Comment.Multiline */
.hl .cp { color: #007020 } /* Comment.Preproc */
.hl .cpf { color: #60A0B0; font-style: italic } /* Comment.PreprocFile */
.hl .c1 { color: #60A0B0; font-style: italic } /* Comment.Single */
.hl .cs { color: #60A0B0; background-color: #FFF0F0 } /* Comment.Special */
.hl .gd { color: #A00000 } /* Generic.Deleted */
.hl .ge { font-style: italic } /* Generic.Emph */
.hl .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
.hl .gr { color: #F00 } /* Generic.Error */
.hl .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.hl .gi { color: #00A000 } /* Generic.Inserted */
.hl .go { color: #888 } /* Generic.Output */
.hl .gp { color: #C65D09; font-weight: bold } /* Generic.Prompt */
.hl .gs { font-weight: bold } /* Generic.Strong */
.hl .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.hl .gt { color: #04D } /* Generic.Traceback */
.hl .kc { color: #007020; font-weight: bold } /* Keyword.Constant */
.hl .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
.hl .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */
.hl .kp { color: #007020 } /* Keyword.Pseudo */
.hl .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */
.hl .kt { color: #902000 } /* Keyword.Type */
.hl .m { color: #40A070 } /* Literal.Number */
.hl .s { color: #4070A0 } /* Literal.String */
.hl .na { color: #4070A0 } /* Name.Attribute */
.hl .nb { color: #007020 } /* Name.Builtin */
.hl .nc { color: #0E84B5; font-weight: bold } /* Name.Class */
.hl .no { color: #60ADD5 } /* Name.Constant */
.hl .nd { color: #555; font-weight: bold } /* Name.Decorator */
.hl .ni { color: #D55537; font-weight: bold } /* Name.Entity */
.hl .ne { color: #007020 } /* Name.Exception */
.hl .nf { color: #06287E } /* Name.Function */
.hl .nl { color: #002070; font-weight: bold } /* Name.Label */
.hl .nn { color: #0E84B5; font-weight: bold } /* Name.Namespace */
.hl .nt { color: #062873; font-weight: bold } /* Name.Tag */
.hl .nv { color: #BB60D5 } /* Name.Variable */
.hl .ow { color: #007020; font-weight: bold } /* Operator.Word */
.hl .w { color: #BBB } /* Text.Whitespace */
.hl .mb { color: #40A070 } /* Literal.Number.Bin */
.hl .mf { color: #40A070 } /* Literal.Number.Float */
.hl .mh { color: #40A070 } /* Literal.Number.Hex */
.hl .mi { color: #40A070 } /* Literal.Number.Integer */
.hl .mo { color: #40A070 } /* Literal.Number.Oct */
.hl .sa { color: #4070A0 } /* Literal.String.Affix */
.hl .sb { color: #4070A0 } /* Literal.String.Backtick */
.hl .sc { color: #4070A0 } /* Literal.String.Char */
.hl .dl { color: #4070A0 } /* Literal.String.Delimiter */
.hl .sd { color: #4070A0; font-style: italic } /* Literal.String.Doc */
.hl .s2 { color: #4070A0 } /* Literal.String.Double */
.hl .se { color: #4070A0; font-weight: bold } /* Literal.String.Escape */
.hl .sh { color: #4070A0 } /* Literal.String.Heredoc */
.hl .si { color: #70A0D0; font-style: italic } /* Literal.String.Interpol */
.hl .sx { color: #C65D09 } /* Literal.String.Other */
.hl .sr { color: #235388 } /* Literal.String.Regex */
.hl .s1 { color: #4070A0 } /* Literal.String.Single */
.hl .ss { color: #517918 } /* Literal.String.Symbol */
.hl .bp { color: #007020 } /* Name.Builtin.Pseudo */
.hl .fm { color: #06287E } /* Name.Function.Magic */
.hl .vc { color: #BB60D5 } /* Name.Variable.Class */
.hl .vg { color: #BB60D5 } /* Name.Variable.Global */
.hl .vi { color: #BB60D5 } /* Name.Variable.Instance */
.hl .vm { color: #BB60D5 } /* Name.Variable.Magic */
.hl .il { color: #40A070 } /* Literal.Number.Integer.Long */
pre { line-height: 125%; }
td.linenos .normal { color: #6e7681; background-color: #0d1117; padding-left: 5px; padding-right: 5px; }
span.linenos { color: #6e7681; background-color: #0d1117; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #e6edf3; background-color: #6e7681; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #e6edf3; background-color: #6e7681; padding-left: 5px; padding-right: 5px; }
[data-theme="dark"] .hl .hll { background-color: #6e7681 }
[data-theme="dark"] .hl { background: #0d1117; color: #E6EDF3 }
[data-theme="dark"] .hl .c { color: #8B949E; font-style: italic } /* Comment */
[data-theme="dark"] .hl .err { color: #F85149 } /* Error */
[data-theme="dark"] .hl .esc { color: #E6EDF3 } /* Escape */
[data-theme="dark"] .hl .g { color: #E6EDF3 } /* Generic */
[data-theme="dark"] .hl .k { color: #FF7B72 } /* Keyword */
[data-theme="dark"] .hl .l { color: #A5D6FF } /* Literal */
[data-theme="dark"] .hl .n { color: #E6EDF3 } /* Name */
[data-theme="dark"] .hl .o { color: #FF7B72; font-weight: bold } /* Operator */
[data-theme="dark"] .hl .x { color: #E6EDF3 } /* Other */
[data-theme="dark"] .hl .p { color: #E6EDF3 } /* Punctuation */
[data-theme="dark"] .hl .ch { color: #8B949E; font-style: italic } /* Comment.Hashbang */
[data-theme="dark"] .hl .cm { color: #8B949E; font-style: italic } /* Comment.Multiline */
[data-theme="dark"] .hl .cp { color: #8B949E; font-weight: bold; font-style: italic } /* Comment.Preproc */
[data-theme="dark"] .hl .cpf { color: #8B949E; font-style: italic } /* Comment.PreprocFile */
[data-theme="dark"] .hl .c1 { color: #8B949E; font-style: italic } /* Comment.Single */
[data-theme="dark"] .hl .cs { color: #8B949E; font-weight: bold; font-style: italic } /* Comment.Special */
[data-theme="dark"] .hl .gd { color: #FFA198; background-color: #490202 } /* Generic.Deleted */
[data-theme="dark"] .hl .ge { color: #E6EDF3; font-style: italic } /* Generic.Emph */
[data-theme="dark"] .hl .ges { color: #E6EDF3; font-weight: bold; font-style: italic } /* Generic.EmphStrong */
[data-theme="dark"] .hl .gr { color: #FFA198 } /* Generic.Error */
[data-theme="dark"] .hl .gh { color: #79C0FF; font-weight: bold } /* Generic.Heading */
[data-theme="dark"] .hl .gi { color: #56D364; background-color: #0F5323 } /* Generic.Inserted */
[data-theme="dark"] .hl .go { color: #8B949E } /* Generic.Output */
[data-theme="dark"] .hl .gp { color: #8B949E } /* Generic.Prompt */
[data-theme="dark"] .hl .gs { color: #E6EDF3; font-weight: bold } /* Generic.Strong */
[data-theme="dark"] .hl .gu { color: #79C0FF } /* Generic.Subheading */
[data-theme="dark"] .hl .gt { color: #FF7B72 } /* Generic.Traceback */
[data-theme="dark"] .hl .g-Underline { color: #E6EDF3; text-decoration: underline } /* Generic.Underline */
[data-theme="dark"] .hl .kc { color: #79C0FF } /* Keyword.Constant */
[data-theme="dark"] .hl .kd { color: #FF7B72 } /* Keyword.Declaration */
[data-theme="dark"] .hl .kn { color: #FF7B72 } /* Keyword.Namespace */
[data-theme="dark"] .hl .kp { color: #79C0FF } /* Keyword.Pseudo */
[data-theme="dark"] .hl .kr { color: #FF7B72 } /* Keyword.Reserved */
[data-theme="dark"] .hl .kt { color: #FF7B72 } /* Keyword.Type */
[data-theme="dark"] .hl .ld { color: #79C0FF } /* Literal.Date */
[data-theme="dark"] .hl .m { color: #A5D6FF } /* Literal.Number */
[data-theme="dark"] .hl .s { color: #A5D6FF } /* Literal.String */
[data-theme="dark"] .hl .na { color: #E6EDF3 } /* Name.Attribute */
[data-theme="dark"] .hl .nb { color: #E6EDF3 } /* Name.Builtin */
[data-theme="dark"] .hl .nc { color: #F0883E; font-weight: bold } /* Name.Class */
[data-theme="dark"] .hl .no { color: #79C0FF; font-weight: bold } /* Name.Constant */
[data-theme="dark"] .hl .nd { color: #D2A8FF; font-weight: bold } /* Name.Decorator */
[data-theme="dark"] .hl .ni { color: #FFA657 } /* Name.Entity */
[data-theme="dark"] .hl .ne { color: #F0883E; font-weight: bold } /* Name.Exception */
[data-theme="dark"] .hl .nf { color: #D2A8FF; font-weight: bold } /* Name.Function */
[data-theme="dark"] .hl .nl { color: #79C0FF; font-weight: bold } /* Name.Label */
[data-theme="dark"] .hl .nn { color: #FF7B72 } /* Name.Namespace */
[data-theme="dark"] .hl .nx { color: #E6EDF3 } /* Name.Other */
[data-theme="dark"] .hl .py { color: #79C0FF } /* Name.Property */
[data-theme="dark"] .hl .nt { color: #7EE787 } /* Name.Tag */
[data-theme="dark"] .hl .nv { color: #79C0FF } /* Name.Variable */
[data-theme="dark"] .hl .ow { color: #FF7B72; font-weight: bold } /* Operator.Word */
[data-theme="dark"] .hl .pm { color: #E6EDF3 } /* Punctuation.Marker */
[data-theme="dark"] .hl .w { color: #6E7681 } /* Text.Whitespace */
[data-theme="dark"] .hl .mb { color: #A5D6FF } /* Literal.Number.Bin */
[data-theme="dark"] .hl .mf { color: #A5D6FF } /* Literal.Number.Float */
[data-theme="dark"] .hl .mh { color: #A5D6FF } /* Literal.Number.Hex */
[data-theme="dark"] .hl .mi { color: #A5D6FF } /* Literal.Number.Integer */
[data-theme="dark"] .hl .mo { color: #A5D6FF } /* Literal.Number.Oct */
[data-theme="dark"] .hl .sa { color: #79C0FF } /* Literal.String.Affix */
[data-theme="dark"] .hl .sb { color: #A5D6FF } /* Literal.String.Backtick */
[data-theme="dark"] .hl .sc { color: #A5D6FF } /* Literal.String.Char */
[data-theme="dark"] .hl .dl { color: #79C0FF } /* Literal.String.Delimiter */
[data-theme="dark"] .hl .sd { color: #A5D6FF } /* Literal.String.Doc */
[data-theme="dark"] .hl .s2 { color: #A5D6FF } /* Literal.String.Double */
[data-theme="dark"] .hl .se { color: #79C0FF } /* Literal.String.Escape */
[data-theme="dark"] .hl .sh { color: #79C0FF } /* Literal.String.Heredoc */
[data-theme="dark"] .hl .si { color: #A5D6FF } /* Literal.String.Interpol */
[data-theme="dark"] .hl .sx { color: #A5D6FF } /* Literal.String.Other */
[data-theme="dark"] .hl .sr { color: #79C0FF } /* Literal.String.Regex */
[data-theme="dark"] .hl .s1 { color: #A5D6FF } /* Literal.String.Single */
[data-theme="dark"] .hl .ss { color: #A5D6FF } /* Literal.String.Symbol */
[data-theme="dark"] .hl .bp { color: #E6EDF3 } /* Name.Builtin.Pseudo */
[data-theme="dark"] .hl .fm { color: #D2A8FF; font-weight: bold } /* Name.Function.Magic */
[data-theme="dark"] .hl .vc { color: #79C0FF } /* Name.Variable.Class */
[data-theme="dark"] .hl .vg { color: #79C0FF } /* Name.Variable.Global */
[data-theme="dark"] .hl .vi { color: #79C0FF } /* Name.Variable.Instance */
[data-theme="dark"] .hl .vm { color: #79C0FF } /* Name.Variable.Magic */
[data-theme="dark"] .hl .il { color: #A5D6FF } /* Literal.Number.Integer.Long */