:root{--white: #FFFFFF;--paper: #EDEDF3;--black: #040403;--ink: #111111;--ink-2: #4A4A53;--ink-3: #9A9AA3;--line: #E6E6EE;--field-line: #C9C9D3;--line-dark: #26262A;--green: #2E933C;--red: #C42B1C;--amber: #A15C00;--cm-high: #B86A00;--cm-crit: #C42B1C;--sans: "Inter",system-ui,sans-serif;--mono: "Google Sans Code",ui-monospace,monospace;--rail: 24px;--rail-r: 32px;--step: 120px;}*{box-sizing: border-box;}body{margin: 0;background: var(--white);color: var(--ink);font-family: var(--sans);font-size: 17px;line-height: 1.55;-webkit-font-smoothing: antialiased;}a{color: inherit;}svg.i{width: 20px;height: 20px;fill: none;stroke: currentColor;stroke-width: 2;stroke-linecap: round;stroke-linejoin: round;flex: none;}.wrap{max-width: 1160px;margin: 0 auto;padding: 0 24px;}.sr-only{position: absolute;width: 1px;height: 1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;}.btn{display: inline-flex;align-items: center;justify-content: center;gap: 8px;font: inherit;font-weight: 600;font-size: 16px;border-radius: 10px;padding: 12px 22px;text-decoration: none;cursor: pointer;border: 1px solid transparent;}.btn-white{background: var(--white);color: var(--black);}.btn-outline-dark{border-color: #3A3A40;color: var(--white);background: none;}.btn-black{background: var(--black);color: var(--white);}.btn-line{border-color: var(--ink);color: var(--ink);background: none;}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline: 2px solid var(--green);outline-offset: 3px;}.top{position: relative;overflow: hidden;background: var(--black);color: var(--white);}.top > .wrap{position: relative;z-index: 1;}.bg-scan{position: absolute;z-index: 0;top: 0;bottom: 0;left: 50%;transform: translateX(-50%);width: var(--fw,100%);display: grid;grid-template-columns: repeat(var(--cols,20),56px);grid-auto-rows: 56px;gap: 8px;padding: 8px 0 0;pointer-events: none;}.bg-scan i{border-radius: 14px;background: #0B0B0D;}.bg-scan i.alert{background: #4A1610;}.closing .bg-scan i.alert{background: #3E130D;}.bg-scan .wave{position: absolute;inset: 0;overflow: hidden;pointer-events: none;-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64'%3E%3Crect width='56' height='56' rx='14'/%3E%3C/svg%3E");mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64'%3E%3Crect width='56' height='56' rx='14'/%3E%3C/svg%3E");-webkit-mask-size: 64px 64px;mask-size: 64px 64px;-webkit-mask-position: 0 8px;mask-position: 0 8px;}.bg-scan .wave span{position: absolute;left: -100%;top: -100%;width: 300%;height: 300%;background: linear-gradient(135deg,transparent 47%,rgba(255,255,255,0.075) 50%,transparent 53%);will-change: transform;}@media (prefers-reduced-motion: no-preference){.bg-scan .wave span{animation: wave 7s linear infinite;}@keyframes wave{from{transform: translate(-30%,-30%);}to{transform: translate(30%,30%);}}.bg-scan i.alert{animation: scanAlert 7s linear infinite;animation-delay: var(--d);}@keyframes scanAlert{0%,100%{background: #2A0E0A;}6%{background: #6A1D14;}24%,80%{background: #4A1610;}}}.site-nav{position: sticky;top: 0;z-index: 60;height: 104px;margin-bottom: -104px;pointer-events: none;background: linear-gradient(to bottom,rgba(4,4,3,0.96) 0,rgba(4,4,3,0.82) 48px,rgba(4,4,3,0) 100%);}.nav-bar{display: flex;align-items: center;gap: 32px;height: 72px;pointer-events: auto;color: var(--white);font-size: 15px;border-bottom: 1px solid transparent;padding-left: max(32px,env(safe-area-inset-left,0px));padding-right: max(32px,env(safe-area-inset-right,0px));}.nav-bar a{text-decoration: none;}.nav-logo{display: inline-flex;align-items: center;gap: 9px;font-weight: 700;font-size: 22px;letter-spacing: -0.03em;color: var(--white);}.logo-mark{flex: none;display: block;}.logo-mark .g{fill: #8B9199;}.logo-mark .r{fill: var(--red);}.site-nav.light .logo-mark .g{fill: #3B4048;}.nav-links{display: flex;gap: 28px;}.nav-links a,.nav-sheet-langs a{color: #B9B9C2;}.nav-links a:hover,.nav-links a[aria-current="page"]{color: var(--white);}.nav-right{margin-left: auto;display: flex;align-items: center;gap: 20px;}.nav-login{color: var(--white);font-weight: 500;}.nav-login:hover{color: #B9B9C2;}.nav-cta{color: var(--black);background: var(--white);font-weight: 600;border-radius: 10px;padding: 9px 16px;white-space: nowrap;}.site-nav summary{list-style: none;cursor: pointer;}.site-nav summary::-webkit-details-marker{display: none;}.nav-lang{position: relative;}.nav-lang summary{display: inline-flex;align-items: center;gap: 4px;font-family: var(--mono);font-size: 13px;letter-spacing: 0.04em;color: #8D8D96;padding: 6px 2px;}.nav-lang summary:hover,.nav-lang[open] summary{color: var(--white);}.nav-lang summary svg.i{width: 14px;height: 14px;}.nav-lang-list{position: absolute;right: 0;top: calc(100% + 8px);display: grid;gap: 4px;padding: 6px;background: #141417;border: 1px solid #2E2E35;border-radius: 14px;min-width: 160px;}.nav-lang-list a{color: #B9B9C2;padding: 9px 12px;border-radius: 10px;}.nav-lang-list a:hover,.nav-lang-list a:focus-visible{background: #232328;color: var(--white);outline: none;}.nav-lang-list a[aria-current]{color: var(--white);font-weight: 600;}.nav-menu{display: none;}.nav-menu summary{position: relative;z-index: 2;width: 44px;height: 44px;display: grid;place-items: center;border: 1px solid #2E2E35;border-radius: 10px;color: var(--white);background: var(--black);}.nav-menu summary svg.i:last-child,.nav-menu[open] summary svg.i:first-child{display: none;}.nav-menu[open] summary svg.i:last-child{display: block;}.nav-sheet{position: fixed;inset: 0;z-index: 1;display: flex;flex-direction: column;gap: 24px;background: var(--black);overflow-y: auto;padding: 88px max(16px,env(safe-area-inset-right,0px)) max(24px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));}.nav-sheet nav{display: grid;border-top: 1px solid var(--line-dark);}.nav-sheet nav a{color: var(--white);font-size: 22px;font-weight: 600;letter-spacing: -0.02em;padding: 16px 0;border-bottom: 1px solid var(--line-dark);}.nav-sheet .btn{padding: 14px;}.nav-sheet-langs{margin-top: auto;display: flex;gap: 20px;font-size: 14px;}.nav-sheet-langs a[aria-current]{color: var(--white);font-weight: 600;}.site-nav.solid{background: none;}.site-nav.solid .nav-bar{background: var(--black);}.site-nav.light{background: none;}.site-nav.light .nav-bar{background: var(--white);border-bottom-color: var(--line);}.site-nav.light .nav-logo,.site-nav.light .nav-login{color: var(--ink);}.site-nav.light .nav-links a,.site-nav.light .nav-lang summary{color: var(--ink-2);}.site-nav.light .nav-links a:hover,.site-nav.light .nav-links a[aria-current="page"],.site-nav.light .nav-lang summary:hover{color: var(--ink);}.site-nav.light .nav-login:hover{color: var(--ink-2);}.site-nav.light .nav-cta{background: var(--black);color: var(--white);}.site-nav.light .nav-menu summary{background: var(--white);border-color: var(--line);color: var(--ink);}@media (prefers-reduced-motion: no-preference){.nav-bar,.nav-logo,.nav-login,.nav-links a,.nav-cta,.nav-menu summary{transition: background-color 180ms ease,color 180ms ease,border-color 180ms ease;}}.nav-logo,.nav-login{position: relative;z-index: 2;}html.menu-open{overflow: hidden;}@media (max-width: 760px){.site-nav{height: 92px;margin-bottom: -92px;}.nav-bar{height: 64px;gap: 16px;padding-left: max(16px,env(safe-area-inset-left,0px));padding-right: max(16px,env(safe-area-inset-right,0px));}.nav-links,.nav-lang,.nav-cta{display: none;}.nav-right{gap: 16px;}.nav-menu{display: block;}}.hero{text-align: center;padding: 120px 0 128px;}.hero h1{font-weight: 700;font-size: clamp(42px,6vw,76px);line-height: 1.03;letter-spacing: -0.045em;margin: 0 auto 24px;max-width: 16ch;text-wrap: balance;}.hero p{color: #B9B9C2;font-size: 19px;max-width: 52ch;margin: 0 auto 32px;}.hero .actions{display: flex;gap: 12px;justify-content: center;flex-wrap: wrap;}.reassure{display: inline-flex;align-items: center;gap: 8px;color: #8D8D96;font-size: 14px;margin-top: 18px;}.reassure svg.i{width: 16px;height: 16px;}.top.compact .hero{padding: 112px 0 104px;}.top.compact .hero h1{font-size: clamp(36px,4.6vw,56px);max-width: 20ch;}.top{padding-bottom: var(--step);}.tiles{position: relative;z-index: 1;display: grid;grid-template-columns: 1fr;height: var(--step);margin-top: calc(-1 * var(--step));padding: 0 var(--rail);}.tiles span{background: var(--white);border-radius: 40px 40px 0 0;}.top.stick{position: sticky;z-index: 0;top: min(0px,calc(100vh - var(--top-h,100vh)));top: min(0px,calc(100svh - var(--top-h,100svh)));}.top.stick ~ .page,.top.stick ~ .site-banner,.top.stick ~ .funnel,.top.stick ~ .closing,.top.stick ~ footer.site{position: relative;z-index: 1;}.top.stick ~ .page{background: var(--white);}.top.stick ~ .page .sheet{display: flow-root;}.top.stick.covered{visibility: hidden;}.product{position: relative;z-index: 2;margin-top: -220px;}.top.compact ~ .page .product{margin-top: -200px;}.app{background: var(--white);border: 1px solid var(--line);border-radius: 18px;max-width: 880px;margin: 0 auto;overflow: hidden;}.app-top{display: flex;justify-content: space-between;align-items: center;gap: 16px;padding: 16px 24px;border-bottom: 1px solid var(--line);flex-wrap: wrap;}.app-top .proj{display: flex;align-items: center;gap: 10px;font-weight: 600;}.app-top .file{font-family: var(--mono);font-size: 13px;color: var(--ink-2);min-width: 0;overflow-wrap: anywhere;}.app-body{padding: 8px 24px 20px;}.verdict{font-size: 20px;font-weight: 600;letter-spacing: -0.015em;margin: 16px 0 12px;}.group{display: flex;align-items: center;gap: 8px;font-size: 14px;font-weight: 600;margin: 18px 0 4px;}.group.fix{color: var(--red);}.group.check{color: var(--amber);}.group svg.i{width: 18px;height: 18px;}.row{display: grid;grid-template-columns: 200px 1fr auto;gap: 16px;align-items: center;padding: 12px 0;border-top: 1px solid var(--line);font-size: 15px;}.row .pkg{font-family: var(--mono);font-size: 14px;overflow-wrap: anywhere;}.row .cve{display: block;font-family: var(--mono);font-size: 12px;color: var(--ink-3);}.act{display: inline-flex;align-items: center;gap: 6px;font: inherit;font-size: 14px;font-weight: 600;color: var(--ink);background: var(--paper);border: 1px solid var(--line);border-radius: 10px;padding: 7px 12px;cursor: pointer;white-space: nowrap;text-decoration: none;}.act svg.i{width: 16px;height: 16px;}.quiet{display: flex;align-items: center;gap: 8px;border-top: 1px solid var(--line);padding-top: 14px;margin-top: 4px;color: var(--ink-2);font-size: 15px;}.quiet svg.i{color: var(--green);width: 18px;height: 18px;}.facts{display: grid;grid-template-columns: repeat(4,1fr);gap: 32px;padding: 104px 0 72px;}.facts b{display: block;font-weight: 600;font-size: clamp(36px,4.2vw,56px);line-height: 1;letter-spacing: -0.045em;margin-bottom: 14px;white-space: nowrap;}.facts span{display: block;color: var(--ink);max-width: 22ch;}.section-title{font-weight: 700;font-size: clamp(32px,4vw,48px);line-height: 1.06;letter-spacing: -0.04em;margin: 0 0 32px;max-width: 18ch;}.flow{background: var(--black);}.sheet{background: var(--white);margin: 0 var(--rail);border-bottom-right-radius: var(--rail-r);padding-bottom: 8px;}.title-row{background: var(--white);overflow: hidden;margin-left: var(--rail);}.title-x{font-weight: 700;font-size: clamp(30px,4vw,52px);line-height: 1.1;letter-spacing: -0.04em;margin: 0;white-space: nowrap;}.pill{position: relative;display: inline-block;background: var(--black);color: var(--white);border-radius: 999px 0 0 999px;padding: 14px 8px 18px 32px;margin-left: 8px;}.pill::after{content: "";position: absolute;left: 100%;top: 0;bottom: 0;width: 100vw;background: var(--black);}.sheet2{background: var(--white);margin-left: var(--rail);border-bottom-left-radius: var(--rail-r);padding: 56px 0 8px;}.title-row2{background: var(--white);overflow: hidden;}.pill2{position: relative;display: inline-block;background: var(--black);color: var(--white);border-radius: 0 999px 999px 0;padding: 14px 32px 18px 8px;margin-right: 8px;}.pill2::before{content: "";position: absolute;right: 100%;top: 0;bottom: 0;width: 100vw;background: var(--black);}.demos{display: grid;grid-template-columns: repeat(3,1fr);gap: 32px;align-items: start;padding-bottom: 88px;}.demo h3{font-size: 20px;font-weight: 600;letter-spacing: -0.02em;margin: 0 0 14px;}.art{background: var(--white);border: 1px solid var(--line);border-radius: 16px;padding: 16px;display: grid;gap: 8px;}.art .act{justify-self: start;}.art-row{display: flex;justify-content: space-between;gap: 12px;font-family: var(--mono);font-size: 14px;}.art-row .cve{color: var(--ink-3);font-size: 12px;}.art-note{display: flex;gap: 8px;align-items: center;font-size: 14px;color: var(--ink-2);padding-bottom: 8px;border-bottom: 1px solid var(--line);}.art-note:last-child{border-bottom: 0;padding-bottom: 0;}.art-note svg.i{width: 16px;height: 16px;}.art-note.ok svg{color: var(--green);}.art-note.bad svg{color: var(--red);}.code{font-family: var(--mono);font-size: 13px;display: flex;gap: 12px;background: var(--paper);border-radius: 10px;padding: 10px 12px;white-space: pre-wrap;overflow-wrap: anywhere;}.code .ln{color: var(--ink-3);flex: none;white-space: nowrap;}.code mark{background: #FBE3DF;color: var(--red);border-radius: 4px;padding: 0 3px;}.prompt{font-family: var(--mono);font-size: 13px;line-height: 1.6;background: var(--paper);border-radius: 10px;padding: 12px;margin: 0;white-space: pre-wrap;}.compare{padding: 48px 0 120px;}.cmp{border-radius: 22px;overflow: hidden;background: var(--paper);}.cmp-row{display: grid;grid-template-columns: 1.1fr 1fr 1fr 1fr;}.cmp-row > span{padding: 16px 20px;border-top: 1px solid var(--field-line);font-size: 15px;color: var(--ink-2);}.cmp-row > span[role="rowheader"]{color: var(--ink);font-weight: 600;}.cmp-row > span.t{background: var(--black);color: var(--white);border-top-color: var(--line-dark);font-weight: 500;}.cmp-head > span{border-top: 0;font-size: 14px;font-weight: 600;color: var(--ink);padding-top: 20px;padding-bottom: 20px;}.cmp-head > span.t{font-size: 18px;letter-spacing: -0.02em;}.pricing{padding: 32px 0 120px;}.pr-head{display: flex;justify-content: space-between;align-items: end;gap: 24px;flex-wrap: wrap;margin-bottom: 8px;}.pr-head .section-title{margin-bottom: 24px;}.billing{display: inline-flex;gap: 4px;padding: 4px;background: var(--paper);border-radius: 14px;margin-bottom: 24px;}.billing button{font: inherit;font-size: 15px;font-weight: 600;border: 0;border-radius: 10px;padding: 10px 16px;background: none;color: var(--ink-2);cursor: pointer;}.billing button[aria-pressed="true"]{background: var(--black);color: var(--white);}.plans{display: grid;grid-template-columns: repeat(4,1fr);gap: 16px;}.plan{background: var(--paper);border-radius: 22px;padding: 28px;display: flex;flex-direction: column;}.plan h3{margin: 0;font-size: 22px;font-weight: 700;letter-spacing: -0.03em;}.plan .for{margin: 4px 0 20px;color: var(--ink-2);font-size: 15px;min-height: 46px;}.price{display: flex;flex-direction: column;gap: 2px;margin-bottom: 20px;}.price b{font-size: 44px;font-weight: 700;letter-spacing: -0.045em;line-height: 1;white-space: nowrap;}.price span{font-size: 14px;color: var(--ink-2);}.price s{color: var(--ink-3);margin-right: 6px;}.plan ul{list-style: none;margin: 0 0 24px;padding: 0;display: grid;align-content: start;gap: 10px;font-size: 15px;flex: 1;}.plan li{display: flex;gap: 10px;align-items: flex-start;}.plan li svg.i{width: 18px;height: 18px;margin-top: 2px;color: var(--green);}.plan.dark{background: var(--black);color: var(--white);}.plan.dark .for,.plan.dark .price span{color: #B9B9C2;}.plan.dark .price s{color: #85858F;}.plan.dark li svg.i{color: #6FD07D;}.plan ul.base{flex: 0 0 auto;margin-bottom: 16px;}.plan .tools-h{margin: 0 0 10px;padding-top: 14px;border-top: 1px solid var(--line);font-size: 13px;font-weight: 600;color: var(--ink-2);}.plan.dark .tools-h{color: #B9B9C2;border-top-color: #2A2A30;}.plan li small{display: block;color: var(--ink-2);font-size: 13px;}.plan.dark li small{color: #B9B9C2;}.ai-line{margin: 20px 0 0;font-size: 15px;max-width: 80ch;}.ai-line b{font-weight: 600;}.compare{margin-top: 56px;}.compare > p{margin: -12px 0 20px;color: var(--ink-2);max-width: 70ch;}.cmp-wrap{overflow-x: auto;border-radius: 22px;background: var(--paper);}.cmp-wrap .cmp{width: 100%;border-collapse: collapse;min-width: 720px;font-size: 15px;}.cmp th,.cmp td{padding: 12px 16px;text-align: left;vertical-align: middle;}.cmp thead th{font-weight: 700;letter-spacing: -0.02em;padding-top: 20px;padding-bottom: 14px;}.cmp thead th small{display: block;font-weight: 500;font-size: 13px;color: var(--ink-2);letter-spacing: 0;}.cmp th:not(:first-child),.cmp td{text-align: center;width: 15%;}.cmp tbody tr + tr > *{border-top: 1px solid var(--line);}.cmp tbody tr.grp > th{font-size: 13px;font-weight: 600;color: var(--ink-2);padding-top: 22px;padding-bottom: 8px;border-top: 0;}.cmp tbody th{font-weight: 500;}.cmp tbody th small{display: block;color: var(--ink-2);font-size: 13px;font-weight: 400;}.cmp td svg.i{width: 18px;height: 18px;color: var(--green);vertical-align: -3px;}.cmp td.no{color: var(--ink-3);}.cmp td.num{font-variant-numeric: tabular-nums;font-weight: 600;}@media (max-width: 640px){.compare{margin-top: 40px;}.cmp th,.cmp td{padding: 10px 12px;}}@media (max-width: 560px){.cmp-wrap .cmp{min-width: 0;table-layout: fixed;font-size: 13.5px;}.cmp th:first-child{width: 36%;}.cmp th:not(:first-child),.cmp td{width: auto;}.cmp th,.cmp td{padding: 9px 4px;}.cmp thead th:not(:first-child){padding-left: 1px;padding-right: 1px;}.cmp th:first-child,.cmp tbody tr.grp > th{padding-left: 12px;}.cmp thead th{font-size: 12px;letter-spacing: -0.02em;padding-top: 16px;}.cmp thead th small{font-size: 11px;}.cmp tbody th small{font-size: 12px;}.cmp td svg.i{width: 16px;height: 16px;}}.pr-foot{display: grid;grid-template-columns: minmax(280px,420px) 1fr;gap: 32px;align-items: end;margin-top: 24px;}.more{margin: 0 0 30px;color: var(--ink-2);font-size: 15px;}.more a{color: var(--ink);font-weight: 600;}.field{display: grid;gap: 8px;}.field label,.field .label{font-weight: 600;font-size: 15px;}.input,select.input{font: 500 15px var(--sans);border: 1px solid var(--field-line);border-radius: 10px;padding: 12px 14px;background: var(--white);color: var(--ink);width: 100%;}.input:focus{outline: 2px solid var(--green);outline-offset: 1px;border-color: transparent;}.input[aria-invalid="true"]{border-color: var(--red);}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill{-webkit-text-fill-color: var(--field-ink,var(--ink));caret-color: var(--field-ink,var(--ink));box-shadow: 0 0 0 1000px var(--field-bg,var(--white)) inset;transition: background-color 86400s;}.promo-row{display: flex;gap: 8px;}.promo-row .input{flex: 1;min-width: 0;font-family: var(--mono);text-transform: uppercase;letter-spacing: 0.04em;}.promo-row .input::placeholder{text-transform: none;letter-spacing: 0;font-family: var(--sans);color: var(--ink-3);}.msg{min-height: 20px;margin: 0;font-size: 13px;}.msg.ok{color: var(--green);}.msg.err{color: var(--red);}.check-line{display: flex;gap: 10px;align-items: flex-start;font-size: 14px;color: var(--ink-2);}.check-line input{margin-top: 3px;accent-color: var(--black);}.flash{border-radius: 12px;padding: 12px 16px;font-size: 15px;margin: 0 0 16px;}.flash.ok{background: #E8F4EA;color: #1E5E27;}.flash.err{background: #FBE3DF;color: #8E1F14;}.waitlist{display: grid;grid-template-columns: 1fr 1.2fr;gap: 48px;align-items: start;background: var(--paper);border-radius: 22px;padding: 40px;margin-bottom: 120px;}.waitlist h2{margin: 0 0 12px;font-size: 32px;letter-spacing: -0.04em;line-height: 1.1;}.waitlist p{margin: 0;color: var(--ink-2);}.waitlist form{display: grid;gap: 18px;}.drop{display: grid;gap: 16px;padding: 24px;}.dropzone{display: grid;place-items: center;gap: 10px;text-align: center;border: 1.5px dashed #C9C9D3;border-radius: 14px;padding: 40px 24px;background: var(--paper);cursor: pointer;}.dropzone.over{border-color: var(--black);background: #EFEFF8;}.dropzone input{position: absolute;width: 1px;height: 1px;opacity: 0;}.dropzone b{font-size: 16px;font-weight: 600;letter-spacing: -0.01em;color: var(--ink-3);}.dropzone small{color: var(--ink-3);font-size: 14px;}.dropzone .chosen{font-family: var(--mono);font-size: 14px;color: var(--ink);}.dropzone.over b,.dropzone:hover b{color: var(--ink-2);}.drop-actions{display: flex;gap: 12px;flex-wrap: wrap;align-items: center;justify-content: space-between;}.formats{display: flex;gap: 8px;flex-wrap: wrap;}.tag{font-family: var(--mono);font-size: 13px;background: var(--paper);border-radius: 10px;padding: 6px 10px;white-space: nowrap;}.top-acts{display: flex;gap: 8px;flex-wrap: wrap;margin-left: auto;}.or-repo{display: grid;gap: 6px;}.or-repo label{font-size: 14px;color: var(--ink-2);}.or-repo .input{font-family: var(--mono);font-size: 14px;}.way.dark .or-repo label{color: #8D8D96;}.formats-wrap{display: grid;gap: 10px;flex: 1 1 420px;min-width: 0;}.formats-more{margin: 0;font-size: 13px;color: var(--ink-2);max-width: 72ch;}.drop-actions:has(.formats-wrap){align-items: flex-end;}.linkbtn{font: inherit;font-size: 15px;font-weight: 600;background: none;border: 0;padding: 0;color: var(--ink);text-decoration: underline;text-underline-offset: 3px;cursor: pointer;}.points{display: grid;grid-template-columns: repeat(3,1fr);gap: 32px;padding: 88px 0 120px;}.points h3{margin: 0 0 8px;font-size: 20px;letter-spacing: -0.02em;}.points p{margin: 0;color: var(--ink-2);font-size: 16px;}.busy{display: none;}form.sending .busy{display: inline-flex;align-items: baseline;}.dots{display: inline-flex;gap: 3px;margin-left: 4px;}.dots i{width: 4px;height: 4px;border-radius: 50%;background: currentColor;}@media (prefers-reduced-motion: no-preference){.dots i{animation: dotHop 1s ease-in-out infinite;}.dots i:nth-child(2){animation-delay: .15s;}.dots i:nth-child(3){animation-delay: .3s;}@keyframes dotHop{0%,60%,100%{transform: translateY(0);opacity: .45;}30%{transform: translateY(-5px);opacity: 1;}}}form.sending .idle{display: none;}.badges{display: flex;gap: 6px;flex-wrap: wrap;margin-top: 6px;}.badge{font-size: 12px;font-weight: 600;border-radius: 8px;padding: 2px 8px;background: var(--paper);color: var(--ink-2);white-space: nowrap;}.badge.kev{background: #FBE3DF;color: #8E1F14;}.row .to{color: var(--ink-2);}.row .to b{color: var(--ink);font-family: var(--mono);font-weight: 500;}.more-row{border-top: 0;padding: 0 0 12px;}details.vulns summary,details.ignored summary,details.prompt-box summary{cursor: pointer;font-size: 14px;color: var(--ink-2);list-style: none;}details summary::-webkit-details-marker{display: none;}details.vulns summary::before,details.ignored summary::before,details.prompt-box summary::before{content: "+ ";font-family: var(--mono);}details[open].vulns summary::before,details[open].ignored summary::before,details[open].prompt-box summary::before{content: "− ";}.vlist{list-style: none;margin: 10px 0 0;padding: 0;display: grid;gap: 0;}.vlist li{display: grid;grid-template-columns: 170px 1fr;gap: 12px;padding: 10px 0;border-top: 1px solid var(--line);font-size: 14px;}.vlist .id{font-family: var(--mono);font-size: 12px;color: var(--ink-2);overflow-wrap: anywhere;}.vlist .why{color: var(--ink-2);}.vlist .why.fix{color: var(--red);}.vlist .why.check{color: var(--amber);}.prompt-box{margin-top: 10px;}.prompt-box .prompt{margin-top: 8px;}.notes{display: grid;grid-template-columns: repeat(3,1fr);gap: 16px;padding: 72px 0 32px;}.note{background: var(--paper);border-radius: 22px;padding: 24px;}.note h3{margin: 0 0 8px;font-size: 18px;letter-spacing: -0.02em;display: flex;gap: 8px;align-items: center;}.note p,.note ul{margin: 0;color: var(--ink-2);font-size: 15px;}.note ul{padding-left: 18px;}.note code{font-family: var(--mono);font-size: 13px;color: var(--ink);}.note li,.panel-card p,.panel-card li{overflow-wrap: anywhere;}.note.bad h3 svg{color: var(--red);}.note.ok h3 svg{color: var(--green);}.method{color: var(--ink-2);font-size: 14px;padding: 0 0 120px;max-width: 72ch;}.method h2{color: var(--ink);font-size: 18px;margin: 0 0 8px;}.legal{max-width: 72ch;padding: 72px 0 120px;}.legal h2{font-size: 22px;letter-spacing: -0.02em;margin: 32px 0 8px;}.legal p,.legal li{color: var(--ink-2);}.draft{background: #FFF4E0;color: #6B3E00;border-radius: 12px;padding: 12px 16px;font-size: 15px;}.legal{counter-reset: legal;}.legal h2::before{counter-increment: legal;content: counter(legal) ". ";}.legal a{color: var(--ink);}.legal .legal-date{font-size: 14px;color: var(--ink-3);margin: 12px 0 0;}.legal mark.todo{background: #FFF4E0;color: #6B3E00;border-radius: 4px;padding: 1px 4px;font-weight: 600;}.funnel{display: grid;grid-template-columns: repeat(4,minmax(0,1fr));gap: 8px;align-items: end;padding: 0 8px;margin-top: 40px;}.funnel div{background: var(--black);color: var(--white);border-radius: 22px 22px 0 0;padding: 22px 24px;display: flex;flex-direction: column;}.funnel b{font-size: 40px;font-weight: 700;letter-spacing: -0.04em;line-height: 1;}.funnel span{color: #B9B9C2;font-size: 15px;margin-top: 8px;}.funnel div:nth-child(1){height: 240px;}.funnel div:nth-child(2){height: 188px;}.funnel div:nth-child(3){height: 148px;}.funnel div:nth-child(4){height: 108px;}.funnel div:nth-child(4) b{color: #FF8A7A;}.closing{background: var(--black);color: var(--white);text-align: center;padding: 40px 0 96px;}.closing h2{font-weight: 700;font-size: clamp(32px,4vw,52px);letter-spacing: -0.04em;line-height: 1.05;margin: 0 auto 28px;max-width: 16ch;}footer.site{background: var(--black);color: #8D8D96;border-top: 1px solid var(--line-dark);}footer.site a{text-decoration: none;transition: color 160ms ease;}footer.site a:hover{color: var(--white);}.foot{width: 100%;}.foot-top{display: grid;grid-template-columns: minmax(0,1.25fr) minmax(0,2fr);gap: 56px;padding: 56px clamp(24px,5vw,96px) 48px;}.foot-brand{min-width: 0;}.foot-logo{display: inline-flex;align-items: center;gap: 10px;color: var(--white);font-weight: 700;font-size: 24px;letter-spacing: -0.03em;}.foot-logo .logo-mark{width: 30px;height: 27px;}.foot-brand p{margin: 18px 0 0;max-width: 360px;font-size: 15px;line-height: 1.55;}footer.site .social{display: flex;gap: 12px;margin-top: 24px;}footer.site .social a{display: inline-flex;align-items: center;justify-content: center;width: 44px;height: 44px;border: 1px solid var(--line-dark);border-radius: 10px;background: rgba(255,255,255,0.04);color: #B9B9C2;transition: color 160ms ease,border-color 160ms ease,background-color 160ms ease;}footer.site .social a:hover{border-color: #3A3A42;background: rgba(255,255,255,0.08);color: var(--white);}footer.site .social .i{width: 20px;height: 20px;}.foot-cols{display: grid;grid-template-columns: minmax(0,1.15fr) minmax(0,0.85fr) minmax(0,1fr) minmax(0,1.3fr);gap: 28px;min-width: 0;}.foot-col h3{margin: 0 0 18px;font-size: 12px;font-weight: 700;letter-spacing: 0.09em;text-transform: uppercase;color: #8D8D96;}.foot-col ul{list-style: none;margin: 0;padding: 0;display: grid;gap: 12px;}.foot-col a{color: #B9B9C2;font-size: 15px;}.foot-col a:hover{color: var(--white);}.foot-mail{display: inline-flex;align-items: center;gap: 8px;white-space: nowrap;}.foot-mail .i{width: 18px;height: 18px;flex: none;}.foot-bottom{display: flex;justify-content: space-between;align-items: center;gap: 16px;flex-wrap: wrap;padding: 22px clamp(24px,5vw,96px);border-top: 1px solid var(--line-dark);font-size: 14px;}footer.site .langs{display: flex;gap: 16px;}footer.site .langs a[aria-current]{color: var(--white);font-weight: 600;}@media (max-width: 960px){.foot-top{grid-template-columns: 1fr;gap: 40px;padding: 32px 24px;}.foot-cols{grid-template-columns: repeat(2,minmax(0,1fr));gap: 28px 20px;}.foot-bottom{padding: 18px 24px;}}@media (max-width: 600px){.foot-col:nth-child(4){grid-column: 1 / -1;}}.page-end{background: var(--black);height: 8px;}@media (max-width: 1100px){.plans{grid-template-columns: repeat(2,1fr);}}@media (max-width: 900px){:root{--rail: 12px;--rail-r: 20px;--step: 72px;}.hero{padding: 104px 0 96px;}.tiles span{border-radius: 28px 28px 0 0;}.product{margin-top: -150px;}.top.compact ~ .page .product{margin-top: -130px;}.row{grid-template-columns: minmax(0,1fr);gap: 6px;}.facts{grid-template-columns: 1fr 1fr;padding: 72px 0;}.title-x{white-space: normal;}.pill{padding: 8px 6px 10px 20px;}.pill2{padding: 8px 20px 10px 6px;}.demos,.points,.notes,.waitlist{grid-template-columns: minmax(0,1fr);}.waitlist{padding: 24px;gap: 24px;}.cmp-row{grid-template-columns: 1fr 1fr;}.cmp-row > span[role="rowheader"]{grid-column: 1 / -1;padding-bottom: 4px;}.cmp-row > span:nth-child(2){display: none;}.cmp-head > span:first-child{display: none;}.funnel b{font-size: 26px;}.funnel span{font-size: 12px;}.funnel div{padding: 14px;}.funnel div:nth-child(1){height: 180px;}.funnel div:nth-child(2){height: 140px;}.funnel div:nth-child(3){height: 110px;}.funnel div:nth-child(4){height: 84px;}.vlist li{grid-template-columns: minmax(0,1fr);gap: 2px;}}@media (max-width: 560px){.funnel{gap: 6px;padding: 0 6px;}.funnel div{padding: 12px 8px;border-radius: 16px 16px 0 0;}.funnel b{font-size: 22px;}.funnel span{font-size: 11px;line-height: 1.35;hyphens: auto;overflow-wrap: anywhere;}.funnel div:nth-child(1){height: 196px;}.funnel div:nth-child(2){height: 156px;}.funnel div:nth-child(3){height: 124px;}.funnel div:nth-child(4){height: 96px;}}@media (max-width: 560px){.btn{padding: 12px 18px;text-wrap: balance;}.panel-card{padding: 20px;}}@media (max-width: 640px){.plans{grid-template-columns: 1fr;}.pr-foot{grid-template-columns: 1fr;}.plan .for{min-height: 0;}}@media (max-width: 560px){.hero p{font-size: 17px;}.hero .actions{flex-direction: column;align-items: center;}.hero .actions .btn{width: min(100%,300px);justify-content: center;}.facts{padding: 56px 0 40px;gap: 28px 20px;}.sheet2{padding-top: 40px;}.demos{gap: 40px;}.sheet2 .demos{padding-bottom: 48px;}.compare{padding: 32px 0 56px;}.pricing{padding: 16px 0 64px;}.plan{padding: 24px 22px;}}@media (max-width: 560px){.pr-head{gap: 0;}.billing{display: grid;grid-template-columns: 1fr 1fr;width: 100%;}.billing button{font-size: 14px;line-height: 1.25;padding: 9px 10px;text-wrap: balance;}}.sample-form{text-align: center;margin-top: 16px;}.plan{position: relative;overflow: hidden;}.price b{display: inline-block;}.fx{position: absolute;inset: 0;z-index: 3;display: grid;grid-template-columns: repeat(var(--c),1fr);pointer-events: none;}.fx i{position: relative;background: var(--paper);}.fx i::after{content: "";position: absolute;inset: 2px;border-radius: 8px;background: var(--tile);--tile: #ECECF5;--flash: #D9D9E6;}.plan.dark .fx i{background: var(--black);}.plan.dark .fx i::after{--tile: #141417;--flash: #2A2A31;}@media (prefers-reduced-motion: no-preference){.pricing.anim .plan li svg.i path{stroke-dasharray: 22;stroke-dashoffset: 22;}.plan.run li svg.i path{animation: draw 200ms ease-out forwards;animation-delay: var(--ck,0ms);}.plan.run .fx i{animation: tileOut 340ms ease-in forwards;animation-delay: var(--d);}.plan.run .fx i::after{animation: tileFlash 340ms linear forwards;animation-delay: var(--d);}@keyframes draw{to{stroke-dashoffset: 0;}}@keyframes tileOut{0%,45%{opacity: 1;}100%{opacity: 0;}}@keyframes tileFlash{0%{background: var(--tile);}30%,100%{background: var(--flash);}}}@media (prefers-reduced-motion: reduce){.fx{display: none;}}.closing{position: relative;overflow: hidden;padding: 72px 0 112px;}.closing > .wrap{position: relative;z-index: 1;}.closing .bg-scan{bottom: auto;padding: 0;}.closing .bg-scan i{background: #08080A;}.closing .bg-scan .wave{-webkit-mask-position: 0 0;mask-position: 0 0;}.closing .bg-scan .wave span{background: linear-gradient(135deg,transparent 47%,rgba(255,255,255,0.06) 50%,transparent 53%);}@media (prefers-reduced-motion: no-preference){.closing .bg-scan i.alert{animation-name: scanDeepAlert;}@keyframes scanDeepAlert{0%,100%{background: #220B08;}6%{background: #5A1912;}24%,80%{background: #3E130D;}}}.paused .bg-scan i,.paused .bg-scan .wave span{animation-play-state: paused;}.reassure{display: inline-block;max-width: 40ch;}.reassure svg.i{vertical-align: -3px;margin-right: 6px;}@media (max-width: 900px){.facts{gap: 32px 16px;}.facts b{font-size: clamp(26px,7.4vw,42px);}.facts span{font-size: 15px;}}.title-row,.sheet2{margin-bottom: -1px;}.sheet2,.title-row2{position: relative;}@media (max-width: 900px){.input,select.input{font-size: 16px;}}.app.narrow{max-width: 560px;}.form-card{display: grid;gap: 18px;padding: 28px;}.form-card p{margin: 0;color: var(--ink-2);font-size: 15px;}.form-card .btn{justify-self: start;}.fine{font-size: 13px !important;color: var(--ink-3) !important;}.fine a,.form-card p a{color: var(--ink);}.spacer{height: 120px;}.solo .top.compact .hero{padding-bottom: 40px;}.solo-card{position: relative;z-index: 1;}.solo-card .app{color: var(--ink);}.solo .page{background: var(--black);}.status{display: grid;grid-template-columns: 40px 1fr;gap: 14px;align-items: start;}.status-ic{width: 40px;height: 40px;border-radius: 10px;background: var(--black);color: var(--white);display: grid;place-items: center;}.status-ic svg.i{width: 20px;height: 20px;}.status b{display: block;font-size: 16px;letter-spacing: -0.01em;color: var(--ink);overflow-wrap: anywhere;}.status span.status-text{display: block;color: var(--ink-2);font-size: 14px;margin-top: 2px;}.status .mono{font-family: var(--mono);font-size: 15px;font-weight: 500;}.form-card hr{border: 0;border-top: 1px solid var(--line);margin: 0;width: 100%;}.again{display: flex;justify-content: space-between;align-items: center;gap: 12px;flex-wrap: wrap;}.again p{flex: 1 1 220px;}.again form{margin: 0;}.card-acts{display: flex;gap: 8px;flex-wrap: wrap;}.chosen-file{display: flex;gap: 10px;align-items: center;background: var(--paper);border-radius: 12px;padding: 12px 14px;}.chosen-file svg.i{color: var(--green);}a.row.plink{text-decoration: none;color: inherit;grid-template-columns: 200px 1fr auto;}a.row.plink:hover .pkg{text-decoration: underline;text-underline-offset: 3px;}a.row.plink .badges{margin: 0;}.app-top .act{font-size: 14px;}details.decide{margin-top: 8px;}details.decide summary{cursor: pointer;font-size: 13px;font-weight: 600;color: var(--ink);list-style: none;}details.decide summary::before{content: "+ ";font-family: var(--mono);color: var(--ink-2);}details[open].decide summary::before{content: "− ";}.decide-form{display: grid;gap: 8px;margin-top: 8px;max-width: 520px;}.decide-form .input{padding: 9px 12px;font-size: 14px;}.decide-actions{display: flex;gap: 8px;flex-wrap: wrap;}.decided{margin: 0;font-size: 14px;color: var(--ink);background: var(--paper);border-radius: 10px;padding: 8px 12px;}.panels{display: grid;grid-template-columns: 1fr 1fr;gap: 16px;padding: 40px 0 0;}.panel-card{background: var(--paper);border-radius: 22px;padding: 28px;display: grid;gap: 14px;align-content: start;}.panel-card h2{margin: 0;font-size: 22px;letter-spacing: -0.03em;}.panel-card p{margin: 0;color: var(--ink-2);font-size: 15px;}.panel-card form{display: grid;gap: 12px;}.panel-card .btn{justify-self: start;}.dropzone.small{padding: 20px;background: var(--white);}.history{list-style: none;margin: 0;padding: 0;display: grid;}.history li{display: grid;grid-template-columns: 130px 1fr auto;gap: 12px;align-items: center;padding: 10px 0;border-top: 1px solid var(--line);font-size: 14px;}.history li[aria-current] a{font-weight: 700;}.history a{color: var(--ink);font-family: var(--mono);font-size: 13px;}.history .badges{margin: 0;}.inline-actions{display: flex;gap: 8px;flex-wrap: wrap;}.inline-actions .btn{white-space: nowrap;}.danger{display: grid;gap: 20px;border-top: 1px solid var(--line);margin: 48px 0 120px;padding-top: 32px;}.inline-form{display: grid;grid-template-columns: 1fr auto;gap: 8px 12px;align-items: center;max-width: 720px;}.inline-form label{grid-column: 1 / -1;font-size: 14px;font-weight: 600;}.danger-btn{color: var(--red);}@media (max-width: 900px){.panels{grid-template-columns: minmax(0,1fr);}a.row.plink{grid-template-columns: minmax(0,1fr);}.history li{grid-template-columns: minmax(0,1fr);gap: 2px;}.inline-form{grid-template-columns: minmax(0,1fr);}.inline-form .act{justify-self: start;}}.vlist .why{display: block;margin-top: 2px;}.pull{position: relative;z-index: 2;margin-top: -96px;}.pull > .pricing{padding-top: 0;}.pull > .panels:first-child,.pull > .flash + .panels{padding-top: 0;}@media (max-width: 900px){.pull{margin-top: -56px;}}@media (prefers-reduced-motion: no-preference){html{scroll-behavior: smooth;}}[id]{scroll-margin-top: 24px;}#verifie,#tarifs,#liste,#danger{scroll-margin-top: 48px;}@media (prefers-reduced-motion: no-preference){.btn,.act,.nav-cta,.billing button{transition: background-color 120ms ease,color 120ms ease,transform 80ms ease;}.btn:active,.act:active,.nav-cta:active,.billing button:active{transform: translateY(1px);}}body{min-height: 100vh;min-height: 100dvh;display: flex;flex-direction: column;}body > .page{flex: 1 0 auto;}body > footer.site,body > .closing,body > .funnel{flex-shrink: 0;}.toasts{position: fixed;z-index: 80;left: 50%;top: 72px;transform: translateX(-50%);display: grid;gap: 8px;justify-items: center;pointer-events: none;width: max-content;max-width: calc(100vw - 24px);}.toast{pointer-events: auto;position: relative;display: flex;align-items: center;gap: 12px;max-width: min(520px,calc(100vw - 24px));min-height: 56px;padding: 8px 10px 8px 18px;background: #141417;color: #FFFFFF;border: 1px solid #26262A;border-radius: 14px;font-size: 15px;line-height: 1.4;}.toast .t-ico{flex: none;width: 24px;display: grid;place-items: center;}.toast .t-ico svg.i{width: 18px;height: 18px;}.toast.ok .t-ico{color: #6FD07D;}.toast.err .t-ico{color: #FF8A7A;}.toast.info .t-ico{color: #FFFFFF;}.toast .t-text{flex: 1;}.toast .t-act{font: inherit;font-size: 14px;font-weight: 600;color: #FFFFFF;background: none;border: 0;padding: 6px 8px;border-radius: 8px;cursor: pointer;text-decoration: underline;text-underline-offset: 3px;}.toast .t-x{flex: none;line-height: 0;color: #FFFFFF;background: none;border: 0;padding: 6px;border-radius: 8px;cursor: pointer;}.toast .t-x svg.i{width: 16px;height: 16px;}.toast .t-act:hover,.toast .t-x:hover{background: #1E1E23;}@media (prefers-reduced-motion: no-preference){.toast{animation: toastIn 360ms cubic-bezier(.2,.8,.2,1) both;}.toast.out{animation: toastOut 220ms ease-in forwards;}@keyframes toastIn{from{opacity: 0;transform: translateY(-72px);}to{opacity: 1;transform: none;}}@keyframes toastOut{to{opacity: 0;transform: translateY(-40px);}}}.notices{padding: 24px 24px 0;}@media (max-width: 900px){.toasts{top: 68px;}.toast{font-size: 14px;}}.scanov{position: fixed;inset: 0;z-index: 70;display: grid;place-items: center;overflow-y: auto;padding: 24px 16px;pointer-events: none;visibility: hidden;background: rgba(4,4,3,0);-webkit-backdrop-filter: blur(0px);backdrop-filter: blur(0px);transition: background 560ms cubic-bezier(.2,.7,.2,1),backdrop-filter 560ms cubic-bezier(.2,.7,.2,1),-webkit-backdrop-filter 560ms cubic-bezier(.2,.7,.2,1),visibility 0s linear 560ms;}.scanov.on{visibility: visible;pointer-events: auto;background: rgba(4,4,3,.32);-webkit-backdrop-filter: blur(14px);backdrop-filter: blur(14px);transition-delay: 0s;}html.analysing{overflow: hidden;}.scanov main{width: min(720px,100%);background: #040403;color: #FFFFFF;border-radius: 22px;padding: 40px clamp(20px,5vw,48px) 32px;opacity: 0;transform: translateY(18px) scale(.92);filter: blur(8px);transition: opacity 460ms ease,transform 620ms cubic-bezier(.16,1,.3,1),filter 520ms ease;}.scanov.on main{opacity: 1;transform: none;filter: blur(0);transition-delay: 90ms;}.scanov.on.off main{opacity: 0;transform: translateY(-10px) scale(1.03);filter: blur(6px);transition-delay: 0s;transition-duration: 260ms,320ms,260ms;}.scanov .file{font-family: var(--mono);font-size: 14px;color: #8D8D96;margin-bottom: 12px;}.scanov h2{font-size: clamp(26px,3.6vw,38px);letter-spacing: -0.035em;margin: 0 0 24px;line-height: 1.1;}.pgrid{display: grid;grid-template-columns: repeat(18,1fr);gap: 6px;margin-bottom: 24px;}.pgrid i{aspect-ratio: 1;border-radius: 8px;background: #111114;opacity: 0;transform: translateY(-10px);transition: opacity 400ms ease,transform 500ms cubic-bezier(.2,.8,.2,1),background 260ms ease;}.pgrid i.in{opacity: 1;transform: none;}.pgrid i.seen{background: #26262C;}.pgrid i.vuln{background: #D2402F;}.pgrid i.dropped{background: #1A1A1F;}.pgrid i.keep{background: #D2402F;transform: scale(1.18);}.pgrid.done i:not(.keep){opacity: .35;}@media (prefers-reduced-motion: no-preference){.pgrid.sorting i.seen:not(.vuln){animation: sorting 1.4s linear infinite;animation-delay: calc(var(--k,0) * 1ms);}@keyframes sorting{0%,100%{background: #26262C;}40%{background: #34343C;}}}.psteps{list-style: none;margin: 0;padding: 0;font-size: 15px;}.psteps li{display: flex;justify-content: space-between;gap: 16px;padding: 11px 0;border-top: 1px solid #1E1E22;color: #4A4A52;transition: color 300ms ease;}.psteps li.on{color: #FFFFFF;}.psteps li.ok{color: #8D8D96;}.psteps b{font-weight: 600;font-variant-numeric: tabular-nums;}@media (prefers-reduced-motion: reduce){.scanov,.scanov main,.pgrid i,.psteps li{transition: none;}}@media (max-width: 900px){.pgrid{grid-template-columns: repeat(12,1fr);gap: 5px;}.pgrid i{border-radius: 6px;}}.ob-a{display: grid;grid-template-columns: 1.2fr 1fr;gap: 16px;padding: 24px;}.way{border-radius: 22px;padding: 28px;display: grid;gap: 14px;align-content: start;margin: 0;}.way h2{margin: 0;font-size: 22px;letter-spacing: -0.03em;}.way p{margin: 0;font-size: 15px;}.way .btn{justify-self: start;}.way.dark{background: #040403;color: #FFFFFF;}.way.dark p{color: #B9B9C2;}.way.dark .input{background: #0F0F12;border-color: #2E2E35;color: #FFFFFF;--field-bg: #0F0F12;--field-ink: #FFFFFF;}.way.dark .input::placeholder{color: #6E6E78;}.way.dark .dropzone{background: #0F0F12;border-color: #2E2E35;color: #FFFFFF;}.way.dark .dropzone b{color: #6E6E78;}.way.dark .dropzone small{color: #5A5A63;}.way.dark .dropzone .chosen{color: #FFFFFF;}.way.dark .btn-white{background: #FFFFFF;color: #040403;}.way.dark .dropzone.over{background: #17171B;border-color: #FFFFFF;}.way.dark .dropzone.over b,.way.dark .dropzone:hover b{color: #A4A4AE;}.way.light{background: var(--paper);}.way.light p{color: var(--ink-2);}.ob-next{margin: 0;padding: 0 24px 24px;color: var(--ink-2);font-size: 14px;}.welcome-flash{margin: 24px 24px 0;}@media (max-width: 900px){.ob-a{grid-template-columns: 1fr;padding: 16px;}.way{padding: 22px;}}.panel-card .state{font-weight: 600;color: var(--ink);}.site-banner{background: var(--black);color: var(--white);font-size: 14px;text-align: center;border-top: 1px solid #2E2E35;}.site-banner .wrap{padding: 10px 24px;}.kinds{border: 0;padding: 0;margin: 0;display: flex;gap: 8px;flex-wrap: wrap;}.kinds legend{font-size: 14px;color: var(--ink-2);margin-bottom: 8px;}.kind input{position: absolute;opacity: 0;width: 1px;height: 1px;}.kind span{display: inline-block;border: 1px solid var(--line);border-radius: 10px;padding: 9px 14px;font-size: 15px;font-weight: 600;cursor: pointer;background: var(--white);}.kind input:checked + span{background: var(--black);color: var(--white);border-color: var(--black);}.kind input:focus-visible + span{outline: 2px solid var(--black);outline-offset: 2px;}.trap{position: absolute;left: -10000px;width: 1px;height: 1px;overflow: hidden;}.hint-text{margin: 0;font-size: 14px;color: var(--ink-2);}.closing-note{width: 100%;margin: 8px 0 0;font-size: 14px;color: #B9B9C2;}.closing-note a{color: var(--white);}.err-code{position: relative;z-index: 2;margin-top: -72px;padding-bottom: 64px;display: grid;justify-items: center;gap: 4px;text-align: center;}.err-code b{font-family: var(--mono);font-weight: 500;font-size: clamp(56px,8vw,88px);line-height: 1;letter-spacing: -0.04em;color: var(--ink);}.err-code span{font-size: 14px;color: var(--ink-3);}.auth-form{display: grid;gap: 18px;}.auth-form .btn{justify-self: start;}.field .hint{color: var(--ink-3);font-size: 13px;}.oauth{display: grid;grid-template-columns: 1fr 1fr;gap: 8px;}.oauth form{display: grid;}.form-card .oauth-btn{justify-self: stretch;justify-content: center;gap: 10px;}.oauth-btn svg.i{width: 18px;height: 18px;flex: none;}.oauth-btn[disabled]{opacity: .45;cursor: not-allowed;}.form-card .or-line{display: flex;align-items: center;gap: 12px;color: var(--ink-3);font-size: 13px;}.or-line::before,.or-line::after{content: "";flex: 1;border-top: 1px solid var(--line);}.form-card .auth-links{display: flex;justify-content: space-between;gap: 12px;flex-wrap: wrap;font-size: 14px;}@media (max-width: 560px){.oauth{grid-template-columns: 1fr;}}.as-launch{position: fixed;z-index: 70;right: 24px;bottom: max(24px,var(--as-lift,0px));display: inline-flex;align-items: center;gap: 10px;height: 56px;padding: 0 20px 0 16px;border-radius: 14px;background: #040403;color: #FFFFFF;border: 0;font: 600 15px var(--sans);cursor: pointer;box-shadow: 0 0 0 4px #FFFFFF;}.as-launch svg.i{width: 20px;height: 20px;}.as-launch[hidden],.as-chat[hidden]{display: none;}.as-chat{position: fixed;z-index: 70;right: 24px;bottom: 24px;width: min(380px,calc(100vw - 32px));height: min(600px,calc(100vh - 48px));background: #FFFFFF;color: var(--ink);border: 1px solid var(--line);border-radius: 22px;display: flex;flex-direction: column;overflow: hidden;}.as-head{position: relative;background: #040403;color: #FFFFFF;padding: 16px 18px;overflow: hidden;}.as-mini{position: absolute;inset: 0;display: grid;grid-template-columns: repeat(12,1fr);grid-template-rows: repeat(3,1fr);gap: 4px;padding: 4px;}.as-mini i{border-radius: 6px;background: #0B0B0D;}.as-mini::after{content: "";position: absolute;inset: -100%;background: linear-gradient(135deg,transparent 46%,rgba(255,255,255,0.06) 50%,transparent 54%);pointer-events: none;}@media (prefers-reduced-motion: no-preference){.as-mini::after{animation: miniWaveAs 7s linear infinite;will-change: transform;}@keyframes miniWaveAs{from{transform: translate(-30%,-30%);}to{transform: translate(30%,30%);}}}.as-title{position: relative;z-index: 1;display: flex;justify-content: space-between;align-items: start;gap: 12px;}.as-title b{font-size: 16px;letter-spacing: -0.02em;display: block;}.as-title small{color: #B9B9C2;font-size: 13px;}.as-close{display: grid;place-items: center;background: #141417;border: 0;color: #FFFFFF;width: 36px;height: 36px;border-radius: 10px;cursor: pointer;flex: none;}.as-close svg.i{width: 16px;height: 16px;}.as-msgs{flex: 1;overflow-y: auto;padding: 16px;display: flex;flex-direction: column;gap: 10px;}.as-m{max-width: 86%;font-size: 14px;line-height: 1.5;padding: 10px 14px;border-radius: 16px;white-space: pre-wrap;overflow-wrap: anywhere;}.as-m.bot{background: var(--paper);border-top-left-radius: 6px;}.as-m.bot.err{background: #FDECEA;color: #8A1C12;}.as-m.me{align-self: flex-end;background: #040403;color: #FFFFFF;border-top-right-radius: 6px;}.as-m a{color: inherit;font-weight: 600;}.as-suggest{display: grid;gap: 6px;}.as-suggest[hidden]{display: none;}.as-suggest button{text-align: left;font: 500 14px var(--sans);background: #FFFFFF;border: 1px solid var(--line);border-radius: 12px;padding: 9px 12px;cursor: pointer;color: var(--ink);}.as-suggest button:hover{border-color: var(--ink);}.as-typing{display: inline-flex;gap: 4px;padding: 12px 14px;}.as-typing i{width: 8px;height: 8px;border-radius: 3px;background: #C9C9D3;}@media (prefers-reduced-motion: no-preference){.as-typing i{animation: asTyping 1.2s infinite;}.as-typing i:nth-child(2){animation-delay: .15s;}.as-typing i:nth-child(3){animation-delay: .3s;}@keyframes asTyping{0%,60%,100%{background: #C9C9D3;transform: translateY(0);}30%{background: #040403;transform: translateY(-4px);}}}@media (prefers-reduced-motion: no-preference){.as-w{animation: asWord .22s ease-out both;}@keyframes asWord{from{opacity: 0;}}.as-chat.as-in{animation: asIn .22s cubic-bezier(.2,.8,.2,1) both;}.as-chat.as-out{animation: asOut .16s ease-in both;}@keyframes asIn{from{opacity: 0;transform: translateY(24px);}}@keyframes asOut{to{opacity: 0;transform: translateY(16px);}}.as-chat.as-in .as-msgs > *{animation: asMsg .2s ease-out both;}.as-chat.as-in .as-msgs > :nth-child(1){animation-delay: .1s;}.as-chat.as-in .as-msgs > :nth-child(2){animation-delay: .16s;}.as-chat.as-in .as-msgs > :nth-child(n+3){animation-delay: .22s;}@keyframes asMsg{from{opacity: 0;transform: translateY(6px);}}.as-launch.as-back{animation: asBack .18s ease-out both;}@keyframes asBack{from{opacity: 0;transform: scale(.9);}}}.as-form{border-top: 1px solid var(--line);padding: 12px;display: grid;gap: 8px;}.as-row{display: flex;gap: 8px;}.as-row textarea{flex: 1;resize: none;font: 15px var(--sans);border: 1px solid var(--line);border-radius: 12px;padding: 10px 12px;min-height: 44px;max-height: 120px;color: var(--ink);background: #FFFFFF;}.as-send{display: grid;place-items: center;background: #040403;color: #FFFFFF;border: 0;border-radius: 12px;width: 44px;cursor: pointer;flex: none;}.as-send svg.i{width: 18px;height: 18px;}.as-note{font-size: 12px;color: var(--ink-2);margin: 0;}.as-note a{color: inherit;}@media (max-width: 560px){.as-launch{right: 16px;bottom: max(16px,var(--as-lift,0px));}.as-chat{right: 8px;bottom: 8px;width: calc(100vw - 16px);height: calc(100vh - 16px);}}.pw-wrap{position: relative;}.pw-wrap .input{padding-right: 52px;}.pw-toggle{position: absolute;right: 6px;top: 50%;transform: translateY(-50%);display: grid;place-items: center;width: 40px;height: 36px;border: 0;border-radius: 8px;background: none;color: var(--ink-3);cursor: pointer;}.pw-toggle:hover{color: var(--ink);background: var(--paper);}.pw-toggle[hidden]{display: none;}.pw-toggle svg.i{width: 18px;height: 18px;}.pw-toggle svg:last-child,.pw-toggle[aria-pressed="true"] svg:first-child{display: none;}.pw-toggle[aria-pressed="true"] svg:last-child{display: block;}.qr{background: #FFFFFF;border-radius: 14px;padding: 8px;justify-self: start;line-height: 0;}.qr svg{width: 200px;height: 200px;}.secret{font-family: var(--mono);font-size: 15px;letter-spacing: 0.04em;overflow-wrap: anywhere;}.code-input{font-family: var(--mono);font-size: 20px;letter-spacing: 0.12em;max-width: 220px;}.codes{list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 8px;}.codes code{display: block;font-family: var(--mono);font-size: 16px;background: var(--white);border-radius: 10px;padding: 10px 12px;}.btn-line.danger{border-color: #B3261E;color: #B3261E;}.locked{display: grid;gap: 6px;border: 1px dashed var(--line);border-radius: 14px;padding: 14px 16px;}.locked p{margin: 0;}.code-row .pkg{display: grid;gap: 6px;align-content: start;}.sev{display: inline-block;justify-self: start;font-size: 12px;font-weight: 600;border-radius: 8px;padding: 2px 8px;background: var(--paper);color: var(--ink);}.sev.critical{background: #FDECEA;color: #8A1C12;}.sev.high{background: #FFF1E0;color: #7A3E00;}.code-why{margin: 6px 0 0;color: var(--ink-2);font-size: 15px;}.code-fix{display: flex;gap: 8px;align-items: flex-start;margin: 8px 0 0;font-size: 15px;}.code-fix svg.i{flex: none;margin-top: 3px;width: 16px;height: 16px;color: #1E7A2C;}.places{list-style: none;margin: 8px 0 0;padding: 0;display: grid;gap: 8px;}.places li{display: grid;gap: 4px;}.places .where{font-family: var(--mono);font-size: 13px;color: var(--ink-2);overflow-wrap: anywhere;}.places .snip{font-family: var(--mono);font-size: 13px;background: var(--paper);border-radius: 8px;padding: 6px 10px;overflow-x: auto;white-space: pre;}.code-form{margin: 0;}.ai-note{font-size: 13px;color: var(--ink-2);}.code-dismissed{padding: 14px 22px;border-top: 1px solid var(--line);}.code-dismissed .places li{grid-template-columns: auto 1fr;column-gap: 12px;}.code-dismissed .ai-note{grid-column: 2;}.dep-found{display: flex;gap: 10px;align-items: flex-start;margin: 0;padding: 14px 22px;border-top: 1px solid var(--line);font-size: 14px;color: var(--ink-2);}.dep-found svg.i{flex: none;width: 16px;height: 16px;margin-top: 3px;}.ai-consent b{display: block;color: var(--ink);font-size: 15px;margin-bottom: 2px;}.way.dark .ai-consent b{color: var(--white);}.explain{display: grid;gap: 8px;margin-top: 8px;justify-items: start;}.explain-text{margin: 0;font-size: 15px;line-height: 1.6;white-space: pre-line;background: var(--paper);border-radius: 12px;padding: 12px 14px;max-width: 70ch;}.explain-text.err{color: #8A1C12;}.reads{border: 1px solid var(--line);border-radius: 14px;overflow: hidden;font-size: 14px;}.reads-row{display: grid;grid-template-columns: minmax(0,1.5fr) minmax(0,0.6fr) minmax(0,0.9fr);gap: 12px;align-items: center;padding: 11px 16px;border-top: 1px solid var(--line);}.reads-row:first-child{border-top: 0;}.reads-head{background: var(--paper);font-size: 13px;font-weight: 600;color: var(--ink-2);padding-block: 9px;row-gap: 6px;align-items: start;}.reads-head .rh-send{grid-row: span 2;align-self: end;}.reads-head .rh-group{grid-column: span 2;color: var(--ink);padding-bottom: 6px;border-bottom: 1px solid var(--line);}.reads .reads-head small{display: block;font-family: var(--sans);font-size: 12px;font-weight: 400;color: var(--ink-3);}.reads-row > span:first-child{display: grid;gap: 1px;min-width: 0;}.reads-row small{font-family: var(--mono);font-size: 12px;color: var(--ink-3);overflow-wrap: anywhere;}.reads .yes{display: inline-flex;align-items: center;gap: 6px;color: var(--green);font-weight: 600;}.reads .yes svg.i{width: 16px;height: 16px;flex: none;}.reads .no{color: var(--ink-2);}.way.dark .reads{border-color: #2E2E35;text-align: left;}.way.dark .reads-row{border-color: #2E2E35;}.way.dark .reads-head{background: #0F0F12;color: #8D8D96;}.way.dark .reads-head .rh-group{color: var(--white);border-color: #2E2E35;}.way.dark .reads .no,.way.dark .reads-row small{color: #8D8D96;}.way.dark .reads .yes{color: #5FCB6E;}@media (max-width: 560px){.reads-row{grid-template-columns: minmax(0,1fr) minmax(0,1fr);row-gap: 6px;}.reads-row > :first-child{grid-column: 1 / -1;}.reads-head .rh-send{grid-row: auto;}}.tabs{display: flex;gap: 4px;padding: 8px 16px 0;border-bottom: 1px solid var(--line);overflow-x: auto;scrollbar-width: none;scroll-margin-top: 80px;}.tabs::-webkit-scrollbar{display: none;}.tabs a{flex: none;display: inline-flex;align-items: center;gap: 8px;padding: 10px 12px 12px;font-size: 15px;font-weight: 500;color: var(--ink-2);text-decoration: none;border-bottom: 2px solid transparent;margin-bottom: -1px;}.tabs a:hover{color: var(--ink);}.tabs a[aria-selected="true"]{color: var(--ink);border-bottom-color: var(--ink);}.tabs .n{font-size: 12px;font-weight: 600;background: var(--paper);color: var(--ink-2);border-radius: 8px;padding: 1px 7px;font-variant-numeric: tabular-nums;}.panel{padding: 24px;scroll-margin-top: 96px;}.panel + .panel{border-top: 1px solid var(--line);}.tabbed .panel + .panel{border-top: 0;}.panel[hidden]{display: none;}.panel > .app-body{padding: 0;}.panel-note{margin: 0 0 16px;font-size: 14px;color: var(--ink-2);}.panel-empty{display: grid;gap: 14px;justify-items: start;}.panel-empty p{margin: 0;color: var(--ink-2);max-width: 62ch;}.sum{display: grid;grid-template-columns: 200px minmax(0,1fr);gap: 32px;align-items: center;}.donut{position: relative;width: 200px;height: 200px;}.donut svg{display: block;width: 100%;height: 100%;}.donut path.fix{fill: var(--red);}.donut path.check{fill: var(--amber);}.donut path.ignore{fill: var(--green);}.legend i.fix{background: var(--red);}.legend i.check{background: var(--amber);}.legend i.ignore{background: var(--green);}.donut:hover path:not(:hover){opacity: .45;}.donut-c{position: absolute;inset: 46px;display: grid;place-content: center;justify-items: center;gap: 4px;text-align: center;pointer-events: none;}.donut-c b{font-size: 38px;line-height: 1;letter-spacing: -0.045em;font-variant-numeric: tabular-nums;}.donut-c b.long{font-size: 30px;}.donut-c span{font-size: 12.5px;line-height: 1.25;color: var(--ink-2);text-wrap: balance;}.sum-r{display: grid;gap: 22px;min-width: 0;}.legend{list-style: none;margin: 0;padding: 0;display: grid;gap: 8px;}.legend li{display: grid;grid-template-columns: 12px minmax(0,1fr) auto;gap: 10px;align-items: center;font-size: 15px;}.legend i{width: 12px;height: 12px;border-radius: 4px;}.legend b{font-weight: 600;font-variant-numeric: tabular-nums;}.legend small{grid-column: 2 / -1;margin-top: -6px;font-size: 13px;line-height: 1.35;color: var(--ink-2);}:root{--sev-c: #040403;--sev-h: #33333B;--sev-m: #6E6E7D;--sev-l: #A9A9B8;--sev-n: #D9D9E3;}.s-critical{background: var(--sev-c);}.s-high{background: var(--sev-h);}.s-moderate{background: var(--sev-m);}.s-low{background: var(--sev-l);}.s-none{background: var(--sev-n);}.sev-chart h3{font-size: 13px;font-weight: 600;color: var(--ink-2);margin: 0 0 8px;}.sevbar{display: flex;gap: 2px;height: 14px;}.sevbar span{min-width: 4px;border-radius: 4px;}.sevkey{display: flex;flex-wrap: wrap;gap: 6px 18px;margin-top: 8px;font-size: 13px;color: var(--ink-2);}.sevkey span{display: inline-flex;align-items: center;gap: 6px;}.sevkey i{width: 10px;height: 10px;border-radius: 3px;}.sevkey b{color: var(--ink);font-variant-numeric: tabular-nums;}.sum-facts{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 12px;margin-top: 24px;}.sum-facts div{background: var(--paper);border-radius: 14px;padding: 14px 16px;}.sum-facts b{display: block;font-size: 22px;line-height: 1.15;letter-spacing: -0.03em;font-variant-numeric: tabular-nums;}.sum-facts b svg.i{width: 22px;height: 22px;color: var(--ink-3);}.sum-facts span{display: block;font-size: 13px;color: var(--ink-2);margin-top: 4px;}.sub{font-size: 15px;font-weight: 600;margin: 32px 0 6px;letter-spacing: -0.01em;}.steps{list-style: none;margin: 0;padding: 0;counter-reset: step;}.steps li{counter-increment: step;display: grid;grid-template-columns: 28px minmax(0,1fr) auto;gap: 12px;align-items: start;padding: 14px 0;border-top: 1px solid var(--line);}.steps li:first-child{border-top: 0;}.steps li::before{content: counter(step);width: 24px;height: 24px;display: grid;place-items: center;border-radius: 8px;background: var(--black);color: var(--white);font-size: 12px;font-weight: 600;}.steps b{display: block;font-weight: 600;font-size: 15px;overflow-wrap: anywhere;}.steps li > div > span{display: block;font-size: 14px;color: var(--ink-2);margin-top: 2px;overflow-wrap: anywhere;}.steps .prompt{white-space: pre-line;}.hyg{list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: repeat(2,minmax(0,1fr));column-gap: 32px;}.hyg li{display: grid;grid-template-columns: 22px minmax(0,1fr);gap: 10px;padding: 12px 0;border-top: 1px solid var(--line);}.hyg li:nth-child(-n+2){border-top: 0;}.hyg li > svg.i{margin-top: 2px;}.hyg li.ok > svg.i{color: var(--green);}.hyg li.warn > svg.i{color: var(--amber);}.hyg li.bad > svg.i{color: var(--red);}.hyg b{font-weight: 600;font-size: 15px;}.hyg span{display: block;font-size: 14px;color: var(--ink-2);}.hyg .snip{display: block;margin-top: 8px;font-family: var(--mono);font-size: 12.5px;background: var(--paper);border-radius: 8px;padding: 8px 10px;white-space: pre;overflow-x: auto;}.row .ver{display: flex;align-items: center;gap: 6px;flex-wrap: wrap;font-size: 13px;color: var(--ink-2);margin-top: 2px;}.row .ver b{color: var(--ink);font-weight: 500;}.row .ver svg.i{width: 14px;height: 14px;}.row .v-title{font-weight: 500;}.row .badges + .cve{margin-top: 6px;}.badge{display: inline-flex;align-items: center;gap: 6px;}.badge.dark{background: var(--black);color: var(--white);}.sev-dot{width: 7px;height: 7px;border-radius: 2px;background: var(--sev-m);}.sev-dot.critical{background: var(--sev-c);}.sev-dot.high{background: var(--sev-h);}.sev-dot.low{background: var(--sev-l);}.sum-facts a{display: inline-block;margin-top: 8px;font-size: 13px;font-weight: 600;color: var(--ink);}.hyg .act{margin-top: 10px;}@media (max-width: 760px){.panel{padding: 20px 16px;}.tabs{padding: 4px 8px 0;}.sum{grid-template-columns: minmax(0,1fr);justify-items: start;gap: 20px;}.sum-r{width: 100%;}.sum-facts{grid-template-columns: minmax(0,1fr);}.steps li{grid-template-columns: 28px minmax(0,1fr);}.steps li > .act,.steps li > span:last-child{grid-column: 2;justify-self: start;}.hyg{grid-template-columns: minmax(0,1fr);}.hyg li:nth-child(2){border-top: 1px solid var(--line);}}.code-row{align-items: start;}.cmap{display: grid;grid-template-columns: minmax(0,1fr);gap: 14px;padding: 16px 0 20px;}[data-cm-parts]{min-width: 0;}.cmap-panel{display: grid;gap: 14px;min-width: 0;}.cmap-tabs{display: flex;gap: 2px;overflow-x: auto;overflow-y: hidden;scrollbar-width: thin;border-bottom: 1px solid var(--line);}.cmap-tabs button{all: unset;flex: none;cursor: pointer;display: inline-flex;align-items: center;gap: 8px;padding: 8px 12px 10px;font-size: 14px;font-weight: 500;color: var(--ink-2);border-bottom: 2px solid transparent;margin-bottom: -1px;}.cmap-tabs button:hover{color: var(--ink);}.cmap-tabs button[aria-selected="true"]{color: var(--ink);border-bottom-color: var(--ink);}.cmap-tabs button:focus-visible{outline: 2px solid var(--ink);outline-offset: -2px;border-radius: 6px;}.cmap-tabs .n{font-size: 12px;font-weight: 600;border-radius: 8px;padding: 1px 7px;background: var(--paper);color: var(--ink-2);font-variant-numeric: tabular-nums;}.cmap-tabs .n.sev-high{background: var(--cm-high);color: var(--white);}.cmap-tabs .n.sev-critical{background: var(--cm-crit);color: var(--white);}.cmap-part{padding-top: 16px;display: grid;gap: 14px;min-width: 0;}.cmap-part[hidden]{display: none;}.cmap-part-head{margin: 0;display: flex;flex-wrap: wrap;align-items: baseline;gap: 4px 12px;}.cmap-part-head b{font-size: 16px;}.cmap-part-head span{font-family: var(--mono);font-size: 12.5px;color: var(--ink-3);overflow-wrap: anywhere;}.cmap-cards{display: grid;grid-template-columns: repeat(auto-fill,minmax(230px,1fr));gap: 10px;}.cmap-card{all: unset;box-sizing: border-box;cursor: pointer;display: grid;gap: 4px;align-content: start;padding: 14px 16px;border: 1px solid var(--line);border-radius: 10px;background: var(--white);min-width: 0;}.cmap-card:hover{border-color: var(--ink-3);}.cmap-card:focus-visible{outline: 2px solid var(--ink);outline-offset: 2px;}.cmap-card.has-issues{background: var(--paper);}.cmap-card-top{display: flex;justify-content: space-between;align-items: baseline;gap: 10px;}.cmap-card-top b{font-family: var(--mono);font-size: 14px;font-weight: 500;overflow-wrap: anywhere;}.cmap-count{flex: none;display: inline-flex;align-items: center;gap: 6px;font-size: 12.5px;font-weight: 600;}.cmap-count i{width: 10px;height: 10px;border-radius: 3px;background: var(--ink-3);}.cmap-count i.sev-high{background: var(--cm-high);}.cmap-count i.sev-critical{background: var(--cm-crit);}.cmap-card-sub{font-size: 13px;color: var(--ink-2);}.cmap-card-file{font-family: var(--mono);font-size: 12px;color: var(--ink-3);overflow-wrap: anywhere;}.cmap-card-res{font-size: 12.5px;color: var(--ink-3);margin-top: 4px;}.cmap-head h2{font-size: 18px;margin: 0 0 4px;}.cmap-head p{margin: 0;color: var(--ink-2);font-size: 14px;max-width: 80ch;}.cmap-scroll{overflow-x: auto;border: 1px solid var(--line);border-radius: 10px;background: var(--white);}.cmap-svg{display: block;max-width: 100%;height: auto;}.cm-lane{font: 600 11px var(--sans);letter-spacing: 0.06em;text-transform: uppercase;fill: var(--ink-3);}.cm-grp rect{fill: var(--paper);stroke: var(--line);}.cm-grp text{font: 500 12px var(--mono);fill: var(--ink-2);}.cm-node rect{fill: var(--white);stroke: var(--line);stroke-width: 1.2;}.cm-node .cm-t{font: 500 12.5px var(--mono);fill: var(--ink);}.cm-node .cm-s{font: 400 11px var(--sans);fill: var(--ink-3);}.cm-node.entry rect{fill: transparent;stroke: var(--ink-3);stroke-dasharray: 3 3;}.cm-node.res rect{fill: var(--black);stroke: var(--black);}.cm-node.res .cm-t{fill: var(--white);}.cm-node.res .cm-s{fill: var(--ink-3);}.cm-node.mod rect{stroke-dasharray: 2 2;}.cm-node.src rect{stroke: var(--cm-high);stroke-width: 1.5;stroke-dasharray: 4 3;}.cm-node.bad rect{stroke: var(--cm-high);stroke-width: 2;stroke-dasharray: none;}.cm-node.sev-critical rect{stroke: var(--cm-crit);}.cm-node .cm-flag{fill: var(--cm-high);stroke: none;}.cm-node.sev-critical .cm-flag{fill: var(--cm-crit);}.cm-node.sev-medium rect,.cm-node.sev-low rect{stroke: var(--ink-2);}.cm-node.sev-medium .cm-flag,.cm-node.sev-low .cm-flag{fill: var(--ink-2);}.cm-node[data-issue]{cursor: pointer;}.cm-node[data-issue]:focus{outline: none;}.cm-node[data-issue]:focus-visible rect{stroke: var(--ink);stroke-width: 2.5;}.cm-edge path{fill: none;stroke: var(--ink-3);stroke-width: 1.4;}.cm-edge.bad path{stroke: var(--cm-high);stroke-width: 2.4;}.cm-edge text{font: 400 11px var(--sans);fill: var(--ink-2);paint-order: stroke;stroke: var(--white);stroke-width: 4px;stroke-linejoin: round;}.cm-edge.bad text{fill: var(--ink);font-weight: 600;}.cm-edge.quiet text{display: none;}.cm-arrow{fill: var(--ink-3);}.cm-arrow.bad{fill: var(--cm-high);}.cm-el{transition: opacity .2s;}.cmap-svg.focus .cm-el:not(.on){opacity: .14;}.cmap-svg.focus .cm-edge.on text{display: inline;}@media (prefers-reduced-motion: reduce){.cm-el{transition: none;}}.cmap-key{display: flex;flex-wrap: wrap;gap: 6px 20px;font-size: 13px;color: var(--ink-2);}.cmap-key span{display: inline-flex;align-items: center;gap: 8px;}.cmap-key i{display: inline-block;width: 20px;height: 12px;border-radius: 4px;}.cmap-key .k-bad{border: 2px solid var(--cm-high);}.cmap-key .k-src{border: 1.5px dashed var(--cm-high);}.cmap-key .k-line{height: 3px;border-radius: 2px;background: var(--cm-high);}.cmap-key .k-res{background: var(--black);}.cmap-below{display: grid;grid-template-columns: minmax(0,300px) minmax(0,1fr);gap: 24px;align-items: start;}.cmap-picks{display: grid;gap: 2px;max-height: 420px;overflow-y: auto;}.cmap-picks button{all: unset;box-sizing: border-box;cursor: pointer;display: grid;grid-template-columns: 12px minmax(0,1fr);gap: 10px;align-items: start;padding: 9px 10px;border-radius: 10px;font-size: 14px;line-height: 1.35;border: 1px solid transparent;}.cmap-picks button small{display: block;font-family: var(--mono);font-size: 12px;color: var(--ink-3);margin-top: 2px;overflow-wrap: anywhere;}.cmap-picks button i{width: 12px;height: 12px;border-radius: 3px;margin-top: 3px;background: var(--line);}.cmap-picks button i.sev-high{background: var(--cm-high);}.cmap-picks button i.sev-critical{background: var(--cm-crit);}.cmap-picks button i.sev-medium,.cmap-picks button i.sev-low{background: var(--ink-3);}.cmap-picks button:hover,.cmap-picks button[aria-pressed="true"]{background: var(--paper);}.cmap-picks button[aria-pressed="true"]{border-color: var(--line);}.cmap-picks button:focus-visible{outline: 2px solid var(--ink);outline-offset: 1px;}.cmap-detail{min-width: 0;}.cmap-detail > div{display: grid;gap: 10px;}.cmap-detail > div[hidden]{display: none;}.cmap-detail h3{font-size: 16px;margin: 0;}.cmap-detail .snip{display: block;font-family: var(--mono);font-size: 12.5px;background: var(--paper);border-radius: 8px;padding: 8px 12px;overflow-x: auto;white-space: pre;}.cmap-detail .snip .ln{color: var(--ink-3);margin-right: 12px;user-select: none;}.cmap-detail .code-why,.cmap-detail .code-fix{margin: 0;}.cmap-sev{display: flex;gap: 10px;align-items: center;}.cmap-sev .cve{font-family: var(--mono);font-size: 12px;color: var(--ink-3);}.cmap-muted{margin: 0;color: var(--ink-2);font-size: 14px;max-width: 70ch;}.cmap-steps{list-style: none;margin: 0;padding: 0;display: grid;gap: 6px;font-size: 14px;}.cmap-steps li{display: grid;grid-template-columns: 110px minmax(0,1fr);gap: 10px;}.cmap-steps b{font-size: 12px;font-weight: 600;color: var(--ink-3);padding-top: 2px;}.cmap-steps span{font-family: var(--mono);font-size: 13px;overflow-wrap: anywhere;}.cmap-note{margin: 0;font-size: 13px;color: var(--ink-3);max-width: 90ch;}@media (max-width: 760px){.cmap-below{grid-template-columns: minmax(0,1fr);}.cmap-steps li{grid-template-columns: minmax(0,1fr);gap: 2px;}}@media print{.cmap-picks,.cmap-detail{display: none;}}.nav-feat{position: relative;}.nav-feat summary{list-style: none;cursor: pointer;display: inline-flex;align-items: center;gap: 4px;color: #B9B9C2;}.nav-feat summary::-webkit-details-marker{display: none;}.nav-feat summary:hover,.nav-feat[open] summary{color: var(--white);}.site-nav.light .nav-feat summary{color: var(--ink-2);}.site-nav.light .nav-feat summary:hover,.site-nav.light .nav-feat[open] summary{color: var(--ink);}.nav-feat summary svg.i{width: 16px;height: 16px;}.nav-feat-list{position: absolute;top: calc(100% + 14px);left: -16px;width: 380px;background: var(--white);border: 1px solid var(--line);border-radius: 16px;padding: 8px;display: grid;gap: 2px;z-index: 5;}.nav-links .nav-feat-list a,.site-nav.light .nav-links .nav-feat-list a,.nav-links .nav-feat-list a:hover{display: grid;gap: 1px;padding: 10px 12px;border-radius: 10px;text-decoration: none;color: var(--ink);}.nav-feat-list a:hover,.nav-feat-list a:focus-visible,.nav-feat-list a[aria-current]{background: var(--paper);}.nav-feat-list b{font-size: 15px;font-weight: 600;}.nav-feat-list span{font-size: 13px;color: var(--ink-2);}.nav-sheet-feat{display: grid;gap: 2px;}.nav-sheet-feat span{font-family: var(--mono);font-size: 12px;letter-spacing: 0.04em;color: #8D8D96;margin-bottom: 6px;}.nav-sheet-feat a{color: var(--white);text-decoration: none;font-size: 17px;padding: 7px 0;}@media (max-width: 900px){.nav-feat{display: none;}}.mock{height: 620px;overflow: hidden;border: 1px solid var(--line);border-radius: 18px;background: var(--white);color: var(--ink);}.app-mock > .appshell,.report-mock > .report-frame{zoom: .85;}.app-mock .appshell{min-height: 0;height: 730px;}.app-mock .aside{position: static;height: 730px;}.app-mock .appmain{height: 730px;overflow: hidden;grid-auto-rows: max-content;}.mock.report-mock{background: #EDEDF3;padding: 20px;}.mock [hidden],.demo-mock [hidden],.product .app-mock [hidden]{display: none !important;}.report-mock .sheet{margin: 0 auto;}@media (max-width: 960px){.mock.app-mock .aside{display: none;}.app-mock .appshell{grid-template-columns: minmax(0,1fr);}.app-mock .appmain{height: auto;}}@media (max-width: 560px){.mock{height: 520px;}}.product .app.app-mock{max-width: none;}.product .app .more-row{display: none;}.sheet2 .demos{align-items: stretch;padding-bottom: 64px;}.demo{display: flex;flex-direction: column;}.demo .art{flex: 1;align-content: start;}.demo-mock{zoom: .9;background: none;display: grid;gap: 12px;}.demo-mock .vlist,.demo-mock .note{margin: 0;}.demo-mock .vlist li{grid-template-columns: minmax(0,1fr);gap: 4px;border-top: 0;padding-top: 0;}.demo-mock .snip{white-space: pre-wrap;overflow: visible;}.demo-mock .cmap-detail{display: grid;gap: 18px;padding: 0;border: 0;background: none;}.demo-mock .cmap-detail > div{display: grid;gap: 8px;}.demo-mock .cmap-detail h3{margin: 0;}.demo-mock .code-row{grid-template-columns: minmax(0,1fr);gap: 6px;padding: 0 0 14px;}.demo-mock .code-row + .code-row{padding-top: 14px;}.art-foot{display: flex;align-items: center;gap: 10px;flex-wrap: wrap;margin-top: 4px;}.art-foot .cve{color: var(--ink-3);font-size: 12px;font-family: var(--mono);}.inapp{margin: 0 0 56px;background: var(--black);color: var(--white);border-radius: 22px;padding: 40px;scroll-margin-top: 88px;}.inapp-head{display: flex;justify-content: space-between;align-items: flex-start;gap: 24px 40px;margin-bottom: 28px;}.inapp .section-title{color: var(--white);margin: 0 0 12px;}.inapp .lead{color: #B9B9C2;max-width: 52ch;margin: 0;font-size: 17px;}.inapp .mock{border-color: #2E2E35;}.screens{display: flex;gap: 6px;flex: none;}.screens button{position: relative;overflow: hidden;font: inherit;font-size: 14px;font-weight: 600;border: 1px solid #2E2E35;background: transparent;color: #B9B9C2;border-radius: 10px;padding: 8px 13px;cursor: pointer;}.screens button:hover{color: var(--white);border-color: #4A4A52;}.screens button[aria-selected="true"]{background: var(--white);color: var(--black);border-color: var(--white);}.screens button.run::after{content: "";position: absolute;left: 0;bottom: 0;height: 2px;width: 100%;background: var(--black);transform-origin: left;animation: tab-run 6s linear forwards;}.inapp.paused .screens button.run::after{animation-play-state: paused;}@keyframes tab-run{from{transform: scaleX(0);}to{transform: scaleX(1);}}.mock.slide{animation: screen-in 420ms cubic-bezier(.2,.7,.2,1);}@keyframes screen-in{from{transform: translateX(48px);opacity: 0;}to{transform: none;opacity: 1;}}@media (prefers-reduced-motion: reduce){.mock.slide{animation: none;}.screens button.run::after{display: none;}}.screen-caption{color: #8D8D96;font-size: 15px;margin: 16px 0 0;max-width: 70ch;}.screen-caption a{color: var(--white);text-underline-offset: 3px;margin-left: 4px;}@media (max-width: 1120px){.inapp-head{flex-direction: column;align-items: stretch;}.screens{flex-wrap: wrap;min-width: 0;}}@media (max-width: 560px){.inapp{padding: 24px 16px;margin: 40px 0;border-radius: 16px;}.screens{flex-wrap: nowrap;overflow-x: auto;margin: 0 -16px;padding: 0 16px;scrollbar-width: none;}.screens button{flex: none;}}.fp-section{padding: 96px 0 0;}.fp-section h2{font-weight: 700;font-size: clamp(30px,3.6vw,44px);line-height: 1.08;letter-spacing: -0.04em;margin: 0 0 12px;max-width: 22ch;}.fp-section > p{color: var(--ink-2);font-size: 18px;max-width: 62ch;margin: 0 0 28px;}.fp-section .fp-note{margin: 28px 0 0;max-width: 72ch;font-size: 15px;}.fp-cols{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 32px;}.fp-cols h3{margin: 0 0 8px;font-size: 19px;letter-spacing: -0.02em;}.fp-cols p{margin: 0;color: var(--ink-2);font-size: 16px;}.qa{border-top: 1px solid var(--line);}.qa-row{display: grid;grid-template-columns: minmax(0,0.9fr) minmax(0,1.4fr);gap: 32px;padding: 20px 0;border-bottom: 1px solid var(--line);}.qa-row h4{margin: 0;font-size: 17px;letter-spacing: -0.015em;}.qa-row p{margin: 0;color: var(--ink-2);font-size: 16px;}.qa-row p code{display: inline-block;margin: 0 6px 6px 0;padding: 2px 8px;border: 1px solid var(--line);border-radius: 6px;background: var(--paper);color: var(--ink);font-family: var(--mono);font-size: 13.5px;}.faq details{border-bottom: 1px solid var(--line);padding: 16px 0;}.faq details:first-of-type{border-top: 1px solid var(--line);}.faq summary{cursor: pointer;font-weight: 600;font-size: 17px;list-style: none;display: flex;justify-content: space-between;gap: 16px;}.faq summary::-webkit-details-marker{display: none;}.faq summary::after{content: "+";color: var(--ink-3);font-weight: 400;}.faq details[open] summary::after{content: "\2212";}.faq details p{margin: 10px 0 0;color: var(--ink-2);max-width: 70ch;}.price-line{display: flex;justify-content: space-between;align-items: center;gap: 20px;flex-wrap: wrap;background: var(--black);color: var(--white);border-radius: 22px;padding: 28px 32px;margin: 96px 0;}.price-line b{font-size: 26px;letter-spacing: -0.03em;display: block;}.price-line span{color: #B9B9C2;}@media (max-width: 900px){.fp-cols{grid-template-columns: 1fr;}.qa-row{grid-template-columns: 1fr;gap: 6px;}}@media (max-width: 560px){.price-line{padding: 22px;margin: 64px 0;}}.demo-tag{display: inline-block;font: 500 12px "Google Sans Code",monospace;background: var(--paper);color: var(--ink-2);border-radius: 8px;padding: 3px 8px;margin: 0 0 10px;}.triage{padding: 64px 0 32px;}.nx-h{font-weight: 700;font-size: clamp(28px,3.4vw,42px);line-height: 1.1;letter-spacing: -0.04em;margin: 0 0 12px;max-width: 26ch;color: var(--black);}.nx-lead{color: var(--ink-2);max-width: 62ch;margin: 0 0 28px;font-size: 17px;}.log{border-top: 1px solid var(--line);font-size: 15px;}.log .row{display: grid;grid-template-columns: 150px 150px 1fr;gap: 16px;align-items: baseline;padding: 11px 0;border-bottom: 1px solid var(--line);}.log code{font: 400 13px "Google Sans Code",monospace;}.log .st{font-weight: 600;}.log .fix .st{color: #C42B1C;}.log .rej{color: var(--ink-2);}.log .rej code{text-decoration: line-through;}.log .rej .st{font-weight: 400;}.log .more{color: var(--ink-2);padding: 11px 0;margin: 0;}.bands{border-radius: 22px;overflow: hidden;margin: 0 0 40px;}.band{display: grid;grid-template-columns: minmax(200px,320px) 1fr;gap: 24px 40px;padding: 30px 36px;align-items: start;}.band:nth-child(odd){background: var(--black);color: var(--white);}.band:nth-child(even){background: var(--paper);color: var(--black);}.band h3{margin: 0;font-size: clamp(22px,2.6vw,32px);letter-spacing: -0.04em;line-height: 1.1;}.band p{margin: 0 0 14px;max-width: 46ch;}.band:nth-child(odd) p{color: #B9B9C2;}.band:nth-child(even) p{color: var(--ink-2);}.chips{display: flex;flex-wrap: wrap;gap: 8px;}.chips a{border: 1px solid currentColor;border-radius: 999px;padding: 4px 12px;font-size: 14px;color: inherit;text-decoration: none;}.chips a:hover{background: rgba(127,127,140,0.18);}.demo-lead{margin: -6px 0 14px;color: var(--ink-2);font-size: 15px;min-height: 70px;max-width: 34ch;}.demo-note{margin: 14px 0 4px;font-size: 14px;color: var(--ink-2);}.demo-note a{color: var(--black);font-weight: 600;text-decoration: underline;text-underline-offset: 3px;}.privacy.closing{text-align: left;padding: 48px 40px;margin: 24px 0 48px;border-radius: 22px;}.priv-in{position: relative;z-index: 1;}.privacy.closing h2.nx-h{color: var(--white);margin: 0 0 12px;max-width: 26ch;font-size: clamp(28px,3.4vw,42px);letter-spacing: -0.04em;line-height: 1.1;text-align: left;}.privacy .nx-lead{color: #B9B9C2;}.nx-grid{display: grid;gap: 16px;}.nx-priv{grid-template-columns: repeat(4,minmax(0,1fr));}.nx-card{background: rgba(18,18,22,0.97);border-radius: 22px;padding: 24px;min-width: 0;}.nx-card span{display: block;color: #B9B9C2;font-size: 15px;}.nx-t{display: block;font-size: 19px;font-weight: 700;letter-spacing: -0.02em;margin-bottom: 8px;color: var(--white);}.cta-sub{max-width: 52ch;margin: 12px auto 24px;color: #B9B9C2;}.pr-intro{margin: -8px 0 24px;}@media (max-width: 900px){.nx-priv{grid-template-columns: repeat(2,minmax(0,1fr));}.demo-lead{min-height: 0;}}@media (max-width: 760px){.log .row{grid-template-columns: 1fr;gap: 2px;}.band{grid-template-columns: 1fr;padding: 24px 20px;}}@media (max-width: 640px){.nx-priv{grid-template-columns: minmax(0,1fr);}.privacy.closing{padding: 32px 20px;}}
