@import url("https://fonts.googleapis.com/css2?family=Ubuntu:wght@300;400;500;700;800&display=swap");:root {--primary: #050515;--ink: #212529;--muted: #6f7180;--line: #e6e7ec;--soft: #f6f7f9;--card: #ffffff;--radius-xl: 22px;--shadow-soft: 0 14px 45px rgba(15, 15, 30, .08);--font-display: "Ubuntu", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--bs-body-font-family: "Ubuntu", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;}* {box-sizing: border-box;}body {font-family: var(--font-display);color: var(--ink);background: #fff;letter-spacing: -.01em;}a {color: inherit;text-decoration: none;}button {font-family: var(--font-display);}.btn-outline-light {--bs-btn-color: #FFB514;--bs-btn-border-color: #FFB514;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #FFB514;--bs-btn-hover-border-color: #FFB514;--bs-btn-focus-shadow-rgb: 248, 249, 250;--bs-btn-active-color: #000;--bs-btn-active-bg: #FFB514;--bs-btn-active-border-color: #FFB514;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #FFB514;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #FFB514;--bs-gradient: none;}.btn-light {--bs-btn-color: #000;--bs-btn-bg: #FFB514;--bs-btn-border-color: #FFB514;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #FFB514;--bs-btn-hover-border-color: #FFB514;--bs-btn-focus-shadow-rgb: 211, 212, 213;--bs-btn-active-color: #000;--bs-btn-active-bg: #FFB514;--bs-btn-active-border-color: #FFB514;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #FFB514;--bs-btn-disabled-border-color: #FFB514;}.btn:hover {color: #ffffff;background-color: #050515;border-color: #050515;}.form-select:focus {box-shadow: 0 0 0 .15rem #2196F3;}.convey-header {min-height: 79px;z-index: 1030;}.convey-header .navbar {min-height: 79px;}.convey-menu-btn {width: 61px;min-height: 79px;color: #212529;}.convey-menu-btn:hover,.convey-menu-btn:focus {background: #f6f7f9;}.convey-logo {width: 253px;max-width: min(253px, 52vw);height: auto;color: #000;}.kb-wordmark {font-weight: 800;font-size: 22px;letter-spacing: -.03em;color: #050515;white-space: nowrap;}.kb-wordmark span {font-weight: 500;color: var(--muted);}@media (max-width: 575.98px) {.kb-wordmark { font-size: 19px; }}.app-brand {display: inline-flex;align-items: center;gap: 11px;min-width: 0;}.app-brand-logo {width: 36px;height: 36px;flex: 0 0 auto;border-radius: 11px;border: 1px solid var(--line);background: var(--soft);color: #050515;display: inline-flex;align-items: center;justify-content: center;font-weight: 800;font-size: 16px;overflow: hidden;}.app-brand-logo img {width: 100%;height: 100%;object-fit: contain;}.app-brand-text {display: flex;flex-direction: column;line-height: 1.15;min-width: 0;}.app-brand-name {font-weight: 800;font-size: 19px;letter-spacing: -.03em;color: #050515;white-space: nowrap;}.app-brand-sub {font-size: 11px;font-weight: 600;letter-spacing: .1em;text-transform: uppercase;color: var(--muted);white-space: nowrap;}@media (max-width: 575.98px) {.app-brand-logo { width: 32px; height: 32px; border-radius: 9px; }.app-brand-name { font-size: 17px; }.app-brand-sub { font-size: 10px; }}.kb-no-sidebar .convey-menu-btn,.kb-no-sidebar .convey-offcanvas {display: none !important;}.kb-no-sidebar .convey-logo-wrap {padding-left: 16px;}.convey-search {min-width: 180px;height: 34px;border-radius: 10px;border: 1px solid rgba(0, 0, 0, .10);background: #ececf0;color: #717182;font-size: 14px;font-weight: 500;padding: 0 13px;}.convey-search:hover,.convey-search:focus {background: #fff;border-color: rgba(0, 0, 0, .2);color: #212529;}.convey-support,.convey-support-icon {border: 0;background: #212529;color: #fff;font-family: "Ubuntu", var(--bs-body-font-family, system-ui, sans-serif);font-weight: 700;text-decoration: none;}.convey-support {min-height: 42px;border-radius: 999px;padding: 8px 18px 8px 14px;font-size: 16px;}.convey-support-icon {width: 42px;height: 42px;border-radius: 50%;}.convey-support:hover,.convey-support:focus,.convey-support-icon:hover,.convey-support-icon:focus {background: #33383d;color: #fff;}.convey-user-icon {width: 21px;height: 24px;color: currentColor;flex: 0 0 auto;}.convey-offcanvas {width: min(340px, 88vw) !important;}@media (max-width: 575.98px) {.convey-header,.convey-header .navbar,.convey-menu-btn {min-height: 68px;}.convey-menu-btn {width: 54px;}.convey-logo {max-width: 190px;}}.search-item {min-width: 0;overflow: hidden;}.search-item .flex-grow-1,.search-item .min-w-0 {min-width: 0;max-width: 100%;}.search-item-title,.search-item-sub {white-space: normal;overflow: visible;text-overflow: unset;overflow-wrap: anywhere;word-break: normal;}.search-item-sub {line-height: 1.45;}.min-w-0 { min-width: 0; }.container-docs { max-width: 1216px; margin: 0 auto; padding-left: 32px; padding-right: 32px; }.container-narrow { max-width: 980px; margin: 0 auto; padding-left: 32px; padding-right: 32px; }.navbar-wrap { backdrop-filter: blur(16px); }.logo-mark {width: 31px; height: 31px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center;background: var(--primary); color: #fff; font-weight: 800; font-size: 14px; box-shadow: 0 4px 14px rgba(0,0,0,.16);}.brand-text { font-weight: 700; font-size: 16px; }.brand-text span { color: var(--muted); font-weight: 500; }.navbar .nav-link { color: #5f6070; font-weight: 500; font-size: 15px; border-radius: 10px; padding: .55rem .85rem !important; }.navbar .nav-link:hover { color: #212529; background: #f3f4f7; }.search-trigger { min-width: 205px; height: 38px; background: #f1f2f5; border: 1px solid #dddfe6; border-radius: 11px; color: #626475; align-items: center; gap: 10px; padding: 0 12px; }.search-trigger span { flex: 1; text-align: left; }kbd { background: #fff; color: #777988; border: 1px solid #dadce3; border-radius: 6px; box-shadow: none; padding: 2px 6px; font-size: 11px; }.icon-btn { width: 38px; height: 38px; border-radius: 50%; background: #f2f3f6; border: 1px solid transparent; color: #212529; display: inline-flex; align-items: center; justify-content: center; }.icon-btn:hover, .search-trigger:hover { border-color: #c8cad4; background: #fff; }.hero { border-bottom: 1px solid var(--line); padding: 100px 0 94px; text-align: center; }.hero.compact { padding: 66px 0 62px; }.hero h1 { font-size: clamp(40px, 5vw, 58px); line-height: 1; font-weight: 800; letter-spacing: -.055em; margin-bottom: 17px; }.hero p { color: var(--muted); font-size: 20px; margin-bottom: 34px; }.hero-search { border: 1px solid #dedfe5; background: #fff; border-radius: 18px; height: 64px; box-shadow: 0 10px 28px rgba(0,0,0,.04); max-width: 760px; width: 100%; display: flex; align-items: center; gap: 16px; padding: 0 20px; color: #777887; margin: 0 auto; }.hero-search:hover { border-color: #c7cad4; box-shadow: var(--shadow-soft); }.hero-search span { flex: 1; text-align: left; font-size: 17px; }.pill-cloud { margin-top: 22px; display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }.topic-pill { border: 1px solid #dedfe6; color: #777887; border-radius: 999px; padding: 7px 17px; background: #fff; font-size: 14px; }.section-pad { padding: 74px 0; }.section-title { font-size: 29px; font-weight: 800; letter-spacing: -.035em; margin: 0 0 6px; }.section-subtitle { color: var(--muted); margin: 0 0 26px; }.app-switcher { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 34px; }.app-tab { border: 0; border-radius: 12px; padding: 9px 20px; font-weight: 600; font-size: 15px; color: #777887; background: #eeeef3; transition: .15s ease; }.app-tab:hover { color: #212529; background: #e3e3ea; }.app-tab.active { background: var(--primary); color: #fff; }.app-tab.active:hover { background: var(--primary); color: #fff; }.category-card { height: 100%; min-height: 222px; border: 1px solid var(--line); border-radius: 19px; background: #fff; padding: 25px; text-align: left; display: flex; flex-direction: column; gap: 18px; transition: .2s ease; }.category-card:hover, .article-list-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-soft); border-color: #000; border: solid 1px; }.category-icon { width: 42px; height: 42px; border-radius: 13px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #e9ecef; font-size: 20px;background: #e9ecef }.category-card h3 { font-size: 16px; font-weight: 800; margin-bottom: 10px; }.category-card p { color: var(--muted); line-height: 1.65; margin: 0; }.card-footer-line { border-top: 1px solid var(--line); margin-top: auto; padding-top: 15px; display: flex; justify-content: space-between; color: var(--muted); font-size: 13px; }.tint-violet { color:#8b5cf6; background:#f5f0ff; } .tint-blue { color:#3b82f6; background:#eff6ff; }.tint-emerald { color:#10b981; background:#ecfdf5; } .tint-amber { color:#f59e0b; background:#fffbeb; }.tint-cyan { color:#06b6d4; background:#ecfeff; } .tint-indigo { color:#6366f1; background:#eef2ff; }.tint-rose { color:#f43f5e; background:#fff1f2; } .tint-orange { color:#f97316; background:#fff7ed; }.link-list { list-style: none; padding: 0; margin: 0; }.link-list li { display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 12px; padding: 13px 0; }.link-list .num { color: #c4c5cc; font-size: 13px; font-variant-numeric: tabular-nums; }.link-list a { font-weight: 650; }.link-list .meta { color: var(--muted); font-size: 13px; }.cta-box { border-radius: 21px; background: radial-gradient(circle at top right, rgba(0, 0, 0, 1), transparent 40%), #212529; color: white; padding: clamp(34px, 5vw, 50px); }.cta-box p { color: #bcbdca; font-size: 18px; }.footer { border-top: 1px solid var(--line); padding: 58px 0 30px; color: #656777; }.footer h6 { color: #212529; font-weight: 800; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 20px; }.footer a { display: block; color: #656777; margin-bottom: 13px; }.footer a:hover { color: #212529; }.breadcrumb-row { color: var(--muted); font-size: 16px; }.breadcrumb-row i { font-size: 12px; color: #b7b8c1; margin: 0 9px; }.category-head { padding: 68px 0 42px; border-bottom: 1px solid var(--line); }.category-head-grid { display: flex; gap: 25px; align-items: center; }.category-head h1 { font-size: clamp(34px, 5vw, 47px); font-weight: 850; letter-spacing: -.055em; margin-bottom: 10px; }.category-head p { color: var(--muted); font-size: 20px; margin-bottom: 10px; }.filter-row { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 31px; }.filter-row .btn { border-radius: 12px; border: 0; padding: 9px 16px; color: #777887; background: #eeeef3; }.filter-row .btn.active { background: var(--primary); color: #fff; }.article-list-card { width: 100%; border: 1px solid var(--line); background: #fff; border-radius: 19px; padding: 26px 28px; text-align: left; display: flex; justify-content: space-between; gap: 18px; transition: .2s ease; }.article-list-card h3 { font-size: 18px; font-weight: 800; margin: 0 0 11px; }.article-list-card p { color: var(--muted); font-size: 17px; line-height: 1.55; margin-bottom: 16px; }.article-meta { display: flex; gap: 22px; color: var(--muted); font-size: 14px; flex-wrap: wrap; }.badge-soft { border-radius: 999px; padding: 4px 10px; font-size: 13px; font-weight: 500; border: 1px solid; }.badge-new { color: #212529; background:#C7C9CC; border-color:#C7C9CC; }.badge-updated { color: #3ECB47; background:#E8F9E9; border-color:#3ECB47; }.article-page { background: #fff; }.article-layout { display: grid; grid-template-columns: minmax(0, 1fr) 240px; gap: 70px; }.article-main { max-width: 820px; }.article-header { padding: 56px 0 34px; border-bottom: 1px solid var(--line); }.article-header h1 { font-size: clamp(36px, 6vw, 56px); font-weight: 850; letter-spacing: -.06em; line-height: 1.04; margin: 19px 0 16px; }.article-header .lead { color: var(--muted); font-size: 20px; line-height: 1.55; }.article-body { padding: 35px 0 70px; }.article-body h2 { font-size: 26px; font-weight: 850; letter-spacing: -.035em; margin: 54px 0 18px; scroll-margin-top: 90px; }.article-body h3 { font-size: 20px; font-weight: 800; margin: 34px 0 14px; scroll-margin-top: 90px; }.article-body p, .article-body li { line-height: 1.82; font-size: 16px; }.article-body p { margin-bottom: 21px; }.article-body ul { padding-left: 22px; margin-bottom: 24px; }.code-block { border-radius: 14px; overflow: hidden; border: 1px solid #202130; margin-bottom: 27px; background:#11121d; }.code-head { background:#11121d; border-bottom:1px solid #202130; display:flex; justify-content:space-between; padding:10px 15px; color:#69708f; text-transform:uppercase; letter-spacing:.09em; font: 12px ui-monospace, SFMono-Regular, Menlo, monospace; }.copy-btn { color:#7d86a8; border:0; background:transparent; text-transform:none; letter-spacing:0; }.code-block pre { margin:0; background:#11121d; color:#b7bee2; padding:20px; overflow:auto; font-size:14px; line-height:1.7; }.callout { border-radius: 14px; padding: 16px 18px; display: flex; gap: 13px; margin-bottom: 25px; border:1px solid; }.callout-title { font-size:14px; font-weight:800; margin-bottom:2px; }.callout p { font-size:14px; line-height:1.55; margin:0; }.callout-info { background:#BCDAF5; border-color:#1565C0; color:#1565C0; }.callout-warning { background:#fffbeb; border-color:#fde68a; color:#92400e; }.callout-tip { background:#E8F9E9; border-color:#3ECB47; color:#3ECB47; }.table-docs { border:1px solid var(--line); border-radius:14px; overflow:hidden; margin-bottom:27px; }.table-docs table { margin:0; font-size:14px; }.table-docs th { background:#F2F3F3; font-size:12px; text-transform:uppercase; letter-spacing:.06em; }.toc { position: sticky; top: 87px; padding-top: 56px; }.toc-title { font-size: 12px; text-transform: uppercase; letter-spacing:.12em; color: var(--muted); font-weight:800; margin-bottom:13px; }.toc a { display:block; padding:8px 12px; border-left:2px solid transparent; color:var(--muted); border-radius:0 8px 8px 0; font-size:14px; }.toc a.level-3 { margin-left:15px; }.toc a.active, .toc a:hover { color: var(--primary); border-left-color: var(--primary); background:#f3f4f7; }.feedback-box { background:#F2F3F3; border:1px solid var(--line); border-radius:15px; padding:18px; display:flex; align-items:center; justify-content:space-between; gap:15px; }.related-card { border:1px solid var(--line); border-radius:12px; padding:14px 16px; display:flex; align-items:center; justify-content:space-between; margin-bottom:11px; background-color: #fff; }.reading-progress { position:fixed; top:0; left:0; height:3px; width:0; background:#050515; z-index:3000; transition: width .1s linear; }.search-modal { position:fixed; inset:0; z-index:4000; display:none; align-items:flex-start; justify-content:center; padding:76px 18px 0; }.search-modal.open { display:flex; }.search-backdrop { position:absolute; inset:0; background:rgba(13,13,18,.24); backdrop-filter: blur(2px); }.search-panel { position:relative; width:min(100%, 760px); background:#fff; border:1px solid #dfe0e7; box-shadow:0 24px 70px rgba(0,0,0,.18); border-radius:22px; overflow:hidden; }.search-field-row { height:72px; display:flex; align-items:center; gap:15px; padding:0 20px; border-bottom:1px solid var(--line); }.search-field-row .form-control { border:0; box-shadow:none; font-size:20px; padding:0; }.esc-btn { border:1px solid var(--line); border-radius:10px; color:var(--muted); }.search-results { max-height:430px; overflow:auto; padding:13px 0; }.search-item { width:100%; border:0; background:#fff; display:flex; gap:14px; padding:13px 22px; text-align:left; align-items:flex-start; }.search-item:hover { background:#f5f6f8; }.search-item-title { font-weight:700; }.search-item-sub {color: var(--muted);font-size: 13px;white-space: normal;overflow: visible;text-overflow: unset;overflow-wrap: anywhere;line-height: 1.45;}.search-footer { display:flex; gap:24px; background:#f5f6f8; border-top:1px solid var(--line); padding:12px 20px; color:var(--muted); font-size:13px; }.empty-search { padding:44px 20px; text-align:center; color:var(--muted); }.empty-state {border: 1px dashed #d3d5df;border-radius: 19px;background: #fff;padding: 54px 28px;text-align: center;color: var(--muted);}.empty-state-icon {width: 56px;height: 56px;border-radius: 17px;background: var(--soft);border: 1px solid var(--line);color: var(--muted);display: inline-flex;align-items: center;justify-content: center;font-size: 24px;margin-bottom: 18px;}.empty-state h3 {font-size: 18px;font-weight: 800;letter-spacing: -.02em;color: var(--ink);margin: 0 0 8px;}.empty-state p {margin: 0 auto;max-width: 460px;font-size: 15px;line-height: 1.65;}.empty-state .btn { margin-top: 22px; }@media (max-width: 575.98px) {.empty-state { padding: 40px 20px; }}@media (max-width: 991.98px) {.article-layout { grid-template-columns: 1fr; gap: 0; }.toc { display:none; }.article-main { max-width: none; }.container-docs, .container-narrow { padding-left: 22px; padding-right: 22px; }.hero { padding: 76px 0; }}@media (max-width: 767.98px) {.navbar-collapse { order:4; width:100%; }.hero h1 { font-size: 40px; }.hero p { font-size: 17px; }.hero-search { height:58px; border-radius:16px; }.section-pad { padding: 48px 0; }.category-head-grid { align-items:flex-start; }.category-head p, .article-list-card p { font-size:15px; }.filter-row { align-items:flex-start; flex-direction:column; }.article-list-card { padding:21px; }.footer { padding-top:42px; }.search-footer { display:none; }.search-modal { padding-top:30px; }}html,body {max-width: 100%;}.article-page,.article-layout,.article-main,.article-body {min-width: 0;max-width: 100%;}.article-main,.article-body,.article-body p,.article-body li,.article-body blockquote,.article-body .lead {overflow-wrap: break-word;word-break: normal;}.code-block,.table-docs,.callout,.feedback-box,.related-card {min-width: 0;max-width: 100%;}.code-head {min-width: 0;gap: 12px;}.code-head span,.copy-btn {min-width: 0;}.code-block pre {max-width: 100%;overflow-x: auto;-webkit-overflow-scrolling: touch;}.table-docs {overflow-x: auto;-webkit-overflow-scrolling: touch;}.table-docs table {width: 100%;}.related-card span,.feedback-box strong,.callout > div {min-width: 0;overflow-wrap: anywhere;}.app-logo-img-2 {width: 36px;height: 36px;object-fit: contain;}.app-logo-img-2 {width: 54px;height: 54px;object-fit: contain;}@media (max-width: 575.98px) {.container-docs,.container-narrow {padding-left: 16px;padding-right: 16px;}.article-header h1 {font-size: clamp(32px, 10vw, 40px);letter-spacing: -.045em;}.article-header .lead {font-size: 17px;}.article-meta {gap: 10px 16px;}.code-block pre {padding: 16px;font-size: 12.5px;}.code-head {padding: 9px 12px;}.callout {padding: 14px;}.feedback-box {align-items: flex-start;flex-direction: column;}.related-card {gap: 10px;}.related-card .small {white-space: nowrap;}}