/* Minimal document defaults. Deliberately small — the system styles
   components, not the page. */
*,*::before,*::after{box-sizing:border-box}
html{color-scheme:light}
html[data-theme="dark"]{color-scheme:dark}
body{margin:0;font:var(--type-body);color:var(--color-text-primary);background:var(--color-background);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-variant-numeric:tabular-nums}
a{color:var(--color-text-link);text-decoration:none}
a:hover{color:var(--color-text-link-hover);text-decoration:underline}
:focus-visible{outline:2px solid var(--state-focus-ring);outline-offset:2px}
::selection{background:var(--nb-cobalt-100);color:var(--nb-cobalt-900)}
[data-theme="dark"] ::selection{background:#2C4479;color:#DAE6FF}
h1,h2,h3,h4,p{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
code,kbd,pre,samp{font:var(--type-mono)}
hr{border:0;border-top:1px solid var(--color-divider);margin:0}

@keyframes nb-spin{to{transform:rotate(360deg)}}
@keyframes nb-fade-in{from{opacity:0}to{opacity:1}}
@keyframes nb-dialog-in{from{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}
@keyframes nb-snackbar-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes nb-indeterminate{0%{transform:translateX(-100%)}100%{transform:translateX(250%)}}
@keyframes nb-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
.nb-topbar-search input::placeholder{color:color-mix(in oklab,var(--product-on-bar) 68%,transparent);opacity:1}
