Open demo

CSS code

HTML
<svg width="0" height="0" style="position:absolute" aria-hidden="true" focusable="false">
  <symbol id="dk-i-terminal" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4.5" width="18" height="15" rx="2"/><path d="m7 9.5 3 2.5-3 2.5M12.5 15H17"/></symbol>
  <symbol id="dk-i-search" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="6.5"/><path d="m20 20-4.2-4.2"/></symbol>
  <symbol id="dk-i-bell" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M6 9a6 6 0 1 1 12 0c0 6 2.5 7.5 2.5 7.5h-17S6 15 6 9"/><path d="M10.3 20a2 2 0 0 0 3.4 0"/></symbol>
  <symbol id="dk-i-home" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M4 10.5 12 4l8 6.5V20h-5.5v-6h-5v6H4z"/></symbol>
  <symbol id="dk-i-rocket" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M5 15c-1.5 1.3-2 4-2 4s2.7-.5 4-2M14.5 4.5C17.5 3 21 3 21 3s0 3.5-1.5 6.5L13 16l-5-5z"/><path d="m9.5 12.5-3-1L8.5 9h4M11.5 14.5l1 3 2.5-2V11.5"/></symbol>
  <symbol id="dk-i-layers" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="m12 3.5 8.5 4.5-8.5 4.5L3.5 8z"/><path d="m3.5 12 8.5 4.5 8.5-4.5M3.5 16l8.5 4.5 8.5-4.5"/></symbol>
  <symbol id="dk-i-chart" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M4 20V4M4 20h16"/><path d="m7.5 15 3.5-4 3 2.5 5-6"/></symbol>
  <symbol id="dk-i-db" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><ellipse cx="12" cy="6" rx="7.5" ry="2.75"/><path d="M4.5 6v12c0 1.5 3.4 2.75 7.5 2.75s7.5-1.25 7.5-2.75V6M4.5 12c0 1.5 3.4 2.75 7.5 2.75s7.5-1.25 7.5-2.75"/></symbol>
  <symbol id="dk-i-users" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="9" cy="8.5" r="3.5"/><path d="M3 19.5c.6-3.3 3-5 6-5s5.4 1.7 6 5"/><path d="M15.5 5.2a3.5 3.5 0 0 1 0 6.6M17.5 14.7c1.8.6 3 2.2 3.5 4.8"/></symbol>
  <symbol id="dk-i-settings" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V21a2 2 0 1 1-4 0v-.1a1.7 1.7 0 0 0-1.1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H3a2 2 0 1 1 0-4h.1a1.7 1.7 0 0 0 1.5-1.1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3H9a1.7 1.7 0 0 0 1-1.5V3a2 2 0 1 1 4 0v.1a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8V9a1.7 1.7 0 0 0 1.5 1H21a2 2 0 1 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1z"/></symbol>
  <symbol id="dk-i-key" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="8" cy="15" r="4"/><path d="m11 12 8.5-8.5M16 7l2.5 2.5M14 9l2 2"/></symbol>
  <symbol id="dk-i-chev" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="m6 9 6 6 6-6"/></symbol>
  <symbol id="dk-i-chevr" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="m9 6 6 6-6 6"/></symbol>
  <symbol id="dk-i-globe" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="8.5"/><path d="M3.5 12h17M12 3.5c2.5 2.6 3.6 5.4 3.6 8.5s-1.1 5.9-3.6 8.5c-2.5-2.6-3.6-5.4-3.6-8.5s1.1-5.9 3.6-8.5z"/></symbol>
  <symbol id="dk-i-branch" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="6.5" cy="5.5" r="2"/><circle cx="6.5" cy="18.5" r="2"/><circle cx="17.5" cy="7.5" r="2"/><path d="M6.5 7.5v9M17.5 9.5c0 4-4 5-11 7"/></symbol>
</svg>
<section><span class="lbl">Navbar · current page, command palette trigger, notifications</span><header class="dk-navbar">
<a class="dk-brand" href="#home"><span class="dk-brand__mark" aria-hidden="true"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-terminal"/></svg></span>Northwind</a>
<nav aria-label="Main"><ul class="dk-navlinks"><li><a class="dk-navlink" href="#overview" aria-current="page">Overview</a></li><li><a class="dk-navlink" href="#deployments">Deployments</a></li><li><a class="dk-navlink" href="#logs">Logs</a></li><li><a class="dk-navlink" href="#analytics">Analytics</a></li><li><a class="dk-navlink" href="#settings">Settings</a></li></ul></nav>
<div class="dk-navbar__end"><button class="dk-cmdk" type="button" aria-keyshortcuts="Meta+K"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-search"/></svg><span class="dk-cmdk__text">Search or jump to</span><span class="dk-cmdk__keys" aria-hidden="true"><kbd class="dk-kbd">⌘</kbd><kbd class="dk-kbd">K</kbd></span></button><button class="dk-btn dk-btn--icon dk-dot" type="button" aria-label="Notifications, 2 unread"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-bell"/></svg></button><button class="dk-avatar" type="button" aria-label="Account menu for Mira Chen">MC</button></div>
</header></section>
<div class="cols"><section><span class="lbl">Sidebar</span><aside class="dk-sidebar">
<button class="dk-workspace" type="button"><span class="dk-avatar" aria-hidden="true">NW</span><span><b>Northwind Labs</b><small>Pro plan · 12 members</small></span><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-chev"/></svg></button>
<nav class="dk-sidenav" aria-label="Project"><h3>Project</h3><ul>
<li><a class="dk-sidelink" href="#overview"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-home"/></svg>Overview</a></li>
<li><a class="dk-sidelink" href="#deployments"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-rocket"/></svg>Deployments<span class="dk-count">3</span></a></li>
<li><a class="dk-sidelink" href="#logs" aria-current="page"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-layers"/></svg>Logs</a></li>
<li><a class="dk-sidelink" href="#analytics"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-chart"/></svg>Analytics</a></li>
<li><a class="dk-sidelink" href="#storage"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-db"/></svg>Storage</a></li>
</ul></nav>
<nav class="dk-sidenav" aria-label="Team"><h3>Team</h3><ul>
<li><a class="dk-sidelink" href="#members"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-users"/></svg>Members<span class="dk-count">12</span></a></li>
<li><a class="dk-sidelink" href="#access-tokens"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-key"/></svg>Access tokens</a></li>
<li><a class="dk-sidelink" href="#settings"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-settings"/></svg>Settings</a></li>
</ul></nav>
<div class="dk-usage"><p><span>Build minutes</span><b>3,420 / 6,000</b></p><div class="dk-bar" role="progressbar" aria-label="Build minutes used" aria-valuenow="57" aria-valuemin="0" aria-valuemax="100"><span style="width:57%"></span></div></div>
</aside></section><div class="stack">
<section><span class="lbl">Breadcrumb</span><nav class="dk-crumbs" aria-label="Breadcrumb"><ol><li><a href="#northwind">Northwind</a></li><li><a href="#atlas-api">atlas-api</a></li><li><a href="#deployments">Deployments</a></li><li><span aria-current="page">dpl_7Kq2xT</span></li></ol></nav></section>
<section><span class="lbl">Tabs · underline marks the current one</span><nav aria-label="Deployment"><ul class="dk-tabs">
<li><a class="dk-tab" href="#build-output">Build output</a></li>
<li><a class="dk-tab" href="#runtime-logs" aria-current="page">Runtime logs<span class="dk-count">1.2k</span></a></li>
<li><a class="dk-tab" href="#functions">Functions<span class="dk-count">18</span></a></li>
<li><a class="dk-tab" href="#environment">Environment</a></li>
</ul></nav></section>
<section><span class="lbl">Pill navigation</span><nav aria-label="Filter deployments"><ul class="dk-pills"><li><a class="dk-pill" href="#all" aria-current="page">All</a></li><li><a class="dk-pill" href="#production">Production</a></li><li><a class="dk-pill" href="#preview">Preview</a></li><li><a class="dk-pill" href="#failed">Failed</a></li></ul></nav></section>
<section><span class="lbl">Command palette trigger · large</span><button class="dk-cmdk dk-cmdk--lg" type="button" aria-keyshortcuts="Meta+K"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-search"/></svg><span>Search projects, deployments and docs</span><span class="dk-cmdk__keys" aria-hidden="true"><kbd class="dk-kbd">⌘</kbd><kbd class="dk-kbd">K</kbd></span></button></section>
</div></div>
CSS
/* ── Dark UI kit tokens (uiCookies) — identical in every set ──────────────────────────────
   Dark first. Elevation is a lighter surface, not a shadow: surface-0 is the page, 1 cards and
   panels, 2 controls, menus and dialogs, 3 hover, selected rows and tooltips.
   Every colour is a light-dark() pair, so flipping color-scheme turns the whole kit light:
   data-theme="dark" | "light" | "system" on any wrapper (system follows prefers-color-scheme),
   or a checked .theme-pick radio inside a [data-theme] element (:has()).
   Contrast, dark | light, on the worst surface (surface-3): text-1 12.2 | 15.0, text-2 6.6 | 7.3,
   text-3 4.8 | 5.4, accent 5.4 | 5.1, success 7.7 | 5.0, warning 8.4 | 5.2, danger 6.8 | 5.0;
   edge (control boundaries) 3.3 | 3.1 and focus 7.9 | 5.9 against every surface. */
