.nd-shell{--nd-bg:#141413;--nd-bg-elevated:#0a0a0a;--nd-bg-card:#111;--nd-bg-muted:#ffffff0a;--nd-border:#ffffff1a;--nd-border-strong:#ffffff29;--nd-text:#f5f5f7;--nd-muted:#86868b;--nd-link:#2997ff;--nd-sidebar-w:272px;--nd-mobile-bar-h:52px;--nd-radius:4px;--nd-font:var(--font-inter), var(--font-apple), -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;--nd-font-display:var(--font-serif-display), var(--font-apple), Georgia, serif;background:var(--nd-bg);min-height:100vh;color:var(--nd-text);font-family:var(--nd-font);-webkit-font-smoothing:antialiased}.nd-skip{z-index:100;background:var(--nd-text);color:var(--nd-bg);padding:8px 12px;font-size:13px;font-weight:600;position:absolute;top:0;left:-9999px}.nd-skip:focus{top:12px;left:12px}.nd-mobile-bar{z-index:40;height:var(--nd-mobile-bar-h);border-bottom:1px solid var(--nd-border);-webkit-backdrop-filter:saturate(180%)blur(16px);backdrop-filter:saturate(180%)blur(16px);background:#000000d9;justify-content:space-between;align-items:center;padding:0 12px;display:none;position:sticky;top:0}.nd-mobile-bar__btn{border-radius:var(--nd-radius);width:40px;height:40px;color:var(--nd-text);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.nd-mobile-bar__btn:hover{background:var(--nd-bg-muted)}.nd-sidebar{background:var(--nd-bg);border-right:1px solid var(--nd-border)}.nd-sidebar--desktop{width:var(--nd-sidebar-w);z-index:30;position:fixed;top:0;bottom:0;left:0}.nd-sidebar__inner{flex-direction:column;height:100%;display:flex;overflow:hidden}.nd-sidebar__top{border-bottom:1px solid var(--nd-border);flex-shrink:0;padding:16px 14px 12px}.nd-brand{color:var(--nd-text);align-items:center;gap:10px;margin-bottom:14px;text-decoration:none;display:flex}.nd-brand--mobile{margin:0}.nd-brand__logo{object-fit:contain;filter:invert();width:22px;height:22px}.nd-brand__text{letter-spacing:-.01em;font-size:14px;font-weight:600}.nd-brand__muted{color:var(--nd-muted);font-weight:500}.nd-search{border:1px solid var(--nd-border);border-radius:var(--nd-radius);background:var(--nd-bg-muted);height:36px;color:var(--nd-muted);cursor:text;align-items:center;gap:8px;padding:0 10px;display:flex}.nd-search:focus-within{border-color:var(--nd-border-strong);background:#ffffff0f}.nd-search__icon{opacity:.75;flex-shrink:0}.nd-search input{min-width:0;color:var(--nd-text);font:inherit;background:0 0;border:0;outline:none;flex:1;font-size:13px}.nd-search input::placeholder{color:var(--nd-muted)}.nd-search__kbd{border:1px solid var(--nd-border);color:var(--nd-muted);background:#ffffff0a;border-radius:3px;flex-shrink:0;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;line-height:1.2}.nd-nav{scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;flex:1;padding:10px 10px 24px;overflow-y:auto}.nd-nav__group{margin-bottom:4px}.nd-nav__group-btn{border-radius:var(--nd-radius);width:100%;color:var(--nd-text);font:inherit;letter-spacing:-.01em;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:7px 8px;font-size:13px;font-weight:600;display:flex}.nd-nav__group-btn:hover{background:var(--nd-bg-muted)}.nd-nav__chevron{color:var(--nd-muted);flex-shrink:0;transition:transform .15s;transform:rotate(0)}.nd-nav__chevron.is-open{transform:rotate(90deg)}.nd-nav__list{margin:0 0 6px;padding:0 0 0 8px;list-style:none}.nd-nav__link{border-radius:var(--nd-radius);color:var(--nd-muted);padding:6px 10px 6px 18px;font-size:13px;line-height:1.35;text-decoration:none;transition:color .12s,background .12s;display:block}.nd-nav__link:hover{color:var(--nd-text);background:var(--nd-bg-muted)}.nd-nav__link--foot{padding-left:10px;font-size:12px}.nd-sidebar__foot{border-top:1px solid var(--nd-border);flex-shrink:0;padding:12px 14px 16px}.nd-drawer{display:none}.nd-drawer__backdrop{z-index:45;cursor:pointer;background:#0000008c;border:0;position:fixed;inset:0}.nd-sidebar--drawer{width:min(var(--nd-sidebar-w), 88vw);z-index:50;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%)}.nd-drawer.is-open .nd-sidebar--drawer{transform:translate(0)}.nd-main-wrap{margin-left:var(--nd-sidebar-w);min-height:100vh}.nd-main{max-width:820px;margin:0 auto;padding:48px 40px 120px}.nd-breadcrumb{margin-bottom:20px}.nd-breadcrumb ol{color:var(--nd-muted);align-items:center;gap:6px;margin:0;padding:0;font-size:.8125rem;list-style:none;display:flex}.nd-breadcrumb li{align-items:center;gap:6px;display:flex}.nd-breadcrumb li:not(:last-child):after{content:"/";color:var(--nd-border-strong)}.nd-breadcrumb a{color:var(--nd-muted);text-decoration:none}.nd-breadcrumb a:hover,.nd-breadcrumb li[aria-current=page]{color:var(--nd-text)}.nd-article__header{margin-bottom:28px}.nd-h1{font-family:var(--nd-font-display);letter-spacing:-.03em;color:var(--nd-text);margin:0 0 16px;font-size:clamp(2rem,4vw,2.75rem);font-weight:600;line-height:1.15}.nd-lead{max-width:62ch;color:var(--nd-muted);margin:0;font-size:1.0625rem;line-height:1.65}.nd-h2{font-family:var(--nd-font-display);letter-spacing:-.02em;color:var(--nd-text);margin:0 0 4px;font-size:1.375rem;font-weight:600}.nd-h3{letter-spacing:-.015em;color:var(--nd-text);margin:0 0 8px;font-size:1.05rem;font-weight:600}.nd-body{color:var(--nd-muted);margin:0;font-size:.975rem;line-height:1.6}.nd-section{margin-top:48px}.nd-faq{flex-direction:column;gap:8px;margin-top:18px;display:flex}.nd-faq__item{border:1px solid var(--nd-border);border-radius:var(--nd-radius);background:var(--nd-bg-card);scroll-margin-top:28px}.nd-faq__item[open]{border-color:var(--nd-border-strong)}.nd-faq__q{cursor:pointer;letter-spacing:-.01em;color:var(--nd-text);padding:14px 16px;font-size:.95rem;font-weight:600;list-style:none}.nd-faq__q::-webkit-details-marker{display:none}.nd-faq__q:after{content:"+";float:right;color:var(--nd-muted);font-weight:500}.nd-faq__item[open] .nd-faq__q:after{content:"−"}.nd-faq__a{border-top:1px solid var(--nd-border);flex-direction:column;gap:10px;padding:12px 16px 16px;display:flex}.nd-faq__a .nd-body{max-width:68ch;font-size:.9rem}.nd-faq__more{color:var(--nd-link);align-self:flex-start;font-size:13px;font-weight:500;text-decoration:none}.nd-faq__more:hover{text-decoration:underline}.nd-guides{border-top:1px solid var(--nd-border);margin-top:64px;padding-top:40px}.nd-guides__header{margin-bottom:8px}.nd-guide{border-bottom:1px solid var(--nd-border);padding:36px 0 8px;scroll-margin-top:28px}.nd-guide:last-child{border-bottom:0}.nd-guide .nd-h2{margin-bottom:14px}.nd-guide__body{flex-direction:column;gap:14px;display:flex}.nd-guide__body>.nd-body{max-width:68ch}.nd-h3--in-guide{font-family:var(--nd-font);color:var(--nd-text);margin:10px 0 0;font-size:.98rem;font-weight:600}.nd-list{max-width:68ch;color:var(--nd-muted);margin:0;padding:0 0 0 1.2em;font-size:.975rem;line-height:1.6}.nd-list li{margin:0 0 6px;padding-left:4px}.nd-list--ol{list-style:decimal}.nd-list:not(.nd-list--ol){list-style:outside}.nd-callout{border:1px solid var(--nd-border);border-radius:var(--nd-radius);background:var(--nd-bg-muted);border-left-width:3px;max-width:68ch;margin:2px 0;padding:12px 14px}.nd-callout--tip{border-left-color:#34c759}.nd-callout--note{border-left-color:var(--nd-link)}.nd-callout--warn{border-left-color:#ff9f0a}.nd-callout__title{letter-spacing:.02em;text-transform:uppercase;color:var(--nd-text);margin:0 0 4px;font-size:12px;font-weight:600}.nd-callout__text{color:var(--nd-muted);margin:0;font-size:.9rem;line-height:1.55}.nd-code{border:1px solid var(--nd-border);border-radius:var(--nd-radius);color:#e8e8ed;background:#0c0c0e;max-width:100%;margin:0;padding:14px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12.5px;line-height:1.55;overflow-x:auto}.nd-code code{font:inherit;white-space:pre}.nd-kbd{border:1px solid var(--nd-border);color:var(--nd-text);white-space:nowrap;background:#ffffff0f;border-radius:4px;padding:2px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;display:inline-block}.nd-kbd-table-wrap{border:1px solid var(--nd-border);border-radius:var(--nd-radius);background:var(--nd-bg-card);overflow-x:auto}.nd-table--kbd{margin:0}.nd-table--kbd th,.nd-table--kbd td{white-space:normal}.nd-hero{margin:8px 0 0}.nd-hero__frame{border:1px solid var(--nd-border);background:#0c0c0e;border-radius:8px;overflow:hidden;box-shadow:0 24px 64px #00000073}.nd-hero__chrome{border-bottom:1px solid var(--nd-border);background:#141416;align-items:center;gap:6px;height:36px;padding:0 12px;display:flex}.nd-hero__dot{background:#3a3a3c;border-radius:50%;width:8px;height:8px}.nd-hero__dot:first-child{background:#ff5f57}.nd-hero__dot:nth-child(2){background:#febc2e}.nd-hero__dot:nth-child(3){background:#28c840}.nd-hero__title{color:var(--nd-muted);margin-left:8px;font-size:12px}.nd-hero__body{grid-template-columns:180px 1fr;min-height:280px;display:grid}.nd-hero__side{border-right:1px solid var(--nd-border);background:#121214;padding:14px 12px;font-size:12px}.nd-hero__side-label{color:var(--nd-muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px;font-size:10px;font-weight:600}.nd-hero__side ul{margin:0;padding:0;list-style:none}.nd-hero__side li{color:#a1a1a6;border-radius:4px;margin-bottom:2px;padding:7px 8px;line-height:1.3}.nd-hero__side li.is-active{color:var(--nd-text);background:#2997ff1f}.nd-hero__editor{background:#0a0a0c;flex-direction:column;min-width:0;display:flex}.nd-hero__editor-bar{border-bottom:1px solid var(--nd-border);color:#a1a1a6;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:12px;display:flex}.nd-hero__pill{color:var(--nd-link);white-space:nowrap;border:1px solid #2997ff59;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:500}.nd-hero__prose{color:#d2d2d7;padding:16px 18px 22px;font-size:13px;line-height:1.55}.nd-hero__prose p{margin:0 0 8px}.nd-hero__h{color:var(--nd-text);font-weight:600;margin-top:12px!important}.nd-hero__muted{font-size:12px;color:var(--nd-muted)!important}.nd-hero__caption{color:var(--nd-muted);margin:10px 0 0;font-size:13px}.nd-card-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px;display:grid}.nd-card{border:1px solid var(--nd-border);border-radius:var(--nd-radius);background:var(--nd-bg-card);color:inherit;outline:none;text-decoration:none;transition:border-color .15s,box-shadow .15s,background .15s;display:block;overflow:hidden}.nd-card:hover{border-color:#2997ff73;box-shadow:0 0 0 1px #2997ff1f}.nd-card:focus-visible{box-shadow:0 0 0 2px var(--nd-text)}.nd-card__head{border-bottom:1px solid var(--nd-border);background:var(--nd-bg-muted);align-items:center;gap:10px;padding:12px 14px;display:flex}.nd-card__icon{color:var(--nd-muted);flex-shrink:0}.nd-card__title{letter-spacing:-.01em;color:var(--nd-text);margin:0;font-size:13px;font-weight:600}.nd-card__body{padding:12px 14px 14px}.nd-card__desc{color:var(--nd-muted);margin:0;font-size:14px;line-height:1.55}.nd-table-lead{color:var(--nd-muted);margin:8px 0 0;font-size:.95rem;line-height:1.55}.nd-table-wrap{border:1px solid var(--nd-border);border-radius:var(--nd-radius);background:var(--nd-bg-card);margin-top:16px;overflow-x:auto}.nd-table{border-collapse:collapse;width:100%;font-size:13px}.nd-table th,.nd-table td{border-bottom:1px solid var(--nd-border);text-align:left;white-space:nowrap;padding:11px 14px}.nd-table th{background:var(--nd-bg-muted);color:var(--nd-muted);letter-spacing:.02em;font-size:12px;font-weight:600}.nd-table tr:last-child td{border-bottom:0}.nd-table td{color:#d2d2d7}.nd-table__name{color:var(--nd-link);font-weight:500;text-decoration:none}.nd-table__name:hover{text-decoration:underline}.nd-table__cap{color:var(--nd-muted)}@media (max-width:1024px){.nd-card-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:860px){.nd-sidebar--desktop{display:none}.nd-mobile-bar{display:flex}.nd-drawer{pointer-events:none;display:block}.nd-drawer.is-open{pointer-events:auto}.nd-drawer:not(.is-open) .nd-drawer__backdrop,.nd-drawer:not(.is-open) .nd-sidebar--drawer{visibility:hidden}.nd-main-wrap{margin-left:0}.nd-main{padding:28px 20px 96px}.nd-hero__body{grid-template-columns:1fr}.nd-hero__side{display:none}.nd-card-grid{grid-template-columns:1fr}}
