.toc-shell {
  --toc-ink: #161413;
  --toc-muted: #6b625b;
  --toc-paper: #f6f1ea;
  --toc-footer: #fbf8f4;
  --toc-card: #fffdf9;
  --toc-line: #ddd1c5;
  --toc-orange: #df7c30;
  color: var(--toc-ink);
  font: 400 16px/1.65 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: 0;
  color-scheme: light;
}
html[data-theme="dark"] .toc-shell {
  --toc-ink: #eee8e1;
  --toc-muted: #b0a7a0;
  --toc-paper: #121110;
  --toc-footer: #171514;
  --toc-card: #1b1816;
  --toc-line: #312b28;
  color-scheme: dark;
}
.toc-shell *, .toc-shell *::before, .toc-shell *::after { box-sizing: border-box; letter-spacing: 0; }
.toc-shell a { color: inherit; text-decoration: none; }
.toc-shell button, .toc-shell input { font: inherit; letter-spacing: 0; }
.toc-shell :is(a, button, input, summary):focus-visible { outline: 3px solid var(--toc-orange); outline-offset: 4px; }
.toc-shell .toc-wrap { width: min(1240px, calc(100% - 40px)); margin-inline: auto; }
.toc-shell-header { position: sticky; top: 0; z-index: 100; background: var(--toc-paper); background: color-mix(in srgb, var(--toc-paper) 84%, transparent); backdrop-filter: blur(14px) saturate(160%); border-bottom: 1px solid var(--toc-line); }
.toc-shell .toc-header-inner { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.toc-shell .toc-brand { display: flex; align-items: center; gap: 14px; min-width: 0; }
.toc-shell .toc-brand img { display: block; width: 52px; height: 52px; flex: 0 0 52px; object-fit: contain; }
.toc-shell .toc-brand span { font-size: 16px; font-weight: 850; line-height: 1.35; overflow-wrap: anywhere; }
.toc-shell .toc-header-actions { display: flex; align-items: center; gap: 18px; }
.toc-shell ul { list-style: none; padding: 0; margin: 0; }
.toc-shell .toc-primary-menu { display: flex; align-items: center; gap: 10px; }
.toc-shell .toc-primary-menu a, .toc-shell .toc-tools summary { display: inline-flex; align-items: center; gap: 8px; padding: 9px 13px; border-radius: 8px; color: var(--toc-muted); font-size: 14.4px; font-weight: 700; }
.toc-shell .toc-primary-menu a:hover, .toc-shell .toc-tools summary:hover, .toc-shell a[aria-current="page"] { background: color-mix(in srgb, var(--toc-orange) 10%, transparent); color: var(--toc-ink); }
.toc-shell .toc-tools { position: relative; }
.toc-shell .toc-tools summary { cursor: pointer; list-style: none; }
.toc-shell .toc-tools summary::-webkit-details-marker { display: none; }
.toc-shell .toc-tools[open] summary > span { transform: rotate(180deg); }
.toc-shell .toc-tools-menu { position: absolute; right: 0; top: calc(100% + 8px); min-width: 210px; padding: 8px; background: var(--toc-card); border: 1px solid var(--toc-line); border-radius: 8px; box-shadow: 0 8px 24px #0002; }
.toc-shell .toc-tools-menu a, .toc-shell .toc-soon { display: flex; width: 100%; padding: 9px 13px; gap: 8px; }
.toc-shell .toc-soon { color: var(--toc-muted); font-size: 14.4px; }
.toc-shell sup { color: var(--toc-orange); font-size: 9px; font-weight: 800; }
.toc-shell .toc-theme-toggle { display: inline-flex; align-items: center; gap: 12px; padding: 7px 11px; border: 1px solid var(--toc-line); border-radius: 8px; background: var(--toc-card); color: var(--toc-ink); cursor: pointer; font-size: 14.4px; font-weight: 700; flex-shrink: 0; }
.toc-shell .toc-theme-track { width: 42px; height: 24px; padding: 3px; display: flex; align-items: center; border-radius: 8px; background: color-mix(in srgb, var(--toc-ink) 10%, transparent); }
.toc-shell .toc-theme-track > span { width: 18px; height: 18px; border-radius: 8px; background: var(--toc-orange); transition: transform .2s ease; }
html[data-theme="dark"] .toc-shell .toc-theme-track > span { transform: translateX(18px); }
.toc-shell .toc-mobile-toggle { display: none; }
.toc-shell-footer { margin-top: 56px; padding: 14px 0 10px; border-top: 2px solid var(--toc-line); background: var(--toc-footer); }
.toc-shell .toc-footer-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; padding: 4px 0 8px; align-items: start; }
.toc-shell .toc-footer-panel { min-width: 0; padding: 16px 32px; }
.toc-shell .toc-footer-panel:first-child { padding-left: 0; }
.toc-shell .toc-footer-panel:last-child { padding-right: 0; }
.toc-shell .toc-kicker { display: inline-block; position: relative; margin: 0 0 10px; padding-bottom: 16px; font: 600 11.2px/1.65 Inter, ui-sans-serif, system-ui, sans-serif; text-transform: uppercase; color: var(--toc-muted); }
.toc-shell .toc-kicker::after { content: ""; position: absolute; left: 0; bottom: 0; width: 26px; height: 2px; background: var(--toc-orange); transform: skewX(-32deg); }
.toc-shell .toc-footer-menu { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 18px; font-size: 14.4px; color: var(--toc-muted); }
.toc-shell .toc-footer-menu a { display: inline-block; padding-block: 3px; }
.toc-shell .toc-search { position: relative; margin-top: 8px; }
.toc-shell .toc-search input { min-width: 0; width: 100%; padding: 12px 50px 12px 14px; border: 1px solid var(--toc-line); border-radius: 8px; background: transparent; color: var(--toc-ink); font-size: 14px; }
.toc-shell .toc-search input::placeholder { color: var(--toc-muted); opacity: 1; }
.toc-shell .toc-search button { position: absolute; top: 50%; right: 0; transform: translateY(-50%); width: 39px; height: 39px; padding: 9px; border: 0; border-radius: 8px; background: var(--toc-orange); color: #fff; cursor: pointer; }
.toc-shell .toc-search svg, .toc-shell .toc-instagram svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.toc-shell .toc-instagram { display: block; width: 29px; height: 29px; color: var(--toc-muted); }
.toc-shell .toc-instagram-dot { fill: currentColor; stroke: none; }
.toc-shell .toc-footer-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; margin-top: 8px; padding-top: 8px; padding-bottom: 2px; border-top: 1px solid var(--toc-line); color: var(--toc-muted); font-size: 14.4px; }
.toc-shell .toc-footer-bottom p { margin: 0; line-height: 1.35; }
.toc-shell .toc-footer-bottom nav { display: flex; flex-wrap: wrap; gap: 8px 20px; font-size: 12px; }
.toc-shell-footer a:hover { color: var(--toc-ink); text-decoration: underline; }
.toc-shell .toc-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (max-width: 1100px) {
  .toc-shell .toc-header-inner { flex-wrap: wrap; padding-block: 14px; }
  .toc-shell .toc-mobile-toggle { display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 38px; padding: 0; border: 1px solid var(--toc-line); border-radius: 8px; background: var(--toc-card); color: var(--toc-ink); cursor: pointer; flex-shrink: 0; }
  .toc-shell .toc-hamburger { width: 22px; height: 16px; display: flex; flex-direction: column; justify-content: space-between; }
  .toc-shell .toc-hamburger span { height: 2px; background: currentColor; }
  .toc-shell .toc-header-actions { display: none; width: 100%; align-items: flex-start; flex-direction: column; padding-bottom: 4px; }
  .toc-shell .toc-header-inner:has(.toc-mobile-toggle[aria-expanded="true"]) .toc-header-actions { display: flex; }
  .toc-shell .toc-header-actions nav { width: 100%; }
  .toc-shell .toc-primary-menu { flex-wrap: wrap; }
  .toc-shell .toc-tools-menu { position: static; margin-top: 8px; box-shadow: none; }
}
@media (max-width: 600px) {
  .toc-shell .toc-header-inner { gap: 12px; }
  .toc-shell .toc-brand { flex: 1; gap: 10px; }
  .toc-shell .toc-brand span { font-size: 14px; max-width: 150px; }
  .toc-shell .toc-primary-menu { align-items: stretch; flex-direction: column; gap: 2px; }
  .toc-shell .toc-primary-menu > li > a, .toc-shell .toc-tools summary { width: 100%; }
  .toc-shell .toc-footer-grid { grid-template-columns: 1fr; }
  .toc-shell .toc-footer-panel { padding: 16px 0; }
  .toc-shell .toc-footer-bottom { align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  .toc-shell .toc-theme-track > span { transition: none; }
}