:root{color-scheme:dark}
[data-theme="dark"]{color-scheme:dark}
[data-theme="light"]{color-scheme:light}
[data-theme="system"]{color-scheme:light dark}
[data-theme]:has(.theme-pick[value="dark"]:checked){color-scheme:dark}
[data-theme]:has(.theme-pick[value="light"]:checked){color-scheme:light}
[data-theme]:has(.theme-pick[value="system"]:checked){color-scheme:light dark}
:root{
  --surface-0:light-dark(#eef1f5,#0b0d12);   /* page */
  --surface-1:light-dark(#ffffff,#151821);   /* cards, panels, navbar, sidebar */
  --surface-2:light-dark(#f6f7f9,#1d212c);   /* controls, menus, dialogs, toasts */
  --surface-3:light-dark(#e6e9ef,#262b38);   /* hover, selected rows, tooltips */
  --text-1:light-dark(#12151c,#eceef3);      /* primary text */
  --text-2:light-dark(#434a5a,#aab1bf);      /* secondary text */
  --text-3:light-dark(#555d6e,#8f96a8);      /* captions, placeholders, axis labels */
  --border:light-dark(#dde1e8,#2a2f3c);      /* decorative 1px dividers and card edges */
  --edge:light-dark(#7c8496,#737b90);        /* control boundaries: fields, boxes, tracks */
  --accent:light-dark(#4452d0,#8b97ff);      /* the one vivid colour: links, selected, primary */
  --accent-soft:light-dark(#e6e8ff,#232a4d); /* selected backgrounds; accent text keeps 5.2 | 5.3 on it */
  --on-accent:light-dark(#ffffff,#0b0d12);   /* text on accent fills, 6.2 | 7.4 */
  --success:light-dark(#11713f,#5fd4a0);     /* desaturated for dark, so they do not vibrate */
  --warning:light-dark(#875500,#f0c060);
  --danger:light-dark(#bb2532,#ff9790);
  --focus:light-dark(#3b48c4,#b5bdff);       /* 2px focus ring */
  --highlight:light-dark(rgb(255 255 255 / 0),rgb(255 255 255 / .045)); /* 1px top light on dark surfaces */
  --shadow-color:light-dark(rgb(16 24 40 / .16),rgb(0 0 0 / .55));     /* overlays only */
  --radius:12px;--radius-sm:8px;
  --mono:ui-monospace,"SF Mono","Cascadia Code",Menlo,Consolas,monospace;
}
/* No light-dark() (Chrome < 123, Safari < 17.5, Firefox < 120): the same values, chosen by attribute */
@supports not (color:light-dark(#fff,#000)){
  :root,[data-theme="dark"]{--surface-0:#0b0d12;--surface-1:#151821;--surface-2:#1d212c;--surface-3:#262b38;--text-1:#eceef3;--text-2:#aab1bf;--text-3:#8f96a8;--border:#2a2f3c;--edge:#737b90;--accent:#8b97ff;--accent-soft:#232a4d;--on-accent:#0b0d12;--success:#5fd4a0;--warning:#f0c060;--danger:#ff9790;--focus:#b5bdff;--highlight:rgb(255 255 255 / .045);--shadow-color:rgb(0 0 0 / .55)}
  [data-theme="light"]{--surface-0:#eef1f5;--surface-1:#ffffff;--surface-2:#f6f7f9;--surface-3:#e6e9ef;--text-1:#12151c;--text-2:#434a5a;--text-3:#555d6e;--border:#dde1e8;--edge:#7c8496;--accent:#4452d0;--accent-soft:#e6e8ff;--on-accent:#ffffff;--success:#11713f;--warning:#875500;--danger:#bb2532;--focus:#3b48c4;--highlight:rgb(255 255 255 / 0);--shadow-color:rgb(16 24 40 / .16)}
  @media (prefers-color-scheme:light){[data-theme="system"]{--surface-0:#eef1f5;--surface-1:#ffffff;--surface-2:#f6f7f9;--surface-3:#e6e9ef;--text-1:#12151c;--text-2:#434a5a;--text-3:#555d6e;--border:#dde1e8;--edge:#7c8496;--accent:#4452d0;--accent-soft:#e6e8ff;--on-accent:#ffffff;--success:#11713f;--warning:#875500;--danger:#bb2532;--focus:#3b48c4;--highlight:rgb(255 255 255 / 0);--shadow-color:rgb(16 24 40 / .16)}}
}
@media (prefers-contrast:more){:root{--border:var(--edge);--text-3:var(--text-2)}}
[data-theme]{background:var(--surface-0);color:var(--text-1)}
/* Components */
:where([class^="dk-"],[class*=" dk-"]),:where([class^="dk-"],[class*=" dk-"])::before,:where([class^="dk-"],[class*=" dk-"])::after{box-sizing:border-box}
.dk-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.dk-ico{width:18px;height:18px;flex:none}
.dk-kbd{display:inline-grid;place-items:center;min-width:1.45rem;height:1.35rem;padding:0 .35rem;border:1px solid var(--border);border-bottom-width:2px;
  border-radius:5px;background:var(--surface-2);color:var(--text-2);font:500 .72rem/1 var(--mono)}
.dk-link{color:var(--accent);font-weight:600;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 45%,transparent);text-underline-offset:3px}
.dk-link:hover{text-decoration-color:currentColor}
.dk-link:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:3px}
/* Card: surface-1 with a 1px border and a 1px top highlight (dark only); no shadow */
.dk-card{padding:20px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-1);color:var(--text-1);box-shadow:inset 0 1px 0 var(--highlight)}
.dk-card h2,.dk-card h3,.dk-card p{margin:0}
.dk-card__title{font-size:1rem;font-weight:650;letter-spacing:-.01em}
.dk-card__sub{margin-top:2px;font-size:.85rem;color:var(--text-2)}
/* Buttons: one recipe, variants only swap four custom properties */
.dk-btn{--b-bg:var(--surface-2);--b-fg:var(--text-1);--b-bd:var(--border);--b-hover:var(--surface-3);
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:38px;padding:.5rem 1rem;
  border:1px solid var(--b-bd);border-radius:var(--radius-sm);background:var(--b-bg);color:var(--b-fg);
  font-family:inherit;font-size:.875rem;font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer;
  box-shadow:inset 0 1px 0 var(--highlight);transition:background-color .15s,border-color .15s,color .15s}
.dk-btn:hover{background:var(--b-hover)}
.dk-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.dk-btn--primary{--b-bg:var(--accent);--b-fg:var(--on-accent);--b-bd:var(--accent);--b-hover:color-mix(in srgb,var(--accent) 86%,var(--text-1))}
.dk-btn--ghost{--b-bg:transparent;--b-bd:transparent;--b-fg:var(--text-2);box-shadow:none}
.dk-btn--ghost:hover{color:var(--text-1)}
.dk-btn--danger{--b-fg:var(--danger);--b-bd:color-mix(in srgb,var(--danger) 40%,var(--border))}
.dk-btn--sm{min-height:32px;padding:.35rem .75rem;font-size:.8rem}
.dk-btn--lg{min-height:46px;padding:.7rem 1.35rem;font-size:.95rem}
.dk-btn--block{width:100%}
.dk-btn:disabled{opacity:.5;cursor:not-allowed}
.dk-btn[aria-busy="true"]{cursor:progress}
.dk-btn:disabled:hover{background:var(--b-bg)}
.dk-btn--icon{width:38px;padding:0}
.dk-btn--icon.dk-btn--sm{width:32px}
.dk-btn--icon.dk-btn--lg{width:46px}
.dk-btn--round{border-radius:999px}
.dk-spin{width:15px;height:15px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:dk-spin .75s linear infinite}
@keyframes dk-spin{to{transform:rotate(1turn)}}
@media (prefers-reduced-motion:reduce){.dk-btn{transition:none}.dk-spin{animation-duration:2.4s}}
/* Navbar */
.dk-navbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;min-height:58px;padding:10px 14px 10px 18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-1);box-shadow:inset 0 1px 0 var(--highlight)}
.dk-brand{display:inline-flex;align-items:center;gap:10px;color:var(--text-1);font-weight:700;letter-spacing:-.01em;text-decoration:none}
.dk-brand__mark{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--accent);color:var(--on-accent)}
.dk-brand:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:6px}
.dk-navlinks{display:flex;gap:2px;margin:0;padding:0;list-style:none;overflow-x:auto}
.dk-navlink{display:inline-flex;align-items:center;min-height:34px;padding:.4rem .75rem;border-radius:var(--radius-sm);color:var(--text-2);font-size:.875rem;font-weight:500;text-decoration:none;white-space:nowrap;transition:background-color .15s,color .15s}
.dk-navlink:hover{background:var(--surface-3);color:var(--text-1)}
.dk-navlink[aria-current="page"]{background:var(--surface-3);color:var(--text-1);font-weight:600}
.dk-navlink:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
.dk-navbar__end{display:flex;align-items:center;gap:8px;margin-left:auto}
.dk-dot{position:relative}
.dk-dot::after{content:"";position:absolute;top:7px;right:8px;width:8px;height:8px;border:2px solid var(--surface-2);border-radius:50%;background:var(--danger)}
.dk-avatar{display:inline-grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:.72rem;font-weight:700}
button.dk-avatar{border:1px solid var(--border);cursor:pointer;font-family:inherit}
button.dk-avatar:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.dk-navbar>nav{min-width:0}
@media (max-width:860px){.dk-navbar>nav{order:3;width:100%}}
/* Command palette trigger: looks like a field, is a button */
.dk-cmdk{display:inline-flex;align-items:center;gap:10px;min-height:36px;padding:.35rem .5rem .35rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);
  background:var(--surface-2);color:var(--text-3);font-family:inherit;font-size:.85rem;text-align:left;cursor:pointer;transition:border-color .15s,color .15s}
.dk-cmdk:hover{border-color:var(--edge);color:var(--text-2)}
.dk-cmdk:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.dk-cmdk__keys{display:inline-flex;gap:3px;margin-left:auto}
.dk-cmdk--lg{width:100%;min-height:48px;padding:.5rem .6rem .5rem 1rem;border-color:var(--edge);font-size:.95rem}
@media (max-width:560px){.dk-navbar .dk-cmdk__text,.dk-navbar .dk-cmdk__keys{display:none}}
/* Sidebar */
.dk-sidebar{display:flex;flex-direction:column;gap:18px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-1)}
.dk-workspace{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-1);font-family:inherit;text-align:left;cursor:pointer}
.dk-workspace:hover{background:var(--surface-3)}
.dk-workspace:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.dk-workspace b{display:block;font-size:.875rem}
.dk-workspace small{display:block;font-size:.75rem;color:var(--text-3)}
.dk-workspace .dk-ico:last-child{margin-left:auto;color:var(--text-3)}
.dk-sidenav h3{margin:0 0 6px;padding:0 10px;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}
.dk-sidenav ul{display:grid;gap:1px;margin:0;padding:0;list-style:none}
.dk-sidelink{position:relative;display:flex;align-items:center;gap:10px;min-height:36px;padding:.4rem 10px;border-radius:var(--radius-sm);color:var(--text-2);font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s}
.dk-sidelink .dk-ico{color:var(--text-3)}
.dk-sidelink:hover{background:var(--surface-3);color:var(--text-1)}
.dk-sidelink[aria-current="page"]{background:var(--accent-soft);color:var(--accent);font-weight:600}
.dk-sidelink[aria-current="page"] .dk-ico{color:var(--accent)}
.dk-sidelink[aria-current="page"]::before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}
.dk-sidelink:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
.dk-count{margin-left:auto;padding:0 .45rem;border-radius:999px;background:var(--surface-3);color:var(--text-2);font-size:.72rem;font-weight:600;line-height:1.5;font-variant-numeric:tabular-nums}
.dk-usage{padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);font-size:.78rem;color:var(--text-2)}
.dk-usage p{display:flex;justify-content:space-between;gap:8px;margin:0 0 8px}
.dk-usage b{color:var(--text-1);font-weight:600;font-variant-numeric:tabular-nums}
.dk-bar{height:6px;border-radius:999px;background:var(--surface-3);overflow:hidden}
.dk-bar>span{display:block;height:100%;border-radius:inherit;background:var(--accent)}
/* Tabs: links with aria-current; the current tab gets a 2px accent underline */
.dk-tabs{display:flex;gap:4px;margin:0;padding:0;border-bottom:1px solid var(--border);list-style:none;overflow-x:auto}
.dk-tab{display:inline-flex;align-items:center;gap:8px;margin-bottom:-1px;padding:.65rem .8rem;border-bottom:2px solid transparent;color:var(--text-2);font-size:.875rem;font-weight:500;text-decoration:none;white-space:nowrap}
.dk-tab:hover{color:var(--text-1);border-bottom-color:var(--edge)}
.dk-tab[aria-current="page"]{border-bottom-color:var(--accent);color:var(--text-1);font-weight:600}
.dk-tab:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;border-radius:6px 6px 0 0}
/* Pill nav */
.dk-pills{display:inline-flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.dk-pill{display:inline-flex;align-items:center;min-height:32px;padding:.3rem .85rem;border:1px solid var(--border);border-radius:999px;color:var(--text-2);font-size:.82rem;font-weight:500;text-decoration:none}
.dk-pill:hover{border-color:var(--edge);color:var(--text-1)}
.dk-pill[aria-current="page"]{border-color:color-mix(in srgb,var(--accent) 60%,transparent);background:var(--accent-soft);color:var(--accent);font-weight:600}
.dk-pill:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
/* Breadcrumb */
.dk-crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;list-style:none;font-size:.85rem}
.dk-crumbs li{display:inline-flex;align-items:center;gap:6px;color:var(--text-2)}
.dk-crumbs li+li::before{content:"/";color:var(--text-3)}
.dk-crumbs a{color:var(--text-2);text-decoration:none;border-radius:4px}
.dk-crumbs a:hover{color:var(--text-1);text-decoration:underline;text-underline-offset:3px}
.dk-crumbs a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.dk-crumbs [aria-current="page"]{color:var(--text-1);font-weight:600;font-family:var(--mono);font-size:.8rem}
@media (prefers-reduced-motion:reduce){.dk-navlink,.dk-sidelink,.dk-cmdk{transition:none}}

Bootstrap 5 code

Requires: Bootstrap 5.3.8 CSS

HTML
<svg width="0" height="0" style="position:absolute" aria-hidden="true" focusable="false">
  <symbol id="dk-i-terminal" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4.5" width="18" height="15" rx="2"/><path d="m7 9.5 3 2.5-3 2.5M12.5 15H17"/></symbol>
  <symbol id="dk-i-search" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="6.5"/><path d="m20 20-4.2-4.2"/></symbol>
  <symbol id="dk-i-bell" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M6 9a6 6 0 1 1 12 0c0 6 2.5 7.5 2.5 7.5h-17S6 15 6 9"/><path d="M10.3 20a2 2 0 0 0 3.4 0"/></symbol>
  <symbol id="dk-i-home" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M4 10.5 12 4l8 6.5V20h-5.5v-6h-5v6H4z"/></symbol>
  <symbol id="dk-i-rocket" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M5 15c-1.5 1.3-2 4-2 4s2.7-.5 4-2M14.5 4.5C17.5 3 21 3 21 3s0 3.5-1.5 6.5L13 16l-5-5z"/><path d="m9.5 12.5-3-1L8.5 9h4M11.5 14.5l1 3 2.5-2V11.5"/></symbol>
  <symbol id="dk-i-layers" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="m12 3.5 8.5 4.5-8.5 4.5L3.5 8z"/><path d="m3.5 12 8.5 4.5 8.5-4.5M3.5 16l8.5 4.5 8.5-4.5"/></symbol>
  <symbol id="dk-i-chart" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M4 20V4M4 20h16"/><path d="m7.5 15 3.5-4 3 2.5 5-6"/></symbol>
  <symbol id="dk-i-db" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><ellipse cx="12" cy="6" rx="7.5" ry="2.75"/><path d="M4.5 6v12c0 1.5 3.4 2.75 7.5 2.75s7.5-1.25 7.5-2.75V6M4.5 12c0 1.5 3.4 2.75 7.5 2.75s7.5-1.25 7.5-2.75"/></symbol>
  <symbol id="dk-i-users" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="9" cy="8.5" r="3.5"/><path d="M3 19.5c.6-3.3 3-5 6-5s5.4 1.7 6 5"/><path d="M15.5 5.2a3.5 3.5 0 0 1 0 6.6M17.5 14.7c1.8.6 3 2.2 3.5 4.8"/></symbol>
  <symbol id="dk-i-settings" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V21a2 2 0 1 1-4 0v-.1a1.7 1.7 0 0 0-1.1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H3a2 2 0 1 1 0-4h.1a1.7 1.7 0 0 0 1.5-1.1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3H9a1.7 1.7 0 0 0 1-1.5V3a2 2 0 1 1 4 0v.1a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8V9a1.7 1.7 0 0 0 1.5 1H21a2 2 0 1 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1z"/></symbol>
  <symbol id="dk-i-key" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="8" cy="15" r="4"/><path d="m11 12 8.5-8.5M16 7l2.5 2.5M14 9l2 2"/></symbol>
  <symbol id="dk-i-chev" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="m6 9 6 6 6-6"/></symbol>
  <symbol id="dk-i-chevr" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="m9 6 6 6-6 6"/></symbol>
  <symbol id="dk-i-globe" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="8.5"/><path d="M3.5 12h17M12 3.5c2.5 2.6 3.6 5.4 3.6 8.5s-1.1 5.9-3.6 8.5c-2.5-2.6-3.6-5.4-3.6-8.5s1.1-5.9 3.6-8.5z"/></symbol>
  <symbol id="dk-i-branch" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="6.5" cy="5.5" r="2"/><circle cx="6.5" cy="18.5" r="2"/><circle cx="17.5" cy="7.5" r="2"/><path d="M6.5 7.5v9M17.5 9.5c0 4-4 5-11 7"/></symbol>
</svg>
<section><span class="lbl">Navbar · current page, command palette trigger, notifications</span><header class="navbar dk-navbar">
<a class="navbar-brand dk-brand" href="#home"><span class="dk-brand__mark" aria-hidden="true"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-terminal"/></svg></span>Northwind</a>
<nav aria-label="Main" class="dk-navlinks"><ul class="navbar-nav"><li class="nav-item"><a class="nav-link active" href="#overview" aria-current="page">Overview</a></li><li class="nav-item"><a class="nav-link" href="#deployments">Deployments</a></li><li class="nav-item"><a class="nav-link" href="#logs">Logs</a></li><li class="nav-item"><a class="nav-link" href="#analytics">Analytics</a></li><li class="nav-item"><a class="nav-link" href="#settings">Settings</a></li></ul></nav>
<div class="dk-navbar__end"><button class="dk-cmdk" type="button" aria-keyshortcuts="Meta+K"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-search"/></svg><span class="dk-cmdk__text">Search or jump to</span><span class="dk-cmdk__keys" aria-hidden="true"><kbd class="dk-kbd">⌘</kbd><kbd class="dk-kbd">K</kbd></span></button><button class="btn btn-dk btn-dk-icon dk-dot" type="button" aria-label="Notifications, 2 unread"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-bell"/></svg></button><button class="dk-avatar" type="button" aria-label="Account menu for Mira Chen">MC</button></div>
</header></section>
<div class="cols"><section><span class="lbl">Sidebar</span><aside class="dk-sidebar">
<button class="dk-workspace" type="button"><span class="dk-avatar" aria-hidden="true">NW</span><span><b>Northwind Labs</b><small>Pro plan · 12 members</small></span><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-chev"/></svg></button>
<nav class="dk-sidenav" aria-label="Project"><h3>Project</h3><ul class="nav nav-pills flex-column">
<li class="nav-item"><a class="nav-link" href="#overview"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-home"/></svg>Overview</a></li>
<li class="nav-item"><a class="nav-link" href="#deployments"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-rocket"/></svg>Deployments<span class="dk-count">3</span></a></li>
<li class="nav-item"><a class="nav-link active" href="#logs" aria-current="page"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-layers"/></svg>Logs</a></li>
<li class="nav-item"><a class="nav-link" href="#analytics"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-chart"/></svg>Analytics</a></li>
<li class="nav-item"><a class="nav-link" href="#storage"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-db"/></svg>Storage</a></li>
</ul></nav>
<nav class="dk-sidenav" aria-label="Team"><h3>Team</h3><ul class="nav nav-pills flex-column">
<li class="nav-item"><a class="nav-link" href="#members"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-users"/></svg>Members<span class="dk-count">12</span></a></li>
<li class="nav-item"><a class="nav-link" href="#access-tokens"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-key"/></svg>Access tokens</a></li>
<li class="nav-item"><a class="nav-link" href="#settings"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-settings"/></svg>Settings</a></li>
</ul></nav>
<div class="dk-usage"><p><span>Build minutes</span><b>3,420 / 6,000</b></p><div class="progress dk-bar" role="progressbar" aria-label="Build minutes used" aria-valuenow="57" aria-valuemin="0" aria-valuemax="100" style="--bs-progress-height:6px;--bs-progress-bg:var(--surface-3);--bs-progress-bar-bg:var(--accent)"><div class="progress-bar" style="width:57%"></div></div></div>
</aside></section><div class="stack">
<section><span class="lbl">Breadcrumb</span><nav class="dk-crumbs" aria-label="Breadcrumb"><ol class="breadcrumb"><li class="breadcrumb-item"><a href="#northwind">Northwind</a></li><li class="breadcrumb-item"><a href="#atlas-api">atlas-api</a></li><li class="breadcrumb-item"><a href="#deployments">Deployments</a></li><li class="breadcrumb-item active" aria-current="page">dpl_7Kq2xT</li></ol></nav></section>
<section><span class="lbl">Tabs · underline marks the current one</span><nav aria-label="Deployment"><ul class="nav nav-underline dk-tabs">
<li class="nav-item"><a class="nav-link" href="#build-output">Build output</a></li>
<li class="nav-item"><a class="nav-link active" href="#runtime-logs" aria-current="page">Runtime logs<span class="dk-count">1.2k</span></a></li>
<li class="nav-item"><a class="nav-link" href="#functions">Functions<span class="dk-count">18</span></a></li>
<li class="nav-item"><a class="nav-link" href="#environment">Environment</a></li>
</ul></nav></section>
<section><span class="lbl">Pill navigation</span><nav aria-label="Filter deployments"><ul class="nav nav-pills dk-pills"><li class="nav-item"><a class="nav-link active" href="#all" aria-current="page">All</a></li><li class="nav-item"><a class="nav-link" href="#production">Production</a></li><li class="nav-item"><a class="nav-link" href="#preview">Preview</a></li><li class="nav-item"><a class="nav-link" href="#failed">Failed</a></li></ul></nav></section>
<section><span class="lbl">Command palette trigger · large</span><button class="dk-cmdk dk-cmdk--lg" type="button" aria-keyshortcuts="Meta+K"><svg class="dk-ico" aria-hidden="true" focusable="false"><use href="#dk-i-search"/></svg><span>Search projects, deployments and docs</span><span class="dk-cmdk__keys" aria-hidden="true"><kbd class="dk-kbd">⌘</kbd><kbd class="dk-kbd">K</kbd></span></button></section>
</div></div>
CSS
/* ── Dark UI kit tokens (uiCookies) — identical in every set ──────────────────────────────
   Dark first. Elevation is a lighter surface, not a shadow: surface-0 is the page, 1 cards and
   panels, 2 controls, menus and dialogs, 3 hover, selected rows and tooltips.
   Every colour is a light-dark() pair, so flipping color-scheme turns the whole kit light:
   data-theme="dark" | "light" | "system" on any wrapper (system follows prefers-color-scheme),
   or a checked .theme-pick radio inside a [data-theme] element (:has()).
   Contrast, dark | light, on the worst surface (surface-3): text-1 12.2 | 15.0, text-2 6.6 | 7.3,
   text-3 4.8 | 5.4, accent 5.4 | 5.1, success 7.7 | 5.0, warning 8.4 | 5.2, danger 6.8 | 5.0;
   edge (control boundaries) 3.3 | 3.1 and focus 7.9 | 5.9 against every surface. */
:root{color-scheme:dark}
[data-theme="dark"]{color-scheme:dark}
[data-theme="light"]{color-scheme:light}
[data-theme="system"]{color-scheme:light dark}
[data-theme]:has(.theme-pick[value="dark"]:checked){color-scheme:dark}
[data-theme]:has(.theme-pick[value="light"]:checked){color-scheme:light}
[data-theme]:has(.theme-pick[value="system"]:checked){color-scheme:light dark}
:root{
  --surface-0:light-dark(#eef1f5,#0b0d12);   /* page */
  --surface-1:light-dark(#ffffff,#151821);   /* cards, panels, navbar, sidebar */
  --surface-2:light-dark(#f6f7f9,#1d212c);   /* controls, menus, dialogs, toasts */
  --surface-3:light-dark(#e6e9ef,#262b38);   /* hover, selected rows, tooltips */
  --text-1:light-dark(#12151c,#eceef3);      /* primary text */
  --text-2:light-dark(#434a5a,#aab1bf);      /* secondary text */
  --text-3:light-dark(#555d6e,#8f96a8);      /* captions, placeholders, axis labels */
  --border:light-dark(#dde1e8,#2a2f3c);      /* decorative 1px dividers and card edges */
  --edge:light-dark(#7c8496,#737b90);        /* control boundaries: fields, boxes, tracks */
  --accent:light-dark(#4452d0,#8b97ff);      /* the one vivid colour: links, selected, primary */
  --accent-soft:light-dark(#e6e8ff,#232a4d); /* selected backgrounds; accent text keeps 5.2 | 5.3 on it */
  --on-accent:light-dark(#ffffff,#0b0d12);   /* text on accent fills, 6.2 | 7.4 */
  --success:light-dark(#11713f,#5fd4a0);     /* desaturated for dark, so they do not vibrate */
  --warning:light-dark(#875500,#f0c060);
  --danger:light-dark(#bb2532,#ff9790);
  --focus:light-dark(#3b48c4,#b5bdff);       /* 2px focus ring */
  --highlight:light-dark(rgb(255 255 255 / 0),rgb(255 255 255 / .045)); /* 1px top light on dark surfaces */
  --shadow-color:light-dark(rgb(16 24 40 / .16),rgb(0 0 0 / .55));     /* overlays only */
  --radius:12px;--radius-sm:8px;
  --mono:ui-monospace,"SF Mono","Cascadia Code",Menlo,Consolas,monospace;
}
/* No light-dark() (Chrome < 123, Safari < 17.5, Firefox < 120): the same values, chosen by attribute */
@supports not (color:light-dark(#fff,#000)){
  :root,[data-theme="dark"]{--surface-0:#0b0d12;--surface-1:#151821;--surface-2:#1d212c;--surface-3:#262b38;--text-1:#eceef3;--text-2:#aab1bf;--text-3:#8f96a8;--border:#2a2f3c;--edge:#737b90;--accent:#8b97ff;--accent-soft:#232a4d;--on-accent:#0b0d12;--success:#5fd4a0;--warning:#f0c060;--danger:#ff9790;--focus:#b5bdff;--highlight:rgb(255 255 255 / .045);--shadow-color:rgb(0 0 0 / .55)}
  [data-theme="light"]{--surface-0:#eef1f5;--surface-1:#ffffff;--surface-2:#f6f7f9;--surface-3:#e6e9ef;--text-1:#12151c;--text-2:#434a5a;--text-3:#555d6e;--border:#dde1e8;--edge:#7c8496;--accent:#4452d0;--accent-soft:#e6e8ff;--on-accent:#ffffff;--success:#11713f;--warning:#875500;--danger:#bb2532;--focus:#3b48c4;--highlight:rgb(255 255 255 / 0);--shadow-color:rgb(16 24 40 / .16)}
  @media (prefers-color-scheme:light){[data-theme="system"]{--surface-0:#eef1f5;--surface-1:#ffffff;--surface-2:#f6f7f9;--surface-3:#e6e9ef;--text-1:#12151c;--text-2:#434a5a;--text-3:#555d6e;--border:#dde1e8;--edge:#7c8496;--accent:#4452d0;--accent-soft:#e6e8ff;--on-accent:#ffffff;--success:#11713f;--warning:#875500;--danger:#bb2532;--focus:#3b48c4;--highlight:rgb(255 255 255 / 0);--shadow-color:rgb(16 24 40 / .16)}}
}
@media (prefers-contrast:more){:root{--border:var(--edge);--text-3:var(--text-2)}}
[data-theme]{background:var(--surface-0);color:var(--text-1)}
/* Bootstrap's own variables mapped onto the kit tokens (identical in every Bootstrap set).
   data-bs-theme="dark" on <html> gives Bootstrap's dark defaults; the tokens then win. */
:root,[data-bs-theme],[data-theme]{
  --bs-body-bg:var(--surface-0);--bs-body-color:var(--text-1);--bs-emphasis-color:var(--text-1);
  --bs-heading-color:var(--text-1);--bs-secondary-color:var(--text-2);--bs-tertiary-color:var(--text-3);
  --bs-secondary-bg:var(--surface-2);--bs-tertiary-bg:var(--surface-3);
  --bs-border-color:var(--border);--bs-border-color-translucent:var(--border);
  --bs-border-radius:var(--radius-sm);--bs-border-radius-lg:var(--radius);--bs-border-radius-sm:6px;
  --bs-link-color:var(--accent);--bs-link-hover-color:var(--accent);
  --bs-focus-ring-color:var(--focus);--bs-code-color:var(--accent);
  --bs-font-monospace:var(--mono);
  --bs-success-text-emphasis:var(--success);--bs-warning-text-emphasis:var(--warning);--bs-danger-text-emphasis:var(--danger)}
/* Bootstrap draws the checkbox tick and select chevron as SVG images, which cannot read CSS
   variables, so each theme gets its own copy */
:root,[data-theme="dark"]{--dk-check-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%230b0d12' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");--dk-select-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23aab1bf' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}
[data-theme="light"]{--dk-check-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");--dk-select-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23434a5a' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}
@media (prefers-color-scheme:light){[data-theme="system"]{--dk-check-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");--dk-select-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23434a5a' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}}
[data-theme]:has(.theme-pick[value="dark"]:checked){--dk-check-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%230b0d12' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");--dk-select-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23aab1bf' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}
[data-theme]:has(.theme-pick[value="light"]:checked){--dk-check-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");--dk-select-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23434a5a' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}
@media (prefers-color-scheme:light){[data-theme]:has(.theme-pick[value="system"]:checked){--dk-check-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");--dk-select-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23434a5a' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}}
@media (prefers-color-scheme:dark){[data-theme]:has(.theme-pick[value="system"]:checked){--dk-check-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%230b0d12' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");--dk-select-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23aab1bf' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}}
a{color:var(--accent)}
a:hover{color:var(--accent)}
/* Components */
.dk-ico{width:18px;height:18px;flex:none}
.dk-kbd{display:inline-grid;place-items:center;min-width:1.45rem;height:1.35rem;padding:0 .35rem;border:1px solid var(--border);border-bottom-width:2px;
  border-radius:5px;background:var(--surface-2);color:var(--text-2);font:500 .72rem/1 var(--mono)}
.dk-link{color:var(--accent);font-weight:600;text-decoration-color:color-mix(in srgb,var(--accent) 45%,transparent);text-underline-offset:3px}
.dk-link:hover{color:var(--accent);text-decoration-color:currentColor}
.dk-link:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:3px;box-shadow:none}
/* .card through --bs-card-* */
.card.dk-card{--bs-card-bg:var(--surface-1);--bs-card-color:var(--text-1);--bs-card-border-color:var(--border);--bs-card-border-radius:var(--radius);
  --bs-card-inner-border-radius:calc(var(--radius) - 1px);--bs-card-spacer-x:20px;--bs-card-spacer-y:20px;--bs-card-cap-bg:transparent;--bs-card-title-color:var(--text-1);
  --bs-card-subtitle-color:var(--text-2);box-shadow:inset 0 1px 0 var(--highlight)}
.dk-card h2,.dk-card h3,.dk-card p{margin:0}
.dk-card .card-title{font-size:1rem;font-weight:650;letter-spacing:-.01em;margin:0}
.dk-card .card-subtitle{margin-top:2px;font-size:.85rem}
/* .btn variants through --bs-btn-* */
.btn-dk{--bs-btn-padding-x:1rem;--bs-btn-padding-y:.5rem;--bs-btn-font-size:.875rem;--bs-btn-font-weight:600;--bs-btn-line-height:1.2;--bs-btn-border-radius:var(--radius-sm);
  --bs-btn-bg:var(--surface-2);--bs-btn-color:var(--text-1);--bs-btn-border-color:var(--border);
  --bs-btn-hover-bg:var(--surface-3);--bs-btn-hover-color:var(--text-1);--bs-btn-hover-border-color:var(--border);
  --bs-btn-active-bg:var(--surface-3);--bs-btn-active-color:var(--text-1);--bs-btn-active-border-color:var(--border);
  --bs-btn-disabled-bg:var(--surface-2);--bs-btn-disabled-color:var(--text-1);--bs-btn-disabled-border-color:var(--border);--bs-btn-disabled-opacity:.5;
  --bs-btn-focus-box-shadow:inset 0 1px 0 var(--highlight);
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:38px;white-space:nowrap;box-shadow:inset 0 1px 0 var(--highlight)}
.btn-dk:focus-visible,.btn-check:focus-visible+.btn-dk{outline:2px solid var(--focus);outline-offset:2px}
.btn-dk-primary{--bs-btn-bg:var(--accent);--bs-btn-color:var(--on-accent);--bs-btn-border-color:var(--accent);
  --bs-btn-hover-bg:color-mix(in srgb,var(--accent) 86%,var(--text-1));--bs-btn-hover-color:var(--on-accent);--bs-btn-hover-border-color:var(--accent);
  --bs-btn-active-bg:color-mix(in srgb,var(--accent) 86%,var(--text-1));--bs-btn-active-color:var(--on-accent);--bs-btn-active-border-color:var(--accent);
  --bs-btn-disabled-bg:var(--accent);--bs-btn-disabled-color:var(--on-accent);--bs-btn-disabled-border-color:var(--accent)}
.btn-dk-ghost{--bs-btn-bg:transparent;--bs-btn-border-color:transparent;--bs-btn-color:var(--text-2);--bs-btn-hover-border-color:transparent;--bs-btn-active-border-color:transparent;box-shadow:none}
.btn-dk-danger{--bs-btn-color:var(--danger);--bs-btn-border-color:color-mix(in srgb,var(--danger) 40%,var(--border));--bs-btn-hover-color:var(--danger);
  --bs-btn-hover-border-color:color-mix(in srgb,var(--danger) 40%,var(--border));--bs-btn-active-color:var(--danger)}
.btn-dk.btn-sm{--bs-btn-padding-x:.75rem;--bs-btn-padding-y:.35rem;--bs-btn-font-size:.8rem;min-height:32px}
.btn-dk.btn-lg{--bs-btn-padding-x:1.35rem;--bs-btn-padding-y:.7rem;--bs-btn-font-size:.95rem;--bs-btn-border-radius:var(--radius-sm);min-height:46px}
.btn-dk-icon{--bs-btn-padding-x:0;--bs-btn-padding-y:0;width:38px}
.btn-dk-icon.btn-sm{width:32px}.btn-dk-icon.btn-lg{width:46px}
.btn-dk.btn-dk-round{--bs-btn-border-radius:999px}
@media (prefers-reduced-motion:reduce){.btn-dk{transition:none}}
/* Navbar */
.dk-navbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;min-height:58px;padding:10px 14px 10px 18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-1);box-shadow:inset 0 1px 0 var(--highlight)}
.dk-brand{display:inline-flex;align-items:center;gap:10px;color:var(--text-1);font-weight:700;letter-spacing:-.01em;text-decoration:none}
.dk-brand__mark{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--accent);color:var(--on-accent)}
.dk-brand:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:6px}
.dk-navlinks{display:flex;gap:2px;margin:0;padding:0;list-style:none;overflow-x:auto}
.dk-navlink{display:inline-flex;align-items:center;min-height:34px;padding:.4rem .75rem;border-radius:var(--radius-sm);color:var(--text-2);font-size:.875rem;font-weight:500;text-decoration:none;white-space:nowrap;transition:background-color .15s,color .15s}
.dk-navlink:hover{background:var(--surface-3);color:var(--text-1)}
.dk-navlink[aria-current="page"]{background:var(--surface-3);color:var(--text-1);font-weight:600}
.dk-navlink:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
.dk-navbar__end{display:flex;align-items:center;gap:8px;margin-left:auto}
.dk-dot{position:relative}
.dk-dot::after{content:"";position:absolute;top:7px;right:8px;width:8px;height:8px;border:2px solid var(--surface-2);border-radius:50%;background:var(--danger)}
.dk-avatar{display:inline-grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:.72rem;font-weight:700}
button.dk-avatar{border:1px solid var(--border);cursor:pointer;font-family:inherit}
button.dk-avatar:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.dk-navbar>nav{min-width:0}
@media (max-width:860px){.dk-navbar>nav{order:3;width:100%}}
/* Command palette trigger: looks like a field, is a button */
.dk-cmdk{display:inline-flex;align-items:center;gap:10px;min-height:36px;padding:.35rem .5rem .35rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);
  background:var(--surface-2);color:var(--text-3);font-family:inherit;font-size:.85rem;text-align:left;cursor:pointer;transition:border-color .15s,color .15s}
.dk-cmdk:hover{border-color:var(--edge);color:var(--text-2)}
.dk-cmdk:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.dk-cmdk__keys{display:inline-flex;gap:3px;margin-left:auto}
.dk-cmdk--lg{width:100%;min-height:48px;padding:.5rem .6rem .5rem 1rem;border-color:var(--edge);font-size:.95rem}
@media (max-width:560px){.dk-navbar .dk-cmdk__text,.dk-navbar .dk-cmdk__keys{display:none}}
/* Sidebar */
.dk-sidebar{display:flex;flex-direction:column;gap:18px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-1)}
.dk-workspace{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-1);font-family:inherit;text-align:left;cursor:pointer}
.dk-workspace:hover{background:var(--surface-3)}
.dk-workspace:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.dk-workspace b{display:block;font-size:.875rem}
.dk-workspace small{display:block;font-size:.75rem;color:var(--text-3)}
.dk-workspace .dk-ico:last-child{margin-left:auto;color:var(--text-3)}
.dk-sidenav h3{margin:0 0 6px;padding:0 10px;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}
.dk-sidenav ul{display:grid;gap:1px;margin:0;padding:0;list-style:none}
.dk-sidelink{position:relative;display:flex;align-items:center;gap:10px;min-height:36px;padding:.4rem 10px;border-radius:var(--radius-sm);color:var(--text-2);font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s}
.dk-sidelink .dk-ico{color:var(--text-3)}
.dk-sidelink:hover{background:var(--surface-3);color:var(--text-1)}
.dk-sidelink[aria-current="page"]{background:var(--accent-soft);color:var(--accent);font-weight:600}
.dk-sidelink[aria-current="page"] .dk-ico{color:var(--accent)}
.dk-sidelink[aria-current="page"]::before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}
.dk-sidelink:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
.dk-count{margin-left:auto;padding:0 .45rem;border-radius:999px;background:var(--surface-3);color:var(--text-2);font-size:.72rem;font-weight:600;line-height:1.5;font-variant-numeric:tabular-nums}
.dk-usage{padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);font-size:.78rem;color:var(--text-2)}
.dk-usage p{display:flex;justify-content:space-between;gap:8px;margin:0 0 8px}
.dk-usage b{color:var(--text-1);font-weight:600;font-variant-numeric:tabular-nums}
.dk-bar{height:6px;border-radius:999px;background:var(--surface-3);overflow:hidden}
.dk-bar>span{display:block;height:100%;border-radius:inherit;background:var(--accent)}
/* Tabs: links with aria-current; the current tab gets a 2px accent underline */
.dk-tabs{display:flex;gap:4px;margin:0;padding:0;border-bottom:1px solid var(--border);list-style:none;overflow-x:auto}
.dk-tab{display:inline-flex;align-items:center;gap:8px;margin-bottom:-1px;padding:.65rem .8rem;border-bottom:2px solid transparent;color:var(--text-2);font-size:.875rem;font-weight:500;text-decoration:none;white-space:nowrap}
.dk-tab:hover{color:var(--text-1);border-bottom-color:var(--edge)}
.dk-tab[aria-current="page"]{border-bottom-color:var(--accent);color:var(--text-1);font-weight:600}
.dk-tab:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;border-radius:6px 6px 0 0}
/* Pill nav */
.dk-pills{display:inline-flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.dk-pill{display:inline-flex;align-items:center;min-height:32px;padding:.3rem .85rem;border:1px solid var(--border);border-radius:999px;color:var(--text-2);font-size:.82rem;font-weight:500;text-decoration:none}
.dk-pill:hover{border-color:var(--edge);color:var(--text-1)}
.dk-pill[aria-current="page"]{border-color:color-mix(in srgb,var(--accent) 60%,transparent);background:var(--accent-soft);color:var(--accent);font-weight:600}
.dk-pill:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
/* Breadcrumb */
.dk-crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;list-style:none;font-size:.85rem}
.dk-crumbs li{display:inline-flex;align-items:center;gap:6px;color:var(--text-2)}
.dk-crumbs li+li::before{content:"/";color:var(--text-3)}
.dk-crumbs a{color:var(--text-2);text-decoration:none;border-radius:4px}
.dk-crumbs a:hover{color:var(--text-1);text-decoration:underline;text-underline-offset:3px}
.dk-crumbs a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.dk-crumbs [aria-current="page"]{color:var(--text-1);font-weight:600;font-family:var(--mono);font-size:.8rem}
@media (prefers-reduced-motion:reduce){.dk-navlink,.dk-sidelink,.dk-cmdk{transition:none}}
/* Bootstrap components recoloured: .navbar-nav, .nav-underline, .nav-pills, .breadcrumb */
.dk-navbar.navbar{--bs-navbar-padding-y:10px;--bs-navbar-nav-link-padding-x:.75rem;--bs-nav-link-padding-y:.4rem;--bs-navbar-color:var(--text-2);--bs-navbar-hover-color:var(--text-1);--bs-navbar-active-color:var(--text-1);justify-content:flex-start}
.dk-navbar .navbar-nav{flex-direction:row;flex-wrap:nowrap;gap:2px;overflow-x:auto}
.dk-navbar .navbar-nav .nav-link{display:inline-flex;align-items:center;min-height:34px;padding:.4rem .75rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;white-space:nowrap}
.dk-navbar .navbar-nav .nav-link:hover{background:var(--surface-3)}
.dk-navbar .navbar-nav .nav-link.active{background:var(--surface-3);font-weight:600}
.dk-navbar .nav-link:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;box-shadow:none}
.dk-navbar .navbar-brand{margin:0;padding:0;font-size:1rem}
.dk-sidenav .nav{--bs-nav-link-padding-x:10px;--bs-nav-link-padding-y:.4rem;--bs-nav-link-color:var(--text-2);--bs-nav-link-hover-color:var(--text-1);--bs-nav-link-font-weight:500;
  --bs-nav-pills-border-radius:var(--radius-sm);--bs-nav-pills-link-active-bg:var(--accent-soft);--bs-nav-pills-link-active-color:var(--accent);gap:1px}
.dk-sidenav .nav-link{position:relative;display:flex;align-items:center;gap:10px;min-height:36px;font-size:.875rem}
.dk-sidenav .nav-link .dk-ico{color:var(--text-3)}
.dk-sidenav .nav-link:hover{background:var(--surface-3)}
.dk-sidenav .nav-link.active{font-weight:600}
.dk-sidenav .nav-link.active .dk-ico{color:var(--accent)}
.dk-sidenav .nav-link.active::before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}
.dk-sidenav .nav-link:focus-visible,.nav-underline .nav-link:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;box-shadow:none}
.nav-underline.dk-tabs{--bs-nav-underline-gap:4px;--bs-nav-underline-border-width:2px;--bs-nav-underline-link-active-color:var(--text-1);--bs-nav-link-color:var(--text-2);--bs-nav-link-hover-color:var(--text-1);
  --bs-nav-link-padding-x:.8rem;--bs-nav-link-padding-y:.65rem;--bs-nav-link-font-weight:500;flex-wrap:nowrap}
.nav-underline.dk-tabs .nav-link{padding:.65rem .8rem;display:inline-flex;align-items:center;gap:8px;margin-bottom:-1px;font-size:.875rem;white-space:nowrap}
.nav-underline.dk-tabs .nav-link:hover{border-bottom-color:var(--edge)}
.nav-underline.dk-tabs .nav-link.active{border-bottom-color:var(--accent);font-weight:600}
.nav-pills.dk-pills{--bs-nav-link-padding-x:.85rem;--bs-nav-link-padding-y:.3rem;--bs-nav-link-color:var(--text-2);--bs-nav-link-hover-color:var(--text-1);--bs-nav-link-font-size:.82rem;--bs-nav-link-font-weight:500;
  --bs-nav-pills-border-radius:999px;--bs-nav-pills-link-active-bg:var(--accent-soft);--bs-nav-pills-link-active-color:var(--accent)}
.nav-pills.dk-pills .nav-link{display:inline-flex;align-items:center;min-height:32px;border:1px solid var(--border)}
.nav-pills.dk-pills .nav-link:hover{border-color:var(--edge)}
.nav-pills.dk-pills .nav-link.active{border-color:color-mix(in srgb,var(--accent) 60%,transparent);font-weight:600}
.nav-pills.dk-pills .nav-link:focus-visible{outline:2px solid var(--focus);outline-offset:2px;box-shadow:none}
.dk-crumbs .breadcrumb{--bs-breadcrumb-margin-bottom:0;--bs-breadcrumb-font-size:.85rem;--bs-breadcrumb-divider-color:var(--text-3);--bs-breadcrumb-item-active-color:var(--text-1);--bs-breadcrumb-item-padding-x:6px;--bs-breadcrumb-divider:"/";align-items:center}

Tailwind 4 code

Requires: Tailwind CSS 4

HTML
<svg width="0" height="0" style="position:absolute" aria-hidden="true" focusable="false">
  <symbol id="dk-i-terminal" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4.5" width="18" height="15" rx="2"/><path d="m7 9.5 3 2.5-3 2.5M12.5 15H17"/></symbol>
  <symbol id="dk-i-search" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="6.5"/><path d="m20 20-4.2-4.2"/></symbol>
  <symbol id="dk-i-bell" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M6 9a6 6 0 1 1 12 0c0 6 2.5 7.5 2.5 7.5h-17S6 15 6 9"/><path d="M10.3 20a2 2 0 0 0 3.4 0"/></symbol>
  <symbol id="dk-i-home" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M4 10.5 12 4l8 6.5V20h-5.5v-6h-5v6H4z"/></symbol>
  <symbol id="dk-i-rocket" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M5 15c-1.5 1.3-2 4-2 4s2.7-.5 4-2M14.5 4.5C17.5 3 21 3 21 3s0 3.5-1.5 6.5L13 16l-5-5z"/><path d="m9.5 12.5-3-1L8.5 9h4M11.5 14.5l1 3 2.5-2V11.5"/></symbol>
  <symbol id="dk-i-layers" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="m12 3.5 8.5 4.5-8.5 4.5L3.5 8z"/><path d="m3.5 12 8.5 4.5 8.5-4.5M3.5 16l8.5 4.5 8.5-4.5"/></symbol>
  <symbol id="dk-i-chart" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M4 20V4M4 20h16"/><path d="m7.5 15 3.5-4 3 2.5 5-6"/></symbol>
  <symbol id="dk-i-db" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><ellipse cx="12" cy="6" rx="7.5" ry="2.75"/><path d="M4.5 6v12c0 1.5 3.4 2.75 7.5 2.75s7.5-1.25 7.5-2.75V6M4.5 12c0 1.5 3.4 2.75 7.5 2.75s7.5-1.25 7.5-2.75"/></symbol>
  <symbol id="dk-i-users" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="9" cy="8.5" r="3.5"/><path d="M3 19.5c.6-3.3 3-5 6-5s5.4 1.7 6 5"/><path d="M15.5 5.2a3.5 3.5 0 0 1 0 6.6M17.5 14.7c1.8.6 3 2.2 3.5 4.8"/></symbol>
  <symbol id="dk-i-settings" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V21a2 2 0 1 1-4 0v-.1a1.7 1.7 0 0 0-1.1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H3a2 2 0 1 1 0-4h.1a1.7 1.7 0 0 0 1.5-1.1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3H9a1.7 1.7 0 0 0 1-1.5V3a2 2 0 1 1 4 0v.1a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8V9a1.7 1.7 0 0 0 1.5 1H21a2 2 0 1 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1z"/></symbol>
  <symbol id="dk-i-key" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="8" cy="15" r="4"/><path d="m11 12 8.5-8.5M16 7l2.5 2.5M14 9l2 2"/></symbol>
  <symbol id="dk-i-chev" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="m6 9 6 6 6-6"/></symbol>
  <symbol id="dk-i-chevr" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="m9 6 6 6-6 6"/></symbol>
  <symbol id="dk-i-globe" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="8.5"/><path d="M3.5 12h17M12 3.5c2.5 2.6 3.6 5.4 3.6 8.5s-1.1 5.9-3.6 8.5c-2.5-2.6-3.6-5.4-3.6-8.5s1.1-5.9 3.6-8.5z"/></symbol>
  <symbol id="dk-i-branch" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><circle cx="6.5" cy="5.5" r="2"/><circle cx="6.5" cy="18.5" r="2"/><circle cx="17.5" cy="7.5" r="2"/><path d="M6.5 7.5v9M17.5 9.5c0 4-4 5-11 7"/></symbol>
</svg>
<section><span class="mb-3.5 block text-[.72rem] font-semibold tracking-[.12em] text-ink-3 uppercase">Navbar · current page, command palette trigger, notifications</span><header class="flex min-h-[58px] flex-wrap items-center gap-x-5 gap-y-3 rounded-ui border border-line bg-surface-1 py-2.5 pr-3.5 pl-[18px] inset-shadow-hl">
<a class="inline-flex items-center gap-2.5 font-bold tracking-[-.01em] text-ink-1 no-underline focus-visible:rounded-md focus-visible:outline-2 focus-visible:outline-offset-3 focus-visible:outline-focus" href="#home"><span class="grid size-[30px] place-items-center rounded-ui-sm bg-accent text-on-accent" aria-hidden="true"><svg class="size-[18px] shrink-0" aria-hidden="true" focusable="false"><use href="#dk-i-terminal"/></svg></span>Northwind</a>
<nav aria-label="Main" class="max-[860px]:order-3 max-[860px]:w-full"><ul class="flex gap-0.5 overflow-x-auto"><li><a class="inline-flex min-h-[34px] items-center rounded-ui-sm px-3 py-[.4rem] text-[.875rem] font-medium whitespace-nowrap text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 aria-[current=page]:bg-surface-3 aria-[current=page]:font-semibold aria-[current=page]:text-ink-1 focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus motion-reduce:transition-none" href="#overview" aria-current="page">Overview</a></li><li><a class="inline-flex min-h-[34px] items-center rounded-ui-sm px-3 py-[.4rem] text-[.875rem] font-medium whitespace-nowrap text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 aria-[current=page]:bg-surface-3 aria-[current=page]:font-semibold aria-[current=page]:text-ink-1 focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus motion-reduce:transition-none" href="#deployments">Deployments</a></li><li><a class="inline-flex min-h-[34px] items-center rounded-ui-sm px-3 py-[.4rem] text-[.875rem] font-medium whitespace-nowrap text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 aria-[current=page]:bg-surface-3 aria-[current=page]:font-semibold aria-[current=page]:text-ink-1 focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus motion-reduce:transition-none" href="#logs">Logs</a></li><li><a class="inline-flex min-h-[34px] items-center rounded-ui-sm px-3 py-[.4rem] text-[.875rem] font-medium whitespace-nowrap text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 aria-[current=page]:bg-surface-3 aria-[current=page]:font-semibold aria-[current=page]:text-ink-1 focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus motion-reduce:transition-none" href="#analytics">Analytics</a></li><li><a class="inline-flex min-h-[34px] items-center rounded-ui-sm px-3 py-[.4rem] text-[.875rem] font-medium whitespace-nowrap text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 aria-[current=page]:bg-surface-3 aria-[current=page]:font-semibold aria-[current=page]:text-ink-1 focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus motion-reduce:transition-none" href="#settings">Settings</a></li></ul></nav>
<div class="ml-auto flex items-center gap-2"><button class="inline-flex cursor-pointer items-center gap-2.5 rounded-ui-sm border border-line bg-surface-2 text-ink-3 transition-colors duration-150 hover:border-edge hover:text-ink-2 motion-reduce:transition-none focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus min-h-9 py-[.35rem] pr-2 pl-3 text-[.85rem]" type="button" aria-keyshortcuts="Meta+K"><svg class="size-[18px] shrink-0" aria-hidden="true" focusable="false"><use href="#dk-i-search"/></svg><span class="max-[560px]:hidden">Search or jump to</span><span class="ml-auto inline-flex gap-[3px] max-[560px]:hidden" aria-hidden="true"><kbd class="inline-grid h-[1.35rem] min-w-[1.45rem] place-items-center rounded-[5px] border border-b-2 border-line bg-surface-2 px-[.35rem] font-mono text-[.72rem] leading-none font-medium text-ink-2">⌘</kbd><kbd class="inline-grid h-[1.35rem] min-w-[1.45rem] place-items-center rounded-[5px] border border-b-2 border-line bg-surface-2 px-[.35rem] font-mono text-[.72rem] leading-none font-medium text-ink-2">K</kbd></span></button><button class="inline-flex cursor-pointer items-center justify-center gap-2 rounded-full border font-semibold leading-[1.2] whitespace-nowrap no-underline transition-colors duration-150 motion-reduce:transition-none disabled:cursor-not-allowed disabled:opacity-50 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus border-line bg-surface-2 text-ink-1 inset-shadow-hl hover:bg-surface-3 size-[38px] p-0 relative after:absolute after:top-[7px] after:right-2 after:size-2 after: after:border-2 after:border-surface-2 after:bg-danger after:content-['']" type="button" aria-label="Notifications, 2 unread"><svg class="size-[18px] shrink-0" aria-hidden="true" focusable="false"><use href="#dk-i-bell"/></svg></button><button class="inline-grid size-8 flex-none place-items-center rounded-full bg-accent-soft text-[.72rem] font-bold text-accent cursor-pointer border border-line focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus" type="button" aria-label="Account menu for Mira Chen">MC</button></div>
</header></section>
<div class="grid items-start gap-7 md:grid-cols-[260px_minmax(0,1fr)]"><section><span class="mb-3.5 block text-[.72rem] font-semibold tracking-[.12em] text-ink-3 uppercase">Sidebar</span><aside class="flex flex-col gap-[18px] rounded-ui border border-line bg-surface-1 p-3">
<button class="flex w-full cursor-pointer items-center gap-2.5 rounded-ui-sm border border-line bg-surface-2 p-2 text-left text-ink-1 hover:bg-surface-3 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus" type="button"><span class="inline-grid size-8 flex-none place-items-center rounded-full bg-accent-soft text-[.72rem] font-bold text-accent" aria-hidden="true">NW</span><span><b class="block text-[.875rem]">Northwind Labs</b><small class="block text-[.75rem] text-ink-3">Pro plan · 12 members</small></span><svg class="size-[18px] shrink-0 ml-auto text-ink-3" aria-hidden="true" focusable="false"><use href="#dk-i-chev"/></svg></button>
<nav aria-label="Project"><h3 class="mb-1.5 px-2.5 text-[.7rem] font-semibold tracking-[.1em] text-ink-3 uppercase">Project</h3><ul class="grid gap-px">
<li><a class="group relative flex min-h-9 items-center gap-2.5 rounded-ui-sm px-2.5 py-[.4rem] text-[.875rem] font-medium text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 motion-reduce:transition-none aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent aria-[current=page]:before:absolute aria-[current=page]:before:inset-y-2 aria-[current=page]:before:-left-3 aria-[current=page]:before:w-[3px] aria-[current=page]:before:rounded-r-[3px] aria-[current=page]:before:bg-accent aria-[current=page]:before:content-[''] focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#overview"><svg class="size-[18px] shrink-0 text-ink-3 group-aria-[current=page]:text-accent" aria-hidden="true" focusable="false"><use href="#dk-i-home"/></svg>Overview</a></li>
<li><a class="group relative flex min-h-9 items-center gap-2.5 rounded-ui-sm px-2.5 py-[.4rem] text-[.875rem] font-medium text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 motion-reduce:transition-none aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent aria-[current=page]:before:absolute aria-[current=page]:before:inset-y-2 aria-[current=page]:before:-left-3 aria-[current=page]:before:w-[3px] aria-[current=page]:before:rounded-r-[3px] aria-[current=page]:before:bg-accent aria-[current=page]:before:content-[''] focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#deployments"><svg class="size-[18px] shrink-0 text-ink-3 group-aria-[current=page]:text-accent" aria-hidden="true" focusable="false"><use href="#dk-i-rocket"/></svg>Deployments<span class="ml-auto rounded-full bg-surface-3 px-[.45rem] text-[.72rem] leading-[1.5] font-semibold text-ink-2 tabular-nums">3</span></a></li>
<li><a class="group relative flex min-h-9 items-center gap-2.5 rounded-ui-sm px-2.5 py-[.4rem] text-[.875rem] font-medium text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 motion-reduce:transition-none aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent aria-[current=page]:before:absolute aria-[current=page]:before:inset-y-2 aria-[current=page]:before:-left-3 aria-[current=page]:before:w-[3px] aria-[current=page]:before:rounded-r-[3px] aria-[current=page]:before:bg-accent aria-[current=page]:before:content-[''] focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#logs" aria-current="page"><svg class="size-[18px] shrink-0 text-ink-3 group-aria-[current=page]:text-accent" aria-hidden="true" focusable="false"><use href="#dk-i-layers"/></svg>Logs</a></li>
<li><a class="group relative flex min-h-9 items-center gap-2.5 rounded-ui-sm px-2.5 py-[.4rem] text-[.875rem] font-medium text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 motion-reduce:transition-none aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent aria-[current=page]:before:absolute aria-[current=page]:before:inset-y-2 aria-[current=page]:before:-left-3 aria-[current=page]:before:w-[3px] aria-[current=page]:before:rounded-r-[3px] aria-[current=page]:before:bg-accent aria-[current=page]:before:content-[''] focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#analytics"><svg class="size-[18px] shrink-0 text-ink-3 group-aria-[current=page]:text-accent" aria-hidden="true" focusable="false"><use href="#dk-i-chart"/></svg>Analytics</a></li>
<li><a class="group relative flex min-h-9 items-center gap-2.5 rounded-ui-sm px-2.5 py-[.4rem] text-[.875rem] font-medium text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 motion-reduce:transition-none aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent aria-[current=page]:before:absolute aria-[current=page]:before:inset-y-2 aria-[current=page]:before:-left-3 aria-[current=page]:before:w-[3px] aria-[current=page]:before:rounded-r-[3px] aria-[current=page]:before:bg-accent aria-[current=page]:before:content-[''] focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#storage"><svg class="size-[18px] shrink-0 text-ink-3 group-aria-[current=page]:text-accent" aria-hidden="true" focusable="false"><use href="#dk-i-db"/></svg>Storage</a></li>
</ul></nav>
<nav aria-label="Team"><h3 class="mb-1.5 px-2.5 text-[.7rem] font-semibold tracking-[.1em] text-ink-3 uppercase">Team</h3><ul class="grid gap-px">
<li><a class="group relative flex min-h-9 items-center gap-2.5 rounded-ui-sm px-2.5 py-[.4rem] text-[.875rem] font-medium text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 motion-reduce:transition-none aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent aria-[current=page]:before:absolute aria-[current=page]:before:inset-y-2 aria-[current=page]:before:-left-3 aria-[current=page]:before:w-[3px] aria-[current=page]:before:rounded-r-[3px] aria-[current=page]:before:bg-accent aria-[current=page]:before:content-[''] focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#members"><svg class="size-[18px] shrink-0 text-ink-3 group-aria-[current=page]:text-accent" aria-hidden="true" focusable="false"><use href="#dk-i-users"/></svg>Members<span class="ml-auto rounded-full bg-surface-3 px-[.45rem] text-[.72rem] leading-[1.5] font-semibold text-ink-2 tabular-nums">12</span></a></li>
<li><a class="group relative flex min-h-9 items-center gap-2.5 rounded-ui-sm px-2.5 py-[.4rem] text-[.875rem] font-medium text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 motion-reduce:transition-none aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent aria-[current=page]:before:absolute aria-[current=page]:before:inset-y-2 aria-[current=page]:before:-left-3 aria-[current=page]:before:w-[3px] aria-[current=page]:before:rounded-r-[3px] aria-[current=page]:before:bg-accent aria-[current=page]:before:content-[''] focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#access-tokens"><svg class="size-[18px] shrink-0 text-ink-3 group-aria-[current=page]:text-accent" aria-hidden="true" focusable="false"><use href="#dk-i-key"/></svg>Access tokens</a></li>
<li><a class="group relative flex min-h-9 items-center gap-2.5 rounded-ui-sm px-2.5 py-[.4rem] text-[.875rem] font-medium text-ink-2 no-underline transition-colors duration-150 hover:bg-surface-3 hover:text-ink-1 motion-reduce:transition-none aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent aria-[current=page]:before:absolute aria-[current=page]:before:inset-y-2 aria-[current=page]:before:-left-3 aria-[current=page]:before:w-[3px] aria-[current=page]:before:rounded-r-[3px] aria-[current=page]:before:bg-accent aria-[current=page]:before:content-[''] focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#settings"><svg class="size-[18px] shrink-0 text-ink-3 group-aria-[current=page]:text-accent" aria-hidden="true" focusable="false"><use href="#dk-i-settings"/></svg>Settings</a></li>
</ul></nav>
<div class="rounded-ui-sm border border-line bg-surface-2 p-3 text-[.78rem] text-ink-2"><p class="mb-2 flex justify-between gap-2"><span>Build minutes</span><b class="font-semibold text-ink-1 tabular-nums">3,420 / 6,000</b></p><div class="h-1.5 overflow-hidden rounded-full bg-surface-3" role="progressbar" aria-label="Build minutes used" aria-valuenow="57" aria-valuemin="0" aria-valuemax="100"><span class="block h-full w-[57%] rounded-full bg-accent"></span></div></div>
</aside></section><div class="flex min-w-0 flex-col gap-8">
<section><span class="mb-3.5 block text-[.72rem] font-semibold tracking-[.12em] text-ink-3 uppercase">Breadcrumb</span><nav aria-label="Breadcrumb"><ol class="flex flex-wrap items-center gap-1.5 text-[.85rem]"><li class="inline-flex items-center gap-1.5 text-ink-2"><a class="rounded text-ink-2 no-underline hover:text-ink-1 hover:underline hover:underline-offset-[3px] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus" href="#northwind">Northwind</a></li><li class="inline-flex items-center gap-1.5 text-ink-2 before:text-ink-3 before:content-['/']"><a class="rounded text-ink-2 no-underline hover:text-ink-1 hover:underline hover:underline-offset-[3px] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus" href="#atlas-api">atlas-api</a></li><li class="inline-flex items-center gap-1.5 text-ink-2 before:text-ink-3 before:content-['/']"><a class="rounded text-ink-2 no-underline hover:text-ink-1 hover:underline hover:underline-offset-[3px] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus" href="#deployments">Deployments</a></li><li class="inline-flex items-center gap-1.5 before:text-ink-3 before:content-['/']"><span class="font-mono text-[.8rem] font-semibold text-ink-1" aria-current="page">dpl_7Kq2xT</span></li></ol></nav></section>
<section><span class="mb-3.5 block text-[.72rem] font-semibold tracking-[.12em] text-ink-3 uppercase">Tabs · underline marks the current one</span><nav aria-label="Deployment"><ul class="flex gap-1 overflow-x-auto border-b border-line">
<li><a class="-mb-px inline-flex items-center gap-2 border-b-2 border-transparent px-3 py-[.65rem] text-[.875rem] font-medium whitespace-nowrap text-ink-2 no-underline hover:border-edge hover:text-ink-1 aria-[current=page]:border-accent aria-[current=page]:font-semibold aria-[current=page]:text-ink-1 focus-visible:rounded-t-md focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#build-output">Build output</a></li>
<li><a class="-mb-px inline-flex items-center gap-2 border-b-2 border-transparent px-3 py-[.65rem] text-[.875rem] font-medium whitespace-nowrap text-ink-2 no-underline hover:border-edge hover:text-ink-1 aria-[current=page]:border-accent aria-[current=page]:font-semibold aria-[current=page]:text-ink-1 focus-visible:rounded-t-md focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#runtime-logs" aria-current="page">Runtime logs<span class="ml-auto rounded-full bg-surface-3 px-[.45rem] text-[.72rem] leading-[1.5] font-semibold text-ink-2 tabular-nums">1.2k</span></a></li>
<li><a class="-mb-px inline-flex items-center gap-2 border-b-2 border-transparent px-3 py-[.65rem] text-[.875rem] font-medium whitespace-nowrap text-ink-2 no-underline hover:border-edge hover:text-ink-1 aria-[current=page]:border-accent aria-[current=page]:font-semibold aria-[current=page]:text-ink-1 focus-visible:rounded-t-md focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#functions">Functions<span class="ml-auto rounded-full bg-surface-3 px-[.45rem] text-[.72rem] leading-[1.5] font-semibold text-ink-2 tabular-nums">18</span></a></li>
<li><a class="-mb-px inline-flex items-center gap-2 border-b-2 border-transparent px-3 py-[.65rem] text-[.875rem] font-medium whitespace-nowrap text-ink-2 no-underline hover:border-edge hover:text-ink-1 aria-[current=page]:border-accent aria-[current=page]:font-semibold aria-[current=page]:text-ink-1 focus-visible:rounded-t-md focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus" href="#environment">Environment</a></li>
</ul></nav></section>
<section><span class="mb-3.5 block text-[.72rem] font-semibold tracking-[.12em] text-ink-3 uppercase">Pill navigation</span><nav aria-label="Filter deployments"><ul class="inline-flex flex-wrap gap-1.5"><li><a class="inline-flex min-h-8 items-center rounded-full border border-line px-[.85rem] py-[.3rem] text-[.82rem] font-medium text-ink-2 no-underline hover:border-edge hover:text-ink-1 aria-[current=page]:border-[color-mix(in_srgb,var(--accent)_60%,transparent)] aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus" href="#all" aria-current="page">All</a></li><li><a class="inline-flex min-h-8 items-center rounded-full border border-line px-[.85rem] py-[.3rem] text-[.82rem] font-medium text-ink-2 no-underline hover:border-edge hover:text-ink-1 aria-[current=page]:border-[color-mix(in_srgb,var(--accent)_60%,transparent)] aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus" href="#production">Production</a></li><li><a class="inline-flex min-h-8 items-center rounded-full border border-line px-[.85rem] py-[.3rem] text-[.82rem] font-medium text-ink-2 no-underline hover:border-edge hover:text-ink-1 aria-[current=page]:border-[color-mix(in_srgb,var(--accent)_60%,transparent)] aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus" href="#preview">Preview</a></li><li><a class="inline-flex min-h-8 items-center rounded-full border border-line px-[.85rem] py-[.3rem] text-[.82rem] font-medium text-ink-2 no-underline hover:border-edge hover:text-ink-1 aria-[current=page]:border-[color-mix(in_srgb,var(--accent)_60%,transparent)] aria-[current=page]:bg-accent-soft aria-[current=page]:font-semibold aria-[current=page]:text-accent focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus" href="#failed">Failed</a></li></ul></nav></section>
<section><span class="mb-3.5 block text-[.72rem] font-semibold tracking-[.12em] text-ink-3 uppercase">Command palette trigger · large</span><button class="inline-flex cursor-pointer items-center gap-2.5 rounded-ui-sm border border-line bg-surface-2 text-ink-3 transition-colors duration-150 hover:border-edge hover:text-ink-2 motion-reduce:transition-none focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus min-h-12 w-full text-left border-edge py-2 pr-2.5 pl-4 text-[.95rem]" type="button" aria-keyshortcuts="Meta+K"><svg class="size-[18px] shrink-0" aria-hidden="true" focusable="false"><use href="#dk-i-search"/></svg><span>Search projects, deployments and docs</span><span class="ml-auto inline-flex gap-[3px]" aria-hidden="true"><kbd class="inline-grid h-[1.35rem] min-w-[1.45rem] place-items-center rounded-[5px] border border-b-2 border-line bg-surface-2 px-[.35rem] font-mono text-[.72rem] leading-none font-medium text-ink-2">⌘</kbd><kbd class="inline-grid h-[1.35rem] min-w-[1.45rem] place-items-center rounded-[5px] border border-b-2 border-line bg-surface-2 px-[.35rem] font-mono text-[.72rem] leading-none font-medium text-ink-2">K</kbd></span></button></section>
</div></div>
CSS
/* ── Dark UI kit tokens (uiCookies) — identical in every set ──────────────────────────────
   Dark first. Elevation is a lighter surface, not a shadow: surface-0 is the page, 1 cards and
   panels, 2 controls, menus and dialogs, 3 hover, selected rows and tooltips.
   Every colour is a light-dark() pair, so flipping color-scheme turns the whole kit light:
   data-theme="dark" | "light" | "system" on any wrapper (system follows prefers-color-scheme),
   or a checked .theme-pick radio inside a [data-theme] element (:has()).
   Contrast, dark | light, on the worst surface (surface-3): text-1 12.2 | 15.0, text-2 6.6 | 7.3,
   text-3 4.8 | 5.4, accent 5.4 | 5.1, success 7.7 | 5.0, warning 8.4 | 5.2, danger 6.8 | 5.0;
   edge (control boundaries) 3.3 | 3.1 and focus 7.9 | 5.9 against every surface. */
:root{color-scheme:dark}
[data-theme="dark"]{color-scheme:dark}
[data-theme="light"]{color-scheme:light}
[data-theme="system"]{color-scheme:light dark}
[data-theme]:has(.theme-pick[value="dark"]:checked){color-scheme:dark}
[data-theme]:has(.theme-pick[value="light"]:checked){color-scheme:light}
[data-theme]:has(.theme-pick[value="system"]:checked){color-scheme:light dark}
:root{
  --surface-0:light-dark(#eef1f5,#0b0d12);   /* page */
  --surface-1:light-dark(#ffffff,#151821);   /* cards, panels, navbar, sidebar */
  --surface-2:light-dark(#f6f7f9,#1d212c);   /* controls, menus, dialogs, toasts */
  --surface-3:light-dark(#e6e9ef,#262b38);   /* hover, selected rows, tooltips */
  --text-1:light-dark(#12151c,#eceef3);      /* primary text */
  --text-2:light-dark(#434a5a,#aab1bf);      /* secondary text */
  --text-3:light-dark(#555d6e,#8f96a8);      /* captions, placeholders, axis labels */
  --border:light-dark(#dde1e8,#2a2f3c);      /* decorative 1px dividers and card edges */
  --edge:light-dark(#7c8496,#737b90);        /* control boundaries: fields, boxes, tracks */
  --accent:light-dark(#4452d0,#8b97ff);      /* the one vivid colour: links, selected, primary */
  --accent-soft:light-dark(#e6e8ff,#232a4d); /* selected backgrounds; accent text keeps 5.2 | 5.3 on it */
  --on-accent:light-dark(#ffffff,#0b0d12);   /* text on accent fills, 6.2 | 7.4 */
  --success:light-dark(#11713f,#5fd4a0);     /* desaturated for dark, so they do not vibrate */
  --warning:light-dark(#875500,#f0c060);
  --danger:light-dark(#bb2532,#ff9790);
  --focus:light-dark(#3b48c4,#b5bdff);       /* 2px focus ring */
  --highlight:light-dark(rgb(255 255 255 / 0),rgb(255 255 255 / .045)); /* 1px top light on dark surfaces */
  --shadow-color:light-dark(rgb(16 24 40 / .16),rgb(0 0 0 / .55));     /* overlays only */
  --radius:12px;--radius-sm:8px;
  --mono:ui-monospace,"SF Mono","Cascadia Code",Menlo,Consolas,monospace;
}
/* No light-dark() (Chrome < 123, Safari < 17.5, Firefox < 120): the same values, chosen by attribute */
@supports not (color:light-dark(#fff,#000)){
  :root,[data-theme="dark"]{--surface-0:#0b0d12;--surface-1:#151821;--surface-2:#1d212c;--surface-3:#262b38;--text-1:#eceef3;--text-2:#aab1bf;--text-3:#8f96a8;--border:#2a2f3c;--edge:#737b90;--accent:#8b97ff;--accent-soft:#232a4d;--on-accent:#0b0d12;--success:#5fd4a0;--warning:#f0c060;--danger:#ff9790;--focus:#b5bdff;--highlight:rgb(255 255 255 / .045);--shadow-color:rgb(0 0 0 / .55)}
  [data-theme="light"]{--surface-0:#eef1f5;--surface-1:#ffffff;--surface-2:#f6f7f9;--surface-3:#e6e9ef;--text-1:#12151c;--text-2:#434a5a;--text-3:#555d6e;--border:#dde1e8;--edge:#7c8496;--accent:#4452d0;--accent-soft:#e6e8ff;--on-accent:#ffffff;--success:#11713f;--warning:#875500;--danger:#bb2532;--focus:#3b48c4;--highlight:rgb(255 255 255 / 0);--shadow-color:rgb(16 24 40 / .16)}
  @media (prefers-color-scheme:light){[data-theme="system"]{--surface-0:#eef1f5;--surface-1:#ffffff;--surface-2:#f6f7f9;--surface-3:#e6e9ef;--text-1:#12151c;--text-2:#434a5a;--text-3:#555d6e;--border:#dde1e8;--edge:#7c8496;--accent:#4452d0;--accent-soft:#e6e8ff;--on-accent:#ffffff;--success:#11713f;--warning:#875500;--danger:#bb2532;--focus:#3b48c4;--highlight:rgb(255 255 255 / 0);--shadow-color:rgb(16 24 40 / .16)}}
}
@media (prefers-contrast:more){:root{--border:var(--edge);--text-3:var(--text-2)}}
[data-theme]{background:var(--surface-0);color:var(--text-1)}
/* The tokens above as Tailwind utilities: bg-surface-0…3, text-ink-1…3, border-line, border-edge,
   bg-accent, bg-accent-soft, text-on-accent, text-success|warning|danger, outline-focus, rounded-ui… */
@theme inline {
  --color-surface-0: var(--surface-0); --color-surface-1: var(--surface-1);
  --color-surface-2: var(--surface-2); --color-surface-3: var(--surface-3);
  --color-ink-1: var(--text-1); --color-ink-2: var(--text-2); --color-ink-3: var(--text-3);
  --color-line: var(--border); --color-edge: var(--edge);
  --color-accent: var(--accent); --color-accent-soft: var(--accent-soft); --color-on-accent: var(--on-accent);
  --color-success: var(--success); --color-warning: var(--warning); --color-danger: var(--danger);
  --color-focus: var(--focus); --color-highlight: var(--highlight);
  --radius-ui: var(--radius); --radius-ui-sm: var(--radius-sm);
  --font-mono: var(--mono);
  --shadow-overlay: 0 18px 48px -12px var(--shadow-color);
  --inset-shadow-hl: inset 0 1px 0 var(--highlight);
}

About this set

Navigation for the uiCookies dark UI kit. The navbar has a brand mark, main links with the current page marked by aria-current and a raised surface, a command palette trigger that looks like a search field and announces its keyboard shortcut, a notifications button with an unread dot and an account button. The sidebar has a workspace switcher, two labelled navigation groups with icons and counts, an accent bar and accent-soft fill on the current item, and a build minutes meter at the bottom. The right column adds a breadcrumb that ends in the current deployment ID, underline tabs with counts, pill navigation for filters and a large command palette trigger. Everything is plain links and buttons, so nothing needs JavaScript; the current item is always marked by more than colour, either a fill, an underline or a bar. On narrow screens the navbar links move to their own scrollable row and the trigger collapses to an icon. The Bootstrap version uses .navbar-nav, .nav-pills, .nav-underline and .breadcrumb recoloured through their CSS variables, and the Tailwind version styles the current item with aria-[current=page] variants.

What’s included

  • Navbar with a command palette trigger and notifications
  • Sidebar with groups, counts, a workspace switcher and a usage meter
  • Underline tabs and pill navigation
  • Breadcrumb ending in the current item
  • Current item marked with aria-current and a non-colour cue

Accessibility

Each navigation region is a nav element with its own aria-label, and the current item carries aria-current="page" with a fill, underline or bar as well as colour. Icon-only buttons have aria-labels, the command trigger has aria-keyshortcuts, every link shows a 2px focus ring, and transitions stop under prefers-reduced-motion.

Customise it

Change --accent and --accent-soft for the current item, --surface-1 for the bars and --surface-3 for hover. In Bootstrap the tokens feed --bs-nav-link-*, --bs-nav-pills-* and --bs-breadcrumb-*; in Tailwind edit the aria-[current=page]: utilities.