@import"https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700&family=Geist+Mono:wght@400;500;600&family=Instrument+Serif:ital@0;1&display=swap";:root{--color-primary: #0066cc;--color-primary-focus: #0071e3;--color-primary-on-dark: #2997ff;--color-primary-soft: #e6f0fa;--color-primary-soft-2: #d3e3f5;--color-canvas: #ffffff;--color-parchment: #f5f5f7;--color-pearl: #fafafc;--color-tile-1: #272729;--color-tile-2: #2a2a2c;--color-tile-3: #252527;--color-black: #000000;--color-chip: #d2d2d7;--color-ink: #1d1d1f;--color-ink-80: #333333;--color-ink-48: #7a7a7a;--color-table-head: #5e5e64;--color-on-dark: #ffffff;--color-body-muted: #cccccc;--color-hairline: #e0e0e0;--color-divider: #f0f0f0;--color-hairline-soft: rgba(0,0,0,.06);--color-hairline-stronger: rgba(0,0,0,.1);--color-success: #1f8a5b;--color-success-soft: #e6f4ee;--color-warn: #b56500;--color-warn-soft: #fbecd4;--color-danger: #c13030;--color-danger-soft: #fae3e3;--color-violet: #7a5bf0;--color-teal: #0d6e8c;--color-indigo: #5b3df5;--color-olive: #7a5b00;--r-none: 0px;--r-xs: 5px;--r-sm: 8px;--r-md: 11px;--r-lg: 18px;--r-pill: 9999px;--s-xxs: 4px;--s-xs: 8px;--s-sm: 12px;--s-md: 17px;--s-lg: 24px;--s-xl: 32px;--s-2xl: 48px;--s-section: 80px;--font-display: "Geist", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-text: "Geist", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif: "Instrument Serif", "Times New Roman", serif;--font-mono: "Geist Mono", "SF Mono", ui-monospace, Menlo, Consolas, monospace;--shadow-product: rgba(0, 0, 0, .22) 3px 5px 30px 0;--sidebar-w: 248px;--topbar-h: 56px;--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-standard: ease;--dur-fast: .12s;--dur-base: .22s;--dur-slow: .34s;--dur-reveal: .7s}[data-theme=dark]{--color-canvas: #1a1a1c;--color-parchment: #202022;--color-pearl: #232325;--color-ink: #f5f5f7;--color-ink-80: #d8d8db;--color-ink-48: #8e8e92;--color-table-head: #a0a0a6;--color-hairline: #2e2e30;--color-divider: #2a2a2c;--color-hairline-soft: rgba(255,255,255,.08);--color-hairline-stronger: rgba(255,255,255,.14);--color-primary: #2997ff;--color-primary-focus: #4aa9ff;--color-primary-soft: #16344f;--color-primary-soft-2: #1f4775}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--color-canvas);color:var(--color-ink)}html{scrollbar-gutter:stable}body{font-family:var(--font-text);font-size:15px;line-height:1.5;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"ss01","ss03","cv11"}a{color:var(--color-primary);text-decoration:none}button{font:inherit;cursor:pointer}input,textarea,select{font:inherit;color:inherit}.t-hero{font-family:var(--font-display);font-size:56px;font-weight:600;line-height:1.04;letter-spacing:-.035em}.t-display-lg{font-family:var(--font-display);font-size:40px;font-weight:600;line-height:1.06;letter-spacing:-.03em}.t-display-md{font-family:var(--font-display);font-size:30px;font-weight:600;line-height:1.15;letter-spacing:-.025em}.t-lead{font-family:var(--font-display);font-size:24px;font-weight:400;line-height:1.32;letter-spacing:-.015em}.t-lead-airy{font-family:var(--font-display);font-size:22px;font-weight:300;line-height:1.4;letter-spacing:-.005em}.t-tagline{font-family:var(--font-display);font-size:19px;font-weight:600;line-height:1.22;letter-spacing:-.015em}.t-body-strong{font-size:15px;font-weight:600;line-height:1.4;letter-spacing:-.01em}.t-body{font-size:15px;font-weight:400;line-height:1.55;letter-spacing:-.005em}.t-caption{font-size:13px;font-weight:400;line-height:1.45;letter-spacing:-.005em}.t-caption-strong{font-size:13px;font-weight:600;line-height:1.4;letter-spacing:-.005em}.t-fine{font-size:12px;font-weight:400;line-height:1.4;letter-spacing:0}.t-micro{font-size:10.5px;font-weight:600;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-48)}.t-mono{font-family:var(--font-mono);font-size:13px;letter-spacing:-.01em;font-feature-settings:"ss02"}.t-serif{font-family:var(--font-serif);font-weight:400}.muted{color:var(--color-ink-48)}.muted-80{color:var(--color-ink-80)}.on-dark{color:var(--color-on-dark)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 16px;border-radius:var(--r-pill);border:0;cursor:pointer;font-family:var(--font-text);font-size:14px;font-weight:500;letter-spacing:-.005em;transition:transform .12s ease,background-color .12s ease,color .12s ease,border-color .12s ease,box-shadow .12s ease;white-space:nowrap}.btn:active{transform:scale(.96)}.btn:focus-visible{outline:2px solid var(--color-primary-focus);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-on-dark);box-shadow:0 1px #0000000a inset,0 1px 2px #06c3}.btn-primary:hover:not(:disabled){background:var(--color-primary-focus);box-shadow:0 1px #0000000a inset,0 2px 8px #0066cc47}.btn-secondary{background:transparent;color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-primary-soft)}.btn-ghost{background:var(--color-canvas);color:var(--color-ink);box-shadow:inset 0 0 0 1px var(--color-hairline)}.btn-ghost:hover:not(:disabled){background:var(--color-parchment)}.btn-dark{background:var(--color-ink);color:var(--color-on-dark);height:32px;padding:0 14px;font-size:13px;border-radius:var(--r-sm)}.btn-danger{background:var(--color-danger);color:var(--color-on-dark)}.btn-danger:hover:not(:disabled){background:#d63939}.btn-sm{height:30px;padding:0 12px;font-size:13px;gap:6px}.btn-lg{height:42px;padding:0 20px;font-size:15px;font-weight:500}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:8px;background:transparent;color:var(--color-ink-80);border:0;cursor:pointer;transition:background-color .12s ease,color .12s ease,transform .12s ease}.btn-icon:hover{background:var(--color-parchment);color:var(--color-ink)}.btn-icon:active{transform:scale(.94)}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:12px;color:var(--color-ink-80);font-weight:500;letter-spacing:0}.input{height:40px;padding:0 14px;border-radius:var(--r-md);background:var(--color-canvas);border:1px solid var(--color-hairline);color:var(--color-ink);font-size:14px;letter-spacing:-.005em;transition:border-color .12s,box-shadow .12s;width:100%}.input:focus,.input:focus-within{outline:none;border-color:var(--color-primary-focus);box-shadow:0 0 0 3px #0071e31f}.input.input-error{border-color:var(--color-danger);border-width:2px;padding:0 13px}.input.input-error:focus,.input.input-error:focus-within{border-color:var(--color-danger);box-shadow:0 0 0 3px #c130301f}.input::placeholder{color:var(--color-ink-48)}.input-pill{border-radius:var(--r-pill);padding:0 18px}.input-pill.input-error{padding:0 17px}textarea.input{padding:12px 14px;height:auto;min-height:88px;resize:vertical;line-height:1.5}textarea.input.input-error{padding:11px 13px}.card{background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--r-lg);padding:var(--s-lg)}.card-flat{background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--r-lg)}.card-parchment{background:var(--color-parchment);border-radius:var(--r-lg);padding:var(--s-lg)}.card-hover{transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.card-hover:hover{border-color:var(--color-ink-80);transform:translateY(-1px)}.btn-icon-chip{width:44px;height:44px;padding:0;border-radius:50%;background:#d2d2d7a3;color:var(--color-ink);-webkit-backdrop-filter:saturate(180%) blur(10px);backdrop-filter:saturate(180%) blur(10px)}.accent-bar{height:3px;width:24px;border-radius:2px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-on-dark))}.dark-surface{position:relative;overflow:hidden}.dark-surface:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 18% 12%,rgba(41,151,255,.12) 0%,transparent 45%),radial-gradient(circle at 92% 86%,rgba(255,255,255,.04) 0%,transparent 50%)}.placeholder-photo{background-image:repeating-linear-gradient(135deg,#efefef 0 8px,#f7f7f7 8px 16px);color:var(--color-ink-48);font-family:var(--font-mono);font-size:12px;display:flex;align-items:center;justify-content:center;border-radius:var(--r-lg)}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:var(--r-pill);font-size:11.5px;font-weight:500;letter-spacing:-.005em;background:var(--color-parchment);color:var(--color-ink-80)}.pill.dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pill-success{background:var(--color-success-soft);color:var(--color-success)}.pill-warn{background:var(--color-warn-soft);color:var(--color-warn)}.pill-danger{background:var(--color-danger-soft);color:var(--color-danger)}.pill-primary{background:var(--color-primary-soft);color:var(--color-primary)}.pill-dark{background:var(--color-ink);color:var(--color-on-dark)}.hr{height:1px;background:var(--color-hairline);border:0;margin:0}.row{display:flex;align-items:center;gap:var(--s-sm)}.col{display:flex;flex-direction:column}.spacer{flex:1}.grid{display:grid;gap:var(--s-lg)}.brand{display:inline-flex;align-items:center;gap:9px;color:var(--color-ink);text-decoration:none;font-family:var(--font-display);font-size:17px;font-weight:600;letter-spacing:-.02em}.brand .glyph{width:22px;height:22px;position:relative;flex:0 0 22px;border-radius:4px;overflow:hidden}.brand .glyph:before,.brand .glyph:after{content:"";position:absolute;width:14px;height:14px;border-radius:3px}.brand .glyph:before{left:0;top:0;background:var(--color-ink)}.brand .glyph:after{right:0;bottom:0;background:var(--color-primary)}.brand.on-dark{color:var(--color-on-dark)}.brand.on-dark .glyph:before{background:var(--color-on-dark)}.tbl{width:100%;border-collapse:separate;border-spacing:0}.tbl th{text-align:left;font-size:11px;font-weight:700;color:var(--color-table-head);letter-spacing:.05em;text-transform:uppercase;padding:13px var(--s-md);border-bottom:1px solid var(--color-hairline)}.tbl td{padding:var(--s-md);border-bottom:1px solid var(--color-divider);font-size:14px;line-height:1.4;vertical-align:middle}.tbl tr:last-child td{border-bottom:0}.tbl-head-gray thead th{background:var(--color-pearl)}.tbl tr.clickable{cursor:pointer;transition:background-color .12s}.tbl tr.clickable:hover td{background:var(--color-pearl)}.report-tbl th:first-child,.report-tbl td:first-child{padding-left:22px}.report-tbl th:last-child,.report-tbl td:last-child{padding-right:22px}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 8px}.md h1,.md h2,.md h3,.md h4{margin:12px 0 6px;font-weight:700;line-height:1.3}.md h1{font-size:1.3em}.md h2{font-size:1.18em}.md h3{font-size:1.06em}.md ul,.md ol{margin:6px 0 8px;padding-left:20px}.md li{margin:2px 0}.md li>p{margin:0}.md strong{font-weight:700}.md em{font-style:italic}.md a{color:var(--color-primary);text-decoration:underline}.md code{background:var(--color-parchment);padding:1px 5px;border-radius:4px;font-family:var(--font-mono);font-size:.9em}.md pre{background:var(--color-parchment);padding:12px 14px;border-radius:8px;overflow-x:auto;margin:8px 0}.md pre code{background:transparent;padding:0}.md blockquote{margin:8px 0;padding:6px 14px;border-left:3px solid var(--color-primary);background:var(--color-primary-soft);border-radius:0 6px 6px 0}.md table{border-collapse:collapse;width:max-content;max-width:100%;margin:8px 0;font-size:.92em}.md th,.md td{border:1px solid var(--color-hairline);padding:6px 10px;text-align:left;vertical-align:top}.md th{background:var(--color-parchment);font-weight:600;white-space:nowrap}.md hr{border:0;border-top:1px solid var(--color-divider);margin:12px 0}.tabs{display:flex;gap:28px;border-bottom:1px solid var(--color-hairline);overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tabs::-webkit-scrollbar{display:none}.tab{position:relative;display:inline-flex;align-items:center;gap:7px;padding:12px 2px;border:0;background:transparent;font-size:14px;font-weight:500;color:var(--color-ink-48);letter-spacing:-.005em;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;transition:color .15s ease,border-color .15s ease}.tab.active{color:var(--color-ink);border-bottom-color:var(--color-primary)}.tab:hover{color:var(--color-ink-80)}.tab__count{font-size:11px;font-weight:600;line-height:1;padding:3px 7px;border-radius:999px;background:var(--color-parchment);color:var(--color-ink-48);transition:background .15s ease,color .15s ease}.tab.active .tab__count{background:var(--color-primary-soft);color:var(--color-primary)}.code{font-family:var(--font-mono);font-size:13px;line-height:1.6;color:var(--color-ink);background:var(--color-parchment);border:1px solid var(--color-hairline);border-radius:var(--r-md);padding:14px 16px;white-space:pre;overflow-x:auto}.kpi-tile{position:relative;padding:18px 20px 20px;background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;gap:10px}.kpi-tile:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-primary-soft-2),transparent)}.kpi-tile .kpi-num{font-family:var(--font-display);font-size:32px;font-weight:600;letter-spacing:-.03em;line-height:1.05;color:var(--color-ink);font-feature-settings:"ss02","tnum"}.seg{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--color-parchment);border:1px solid var(--color-hairline);border-radius:var(--r-pill)}.seg-btn{border:0;background:transparent;cursor:pointer;font-family:var(--font-text);font-size:13px;font-weight:500;letter-spacing:-.005em;color:var(--color-ink-48);padding:5px 13px;border-radius:var(--r-pill);transition:background-color .14s,color .14s,box-shadow .14s}.seg-btn:hover{color:var(--color-ink)}.seg-btn.active{background:var(--color-canvas);color:var(--color-ink);box-shadow:0 1px 2px #00000014,0 0 0 1px var(--color-hairline)}.report-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid var(--color-hairline);flex-wrap:wrap}.legend-chip{display:inline-flex;align-items:center;gap:7px;cursor:pointer;padding:5px 11px;border-radius:var(--r-pill);border:1px solid var(--color-hairline);background:var(--color-canvas);font-size:12.5px;font-weight:500;color:var(--color-ink-80);transition:background-color .14s,border-color .14s,opacity .14s}.legend-chip.off{opacity:.5}.legend-chip:hover{border-color:var(--color-ink-48)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#82828240;border-radius:10px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#82828280;border:2px solid transparent;background-clip:padding-box}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#82828240;border-radius:10px;border:none}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#82828280;border:none}.focusable:focus-visible{outline:2px solid var(--color-primary-focus);outline-offset:2px}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}.route-fallback{display:grid;place-content:center;justify-items:center;gap:14px;min-height:60vh;text-align:center}.route-fallback--full{min-height:calc(100vh - 56px)}.route-fallback__spinner{width:30px;height:30px;border-radius:50%;border:2.5px solid color-mix(in srgb,var(--color-ink) 12%,transparent);border-top-color:var(--color-primary);animation:spin .7s linear infinite}@keyframes shimmer{0%{background-position:-120% 0}to{background-position:220% 0}}.shimmer{background:linear-gradient(90deg,var(--color-parchment) 0%,var(--color-divider) 50%,var(--color-parchment) 100%);background-size:200% 100%;animation:shimmer 1.6s linear infinite}@keyframes dot{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.typing-dots{display:inline-flex;gap:4px;align-items:center}.typing-dots span{width:6px;height:6px;border-radius:50%;background:currentColor;animation:dot 1.2s infinite ease-in-out}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes pulseRing{0%{box-shadow:0 0 #06c6}to{box-shadow:0 0 0 12px #06c0}}.live-pulse{position:relative}.live-pulse:after{content:"";position:absolute;inset:0;border-radius:inherit;animation:pulseRing 1.6s ease-out infinite}@keyframes app-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes app-fade-in-lg{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes app-fade-in-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes app-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.app-fade-in{animation:app-fade-in var(--dur-base) var(--ease-out) both}.app-fade-in-lg{animation:app-fade-in-lg var(--dur-slow) var(--ease-out) both}.app-fade-in-up{animation:app-fade-in-up var(--dur-base) var(--ease-out) both}.app-scale-in{animation:app-scale-in var(--dur-base) var(--ease-out) both}.app-stagger>*{animation:app-fade-in var(--dur-slow) var(--ease-out) both}.app-stagger>*:nth-child(1){animation-delay:.04s}.app-stagger>*:nth-child(2){animation-delay:.08s}.app-stagger>*:nth-child(3){animation-delay:.12s}.app-stagger>*:nth-child(4){animation-delay:.16s}.app-stagger>*:nth-child(5){animation-delay:.2s}.app-stagger>*:nth-child(6){animation-delay:.24s}.app-stagger>*:nth-child(7){animation-delay:.28s}.app-stagger>*:nth-child(8){animation-delay:.32s}@keyframes app-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes app-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes app-modal-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes app-modal-out{0%{opacity:1;transform:none}to{opacity:0;transform:scale(.96)}}.app-overlay{animation:app-overlay-in var(--dur-base) var(--ease-standard) both}.app-overlay--out{animation:app-overlay-out var(--dur-base) var(--ease-standard) both}.app-modal{animation:app-modal-in var(--dur-base) var(--ease-out) both}.app-modal--out{animation:app-modal-out var(--dur-base) var(--ease-out) both}@keyframes app-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.app-dropdown{animation:app-dropdown-in .15s var(--ease-standard) both}[data-density=compact]{--row-h: 48px;--gutter: 16px}[data-density=airy]{--row-h: 64px;--gutter: 24px}.code .k{color:#6f42c1}.code .s{color:#1f8a5b}.code .c{color:var(--color-ink-48)}.code .n{color:var(--color-primary)}.code .p{color:var(--color-ink-48)}.auth-shell{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.auth-art{background:var(--color-tile-1);color:var(--color-on-dark);padding:48px 56px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-art:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 80% 20%,rgba(41,151,255,.18) 0%,transparent 50%),radial-gradient(circle at 20% 80%,rgba(255,255,255,.05) 0%,transparent 50%);pointer-events:none}.auth-art>*{position:relative;z-index:1}.auth-form{padding:48px 56px;display:flex;flex-direction:column;justify-content:center;max-width:520px;margin:0 auto;width:100%}.auth-feat{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-top:1px solid rgba(255,255,255,.08)}.auth-feat:last-child{border-bottom:1px solid rgba(255,255,255,.08)}.auth-feat-ico{width:36px;height:36px;border-radius:8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;flex:0 0 36px}.auth-pane{display:flex;flex-direction:column;width:100%}.auth-row{display:flex;align-items:center;justify-content:space-between;margin-top:2px}.auth-check{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.auth-check input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--color-primary);cursor:pointer;flex:0 0 16px}.auth-check input[type=checkbox]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.tech-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.tech-card{flex:0 0 180px;display:flex;align-items:center;gap:13px;padding:16px 18px;background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:14px;transition:transform .25s var(--ease-out),border-color .25s var(--ease-out),box-shadow .25s var(--ease-out)}.tech-card:hover{transform:translateY(-3px);border-color:var(--color-primary-soft-2);box-shadow:0 10px 26px #0f172a12}.tech-card__logo{width:30px;height:30px;flex:0 0 30px;object-fit:contain;filter:grayscale(.95);opacity:.62;transition:filter .25s var(--ease-out),opacity .25s var(--ease-out),transform .25s var(--ease-out)}.tech-card:hover .tech-card__logo{filter:grayscale(0);opacity:1;transform:scale(1.08)}.tech-card__name{font-size:14px;font-weight:500;letter-spacing:-.01em;color:var(--color-ink-80)}.tech-card:hover .tech-card__name{color:var(--color-ink)}@keyframes land-dropdown-item-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.land-dropdown-item{opacity:0;animation:land-dropdown-item-in .26s var(--ease-out) both}.land-dropdown-item svg{width:14px;height:14px}.land-reveal{opacity:0;transform:translateY(24px);filter:blur(6px);transition:opacity var(--dur-reveal) var(--ease-out),transform var(--dur-reveal) var(--ease-out),filter var(--dur-reveal) var(--ease-out);will-change:opacity,transform,filter}.land-reveal.is-visible{opacity:1;transform:translateY(0);filter:blur(0)}.land-reveal--scale{transform:scale(.96) translateY(16px)}.land-reveal--scale.is-visible{transform:scale(1) translateY(0)}.land-reveal--left{transform:translate(-32px)}.land-reveal--left.is-visible{transform:translate(0)}.land-reveal--right{transform:translate(32px)}.land-reveal--right.is-visible{transform:translate(0)}.land-reveal--tilt{transform:perspective(1200px) rotateX(12deg) translateY(40px) scale(.97);transform-origin:center bottom}.land-reveal--tilt.is-visible{transform:perspective(1200px) rotateX(0) translateY(0) scale(1)}.tilt-3d{transform:perspective(900px) rotateX(var(--ty, 0deg)) rotateY(var(--tx, 0deg)) translateZ(0);transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out);transform-style:preserve-3d;will-change:transform}.public-footer-link{position:relative;transition:color .18s var(--ease-out),transform .18s var(--ease-out)}.public-footer-link:hover{color:var(--color-primary-on-dark);transform:translate(3px)}.footer-badge{font-size:11px;letter-spacing:.02em;color:#ffffff73;border:1px solid rgba(255,255,255,.12);border-radius:var(--r-pill);padding:3px 11px;transition:color .22s var(--ease-out),border-color .22s var(--ease-out),transform .22s var(--ease-out),background .22s var(--ease-out)}.footer-badge:hover{color:var(--color-primary-on-dark);border-color:#2997ff66;background:#2997ff14;transform:translateY(-2px)}@media(max-width:860px){.public-footer-grid{grid-template-columns:1fr 1fr!important;gap:36px!important}}@media(max-width:520px){.public-footer-grid{grid-template-columns:1fr!important}.public-footer-bottom{flex-direction:column;align-items:flex-start!important}}.faq-item{border:1px solid var(--color-hairline);border-radius:var(--r-lg);background:var(--color-canvas);overflow:hidden;transition:border-color .25s var(--ease-out),box-shadow .25s var(--ease-out),transform .25s var(--ease-out)}.faq-item:hover{border-color:var(--color-hairline-stronger)}.faq-item.is-open{border-color:var(--color-primary-soft-2);box-shadow:0 8px 28px #0066cc12}.faq-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;background:transparent;border:0;cursor:pointer;text-align:left;color:var(--color-ink);font-family:inherit}.faq-trigger:hover{color:var(--color-primary)}.faq-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;color:var(--color-primary);background:var(--color-primary-soft);transition:transform .3s var(--ease-out),background .25s}.faq-item.is-open .faq-icon{transform:rotate(180deg)}.faq-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s var(--ease-out)}.faq-item.is-open .faq-panel{grid-template-rows:1fr}.faq-panel>div{overflow:hidden}.faq-answer{padding:0 24px 22px;color:var(--color-ink-80);line-height:1.65;opacity:0;transform:translateY(-4px);transition:opacity .3s var(--ease-out) .05s,transform .3s var(--ease-out) .05s}.faq-item.is-open .faq-answer{opacity:1;transform:translateY(0)}.nav-thumb{position:absolute;top:50%;height:32px;margin-top:-16px;border-radius:var(--r-pill);background:var(--color-primary-soft);z-index:0;pointer-events:none;transition:transform .4s var(--ease-out),width .4s var(--ease-out),opacity .25s var(--ease-out)}.nav-link{position:relative;z-index:1;padding:7px 13px;border-radius:var(--r-pill);text-decoration:none;font-weight:500;font-size:13.5px;color:var(--color-ink-80);transition:color .25s var(--ease-out);white-space:nowrap}.nav-link.is-active{color:var(--color-primary);font-weight:600}.nav-link:hover{color:var(--color-primary)}.docs-backdrop{position:fixed;inset:0;z-index:25;background:#1414161f;backdrop-filter:saturate(120%) blur(7px);-webkit-backdrop-filter:saturate(120%) blur(7px);pointer-events:none;animation:docs-backdrop-in .28s var(--ease-out) both}@keyframes docs-backdrop-in{0%{opacity:0}to{opacity:1}}.docs-mega{position:absolute;top:calc(100% + 12px);left:50%}.docs-mega:before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}.docs-mega{width:460px;max-width:90vw;padding:10px;background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:16px;box-shadow:0 24px 60px #00000029,0 0 0 1px #00000005;z-index:40;transform:translate(-50%);transform-origin:top center;animation:docs-mega-in .3s var(--ease-out) both}@keyframes docs-mega-in{0%{opacity:0;transform:translate(-50%) translateY(-8px) scale(.97);filter:blur(4px)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1);filter:blur(0)}}.docs-mega-item{display:flex;gap:13px;align-items:flex-start;padding:12px;border-radius:11px;text-decoration:none;color:var(--color-ink);opacity:0;animation:land-dropdown-item-in .32s var(--ease-out) both;transition:background .2s var(--ease-out),transform .2s var(--ease-out)}.docs-mega-item:hover{background:var(--color-primary-soft);transform:translate(3px)}.docs-mega-ico{flex:0 0 38px;width:38px;height:38px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#0066cc14;color:var(--color-primary);transition:transform .25s var(--ease-out)}.docs-mega-item:hover .docs-mega-ico{transform:scale(1.08) rotate(-3deg)}.docs-mega-foot{display:flex;align-items:center;justify-content:space-between;margin-top:6px;padding:11px 12px 7px;border-top:1px solid var(--color-hairline)}.docs-mega-foot a{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:var(--color-primary);font-weight:600;font-size:13px;transition:gap .2s var(--ease-out)}.docs-mega-foot a:hover{gap:10px}.docs-page-fade{animation:docs-page-fade-in .32s var(--ease-out) both}@keyframes docs-page-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cl-row{position:relative}.cl-line{position:absolute;left:7px;top:28px;bottom:8px;width:2px;border-radius:2px;background:linear-gradient(var(--color-primary) 0%,var(--color-hairline-stronger) 30%,var(--color-hairline) 85%,transparent);transform:scaleY(0);transform-origin:top center;transition:transform .7s var(--ease-out) .05s}.cl-row:not(:last-child) .cl-line{bottom:-64px}.cl-row.is-in .cl-line{transform:scaleY(1)}.cl-dot-wrap{position:relative;flex:0 0 16px;padding-top:8px;z-index:1}.cl-dot{width:15px;height:15px;border-radius:50%;background:var(--color-canvas);display:flex;align-items:center;justify-content:center;transform:scale(0);opacity:0;transition:transform .5s cubic-bezier(.34,1.56,.64,1) .18s,opacity .3s var(--ease-out) .18s}.cl-row.is-in .cl-dot{transform:scale(1);opacity:1}.cl-dot:after{content:"";position:absolute;inset:-5px;border-radius:50%;border:1px solid var(--color-primary);opacity:0;transform:scale(.6)}.cl-row.is-in .cl-dot.is-major:after{animation:cl-ping .9s var(--ease-out) .4s}@keyframes cl-ping{0%{opacity:.5;transform:scale(.6)}to{opacity:0;transform:scale(1.5)}}.cl-body{flex:1;min-width:0;opacity:0;transform:translateY(16px);transition:opacity .55s var(--ease-out) .12s,transform .55s var(--ease-out) .12s}.cl-row.is-in .cl-body{opacity:1;transform:translateY(0)}.seg-filter{position:relative;display:inline-flex;gap:4px;padding:4px}.seg-pill{position:relative;z-index:1;padding:6px 16px;border:0;cursor:pointer;background:transparent;border-radius:var(--r-pill);font-size:13px;font-weight:500;letter-spacing:-.1px;color:var(--color-ink-48);transition:color .25s var(--ease-out)}.seg-pill:hover{color:var(--color-ink-80)}.seg-pill.is-active{color:var(--color-ink)}.seg-thumb{position:absolute;top:4px;bottom:4px;z-index:0;background:var(--color-canvas);border-radius:var(--r-pill);box-shadow:0 1px 3px #00000014;transition:transform .38s var(--ease-out),width .38s var(--ease-out)}@keyframes changelog-fade-in{0%{opacity:0;transform:translateY(10px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.changelog-list{animation:changelog-fade-in .4s var(--ease-out) both}.landing-loader{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;background:radial-gradient(120% 90% at 50% 35%,var(--color-canvas) 0%,var(--color-parchment) 70%);opacity:1;visibility:visible;transition:opacity .55s var(--ease-out),visibility .55s var(--ease-out)}.landing-loader.is-done{opacity:0;visibility:hidden;pointer-events:none}.landing-loader__logo{width:60px;height:60px;object-fit:contain;animation:ll-pulse 1.7s ease-in-out infinite}.landing-loader__logo-wrap{position:relative;display:flex;align-items:center;justify-content:center}.landing-loader__logo-wrap:before{content:"";position:absolute;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,rgba(0,102,204,.16) 0%,transparent 68%);animation:ll-glow 1.7s ease-in-out infinite}@keyframes ll-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.09)}}@keyframes ll-glow{0%,to{opacity:.4;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.landing-loader__name{font-family:var(--font-display);font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--color-ink)}.landing-loader__name .t-serif{font-style:italic;font-weight:400}.landing-loader__bar{position:relative;width:168px;height:3px;border-radius:2px;overflow:hidden;background:var(--color-hairline)}.landing-loader__bar:after{content:"";position:absolute;top:0;left:0;height:100%;width:42%;border-radius:2px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent);animation:ll-sweep 1.15s ease-in-out infinite}@keyframes ll-sweep{0%{transform:translate(-130%)}to{transform:translate(320%)}}@media(prefers-reduced-motion:reduce){.landing-loader__logo,.landing-loader__logo-wrap:before,.landing-loader__bar:after{animation:none!important}}.hero-shell{position:relative;background:radial-gradient(120% 80% at 50% -10%,var(--color-canvas) 0%,var(--color-parchment) 60%);padding-bottom:96px}.hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none}.hero-bg__grid{position:absolute;inset:0;background-image:linear-gradient(var(--color-hairline) 1px,transparent 1px),linear-gradient(90deg,var(--color-hairline) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(110% 70% at 50% 0%,#000 0%,transparent 72%);mask-image:radial-gradient(110% 70% at 50% 0%,#000 0%,transparent 72%);opacity:.55}.hero-bg__bloom{position:absolute;inset:0;background:radial-gradient(40% 40% at 18% 12%,rgba(0,102,204,.14) 0%,transparent 70%),radial-gradient(42% 42% at 84% 8%,rgba(91,61,245,.1) 0%,transparent 70%)}.hero-inner{position:relative;z-index:1;max-width:920px;margin:0 auto;padding:84px 28px 0;text-align:center;display:flex;flex-direction:column;align-items:center}.hero-badge{display:inline-flex;align-items:center;gap:8px;text-decoration:none;background:linear-gradient(135deg,#0066cc1a,#5b3df50f);color:var(--color-primary);border:1px solid rgba(0,102,204,.2);border-radius:999px;font-size:12px;font-weight:500;padding:7px 16px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:border-color .2s var(--ease-out),background .2s var(--ease-out),transform .2s var(--ease-out)}.hero-badge:hover{background:linear-gradient(135deg,#0066cc26,#5b3df51a);border-color:#0066cc59;transform:translateY(-1px)}.hero-h1{margin:26px 0 0;font-family:var(--font-display);font-size:clamp(40px,6vw,72px);font-weight:600;letter-spacing:-.04em;line-height:1.02;max-width:16ch}.hero-sub{margin:20px auto 0;max-width:600px;font-size:clamp(16px,2vw,19px);line-height:1.55;color:var(--color-ink-80)}.hero-cta{margin-top:30px;display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.hero-trust{margin-top:26px;display:flex;gap:22px;flex-wrap:wrap;justify-content:center;color:var(--color-ink-48)}.hero-showcase{position:relative;z-index:1;max-width:1060px;margin:60px auto 0;padding:0 28px;perspective:1800px}.hero-showcase__glow{position:absolute;inset:4% 10% -6%;z-index:0;pointer-events:none;background:radial-gradient(50% 60% at 50% 30%,rgba(0,102,204,.22) 0%,transparent 72%);filter:blur(14px)}.hero-tilt{transform:rotateX(var(--hero-tilt, 7deg));transform-origin:center top;transform-style:preserve-3d;transition:transform .2s linear}.hero-frame{position:relative;z-index:1;border-radius:16px;overflow:hidden;background:var(--color-canvas);border:1px solid var(--color-hairline);box-shadow:0 40px 90px #0f172a2e,0 12px 30px #0f172a14,0 0 0 1px #ffffff80 inset;animation:hero-float 8s ease-in-out infinite;will-change:transform}@keyframes hero-float{0%,to{transform:translateY(0) scale(.99)}50%{transform:translateY(-10px) scale(1)}}.hero-showcase__glow{opacity:.85}.hero-frame__bar{position:relative;display:flex;align-items:center;gap:7px;padding:11px 15px;background:var(--color-parchment);border-bottom:1px solid var(--color-hairline)}.hero-frame__bar .hero-dot{width:11px;height:11px;border-radius:50%}.hero-frame__url{position:absolute;left:50%;transform:translate(-50%);font-size:11.5px;color:var(--color-ink-48);background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:999px;padding:3px 16px}.hero-media{position:relative;width:100%;aspect-ratio:16 / 9;background:var(--color-canvas);overflow:hidden}.hero-media>video,.hero-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}@media(max-width:720px){.hero-tilt{transform:none}.hero-frame{animation:none}}@media(prefers-reduced-motion:reduce){.hero-tilt{transform:none!important;transition:none!important}.hero-frame{animation:none!important}}.docs-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:60px;align-items:start}.docs-main{min-width:0;align-self:start}.docs-toc{align-self:stretch}.docs-toc-link{display:block;padding:6px 14px;border-left:2px solid var(--color-hairline);color:var(--color-ink-48);text-decoration:none;font-size:13px;line-height:1.4;transition:color .15s var(--ease-out),border-color .15s var(--ease-out)}.docs-toc-link:hover{color:var(--color-ink)}.docs-toc-link.is-active{color:var(--color-primary);border-left-color:var(--color-primary);font-weight:600}@media(max-width:1040px){.docs-layout{grid-template-columns:1fr;gap:0}.docs-toc{display:none}.docs-main{max-width:880px}}.docs-feature,.docs-endpoint{transition:border-color .18s var(--ease-out),background .18s var(--ease-out)}.docs-feature:hover{border-color:var(--color-primary-soft-2)}.docs-endpoint:hover{background:var(--color-parchment)}@media(max-width:880px){.docs-hero{grid-template-columns:1fr!important}}@media(max-width:600px){.docs-param-row{grid-template-columns:1fr!important;gap:6px!important}}.doc-viz{position:relative;background:#1c1c1e;border-radius:var(--r-lg);padding:22px;color:#fff;overflow:hidden;box-shadow:0 20px 50px #00000038,0 0 0 1px #ffffff0a inset}.doc-viz__accent{position:absolute;inset:0;pointer-events:none}.doc-viz__head{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.doc-viz__foot{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px}.doc-viz__stage{position:relative;z-index:1;perspective:900px}@keyframes viz-float{0%,to{transform:translateY(0) rotateX(0)}50%{transform:translateY(-5px) rotateX(2deg)}}@keyframes viz-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes viz-scan{0%{transform:translateY(-120%);opacity:0}40%{opacity:1}to{transform:translateY(420%);opacity:0}}@keyframes viz-pulse{0%,to{opacity:.35}50%{opacity:1}}.kb-stack{transform-style:preserve-3d;transform:rotateX(52deg) rotate(-32deg);animation:viz-float 6s var(--ease-out) infinite;display:grid;place-items:center;height:150px}.kb-layer{position:absolute;width:132px;height:92px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(135deg,#2997ff38,#2997ff0a);box-shadow:0 8px 18px #0000004d}.kb-node{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--color-primary-on-dark);box-shadow:0 0 10px #2997ffcc;animation:viz-pulse 2.4s ease-in-out infinite}.db-cyl{position:relative;width:116px;height:138px;margin:4px auto 0;animation:viz-bob 5s ease-in-out infinite;filter:drop-shadow(0 12px 18px rgba(0,0,0,.45))}.db-body{position:absolute;inset:16px 0;background:linear-gradient(135deg,#2997ff38,#2997ff0a);border:1px solid rgba(255,255,255,.16);border-top:none;border-radius:0 0 58px 58px/0 0 30px 30px}.db-disc{position:absolute;left:0;right:0;height:32px;border-radius:50%;background:#ffffff0f;border:1px solid rgba(255,255,255,.16)}.db-disc--top{top:0;background:linear-gradient(180deg,var(--color-primary-on-dark),#1366c2);border-color:#78b4ff99;box-shadow:0 0 16px #2997ff73}.db-disc--ring{background:#ffffff0d;border-color:#ffffff1f}.db-scan{position:absolute;left:8px;right:8px;height:20px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(41,151,255,.7),rgba(41,151,255,.15) 60%,transparent 75%);filter:blur(1px);animation:viz-scan 3.2s var(--ease-out) infinite}.viz-chip{font-family:var(--font-mono);font-size:11px;color:#ffffffb3;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:3px 10px}@media(prefers-reduced-motion:reduce){.app-fade-in,.app-fade-in-lg,.app-fade-in-up,.app-scale-in,.app-stagger>*,.app-overlay,.app-modal,.app-dropdown,.land-dropdown-item{animation:none!important;opacity:1!important;transform:none!important}.land-reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}.tilt-3d{transform:none!important}.changelog-list{animation:none!important}.faq-panel,.faq-answer,.faq-icon{transition:none!important}.cl-line,.cl-dot,.cl-body{opacity:1!important;transform:none!important;transition:none!important}.cl-line{transform:scaleY(1)!important}.docs-mega,.docs-mega-item,.docs-backdrop{animation:none!important;opacity:1!important}.docs-mega{transform:translate(-50%)!important}.docs-page-fade{animation:none!important;opacity:1!important;transform:none!important}.nav-thumb{transition:opacity .2s!important}.kb-stack,.db-cyl,.kb-node,.db-scan{animation:none!important}}.term{background:#0d1117;color:#e6edf3;border-radius:12px;overflow:hidden;box-shadow:0 24px 60px #0000002e,0 0 0 1px #ffffff0a inset;font-family:var(--font-mono);font-size:13.5px;line-height:1.7}.term__bar{display:flex;align-items:center;gap:8px;padding:12px 14px;background:linear-gradient(180deg,#1c2128,#161b22);border-bottom:1px solid rgba(255,255,255,.06)}.term__dot{width:12px;height:12px;border-radius:50%;flex:0 0 12px}.term__dot--r{background:#ff5f57;box-shadow:0 0 0 .5px #0000002e}.term__dot--y{background:#febc2e;box-shadow:0 0 0 .5px #0000002e}.term__dot--g{background:#28c840;box-shadow:0 0 0 .5px #0000002e}.term__path{flex:1;text-align:center;color:#8b949e;font-size:12px;letter-spacing:.02em}.term__copy{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;background:#ffffff0a;color:#8b949e;border:1px solid rgba(255,255,255,.06);font-size:11px;font-weight:500;cursor:pointer;font-family:var(--font-text);transition:background-color .15s,color .15s}.term__copy:hover{background:#ffffff17;color:#e6edf3}.term__copy--ok{color:#3fb950}.term__body{padding:18px 20px;overflow-x:auto;white-space:pre}.term__line{display:block;min-height:1.7em}.term__prompt{color:#7ee787;-webkit-user-select:none;user-select:none;margin-right:6px}.term__comment{color:#8b949e;font-style:italic}.term__cmd{color:#79c0ff}.term__flag{color:#ffa657}.term__str{color:#a5d6ff}.term__url{color:#d2a8ff}.dropzone{border:2px dashed var(--color-hairline);border-radius:var(--r-lg);padding:32px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;cursor:pointer;transition:border-color .2s,background .2s}.dropzone:hover,.dropzone.active{border-color:var(--color-primary);background:var(--color-primary-soft)}@media(max-width:900px){.auth-shell{grid-template-columns:1fr}.auth-art{display:none}.auth-form{padding:32px 24px}}@media(max-width:640px){.db-form-grid{grid-template-columns:1fr!important}}.db-md>:first-child{margin-top:0}.db-md>:last-child{margin-bottom:0}.db-md p{margin:0 0 8px}.db-md ul,.db-md ol{margin:6px 0 10px;padding-left:20px}.db-md li{margin:2px 0}.db-md strong{font-weight:600}.db-md code{font-family:var(--font-mono);font-size:.9em;background:#0000000d;padding:1px 5px;border-radius:4px}.db-md table{border-collapse:collapse;width:100%;margin:8px 0;font-size:13px;display:block;overflow-x:auto}.db-md th,.db-md td{border:1px solid var(--color-hairline);padding:6px 10px;text-align:left;white-space:nowrap}.db-md th{background:var(--color-pearl);font-weight:600}.db-md tr:nth-child(2n) td{background:#00000004}
