.v3{--v3-blue-50:#ecf9fe;--v3-blue-100:#cef0fd;--v3-blue-200:#9ee2fa;--v3-blue-300:#64d0f7;--v3-blue-400:#29bff4;--v3-blue-500:#13b8f3;--v3-blue-600:#0a96c7;--v3-blue-700:#08749b;--v3-blue-800:#065673;--v3-blue-900:#043c50;--v3-blue-ink:#08749b;--v3-coral:#ee766c;--v3-coral-dk:#b43a30;--v3-gold:#edb427;--v3-gold-dk:#8c6306;--v3-green:#169e73;--v3-green-dk:#0f7355;--v3-charcoal:#252521;--v3-ink:#33332e;--v3-slate:#6b6b62;--v3-mist:#a9a99e;--v3-line:#e4e2d8;--v3-paper:#f4f2e9;--v3-cloud:#fbfaf5;--v3-white:#fff;--v3-r-sm:8px;--v3-r-md:14px;--v3-r-lg:22px;--v3-r-xl:34px;--v3-r-pill:999px;--v3-sh-1:0 1px 2px #043c500f, 0 1px 1px #043c500a;--v3-sh-2:0 6px 16px -6px #043c5024, 0 2px 6px -2px #043c5014;--v3-sh-3:0 22px 48px -16px #08749b4d, 0 8px 18px -8px #043c501f;--v3-sh-glow:0 0 0 4px var(--v3-blue-100), 0 14px 30px -10px #13b8f380;--v3-maxw:1120px;font-family:var(--font-v3-body), "Hanken Grotesk", system-ui, sans-serif;color:var(--v3-charcoal);background:var(--v3-cloud);-webkit-font-smoothing:antialiased;min-height:100dvh;line-height:1.6;position:relative}:is(html:has(.v3),body:has(.v3)){overflow-x:hidden;background:var(--v3-cloud)!important;color:var(--v3-charcoal)!important}.v3>main{padding-bottom:72px}.v3:before{content:"";z-index:0;pointer-events:none;background-image:radial-gradient(#08749b1a 1px,#0000 1px);background-size:26px 26px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 38%);mask-image:linear-gradient(#000,#0000 38%)}.v3 ::selection{background:var(--v3-blue-200);color:var(--v3-blue-900)}.v3-wrap{max-width:var(--v3-maxw);z-index:1;margin:0 auto;padding:0 28px;position:relative}.v3-section{padding:96px 0;position:relative}.v3-section--paper{background:var(--v3-paper)}.v3 .v3-font-display{font-family:var(--font-v3-display), "Bricolage Grotesque", system-ui, sans-serif;letter-spacing:-.025em}.v3 .v3-font-body{font-family:var(--font-v3-body), "Hanken Grotesk", system-ui, sans-serif}.v3 .v3-font-logo{font-family:var(--font-v3-logo), "Baloo 2", cursive;letter-spacing:-.04em}.v3 .v3-font-mono{font-family:var(--font-v3-mono), "JetBrains Mono", ui-monospace, monospace}.v3-nav{z-index:50;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--v3-line);background:#fbfaf5c7;position:sticky;top:0}.v3-nav__in{max-width:var(--v3-maxw);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:14px 28px;display:flex}.v3-nav__logo{align-items:center;gap:4px;line-height:1;text-decoration:none;transition:opacity .2s;display:inline-flex}.v3-nav__logo:hover{opacity:.92}.v3-biologo--bob svg[data-bob=true] [data-piece=dot]{transform-box:fill-box;transform-origin:50%;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}.v3-biologo--bob:hover svg[data-bob=true] [data-piece=dot]{transform:translateY(-12%)scale(1.08)}@media (prefers-reduced-motion:reduce){.v3-biologo--bob svg[data-bob=true] [data-piece=dot]{transition:none}.v3-biologo--bob:hover svg[data-bob=true] [data-piece=dot]{transform:none}}.v3-nav__logo-text{font-family:var(--font-v3-body), "Hanken Grotesk", sans-serif;letter-spacing:.08em;color:var(--v3-charcoal);text-transform:lowercase;align-items:baseline;gap:5px;font-size:15px;font-weight:700;display:inline-flex;position:relative;top:1px}.v3-nav__logo-text:before{content:"·";color:var(--v3-blue-500);font-size:1.4em;font-weight:800;line-height:.5;position:relative;top:-.05em}.v3-nav__links{align-items:center;gap:26px;display:flex}.v3-nav__links a{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;text-transform:uppercase;letter-spacing:.08em;color:var(--v3-slate);font-size:12px;text-decoration:none;transition:color .2s}.v3-nav__links a:hover,.v3-nav__links a[aria-current=page]{color:var(--v3-blue-ink)}.v3-nav__back{border:1px solid var(--v3-line);border-radius:var(--v3-r-pill);background:var(--v3-white);margin-left:10px;padding:5px 12px;transition:all .2s;color:var(--v3-slate)!important}.v3-nav__back:hover{border-color:var(--v3-blue-300);background:var(--v3-blue-50);color:var(--v3-blue-700)!important}@media (max-width:760px){.v3-nav__links{display:none}}.v3-nav__burger{border:1px solid var(--v3-line);color:var(--v3-charcoal);border-radius:var(--v3-r-sm);cursor:pointer;background:0 0;padding:6px 8px;transition:background .15s,border-color .15s;display:none}.v3-nav__burger:hover{background:var(--v3-blue-50);border-color:var(--v3-blue-300);color:var(--v3-blue-700)}@media (max-width:760px){.v3-nav__burger{justify-content:center;align-items:center;display:inline-flex}}.v3-drawer{z-index:60;-webkit-backdrop-filter:blur(6px);opacity:0;visibility:hidden;background:#2525216b;justify-content:flex-end;transition:opacity .25s,visibility .25s;display:flex;position:fixed;inset:0}.v3-drawer[data-open=true]{opacity:1;visibility:visible}.v3-drawer__panel{background:var(--v3-cloud);flex-direction:column;gap:22px;width:min(360px,100%);height:100%;padding:18px;transition:transform .3s cubic-bezier(.2,.7,.3,1);display:flex;overflow-y:auto;transform:translate(100%);box-shadow:-20px 0 60px -20px #043c5059}.v3-drawer[data-open=true] .v3-drawer__panel{transform:translate(0)}.v3-drawer__head{border-bottom:1px solid var(--v3-line);justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}.v3-drawer__close{border:1px solid var(--v3-line);border-radius:var(--v3-r-sm);cursor:pointer;color:var(--v3-charcoal);background:0 0;padding:6px 8px;transition:background .15s,border-color .15s}.v3-drawer__close:hover{background:var(--v3-blue-50);border-color:var(--v3-blue-300);color:var(--v3-blue-700)}.v3-drawer__links{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.v3-drawer__links a{border-radius:var(--v3-r-md);font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.015em;color:var(--v3-charcoal);padding:14px 16px;font-size:20px;font-weight:700;text-decoration:none;transition:background .15s,color .15s;display:block}.v3-drawer__links a:hover,.v3-drawer__links a[aria-current=page]{background:var(--v3-blue-50);color:var(--v3-blue-700)}@media (prefers-reduced-motion:reduce){.v3-drawer,.v3-drawer__panel{transition:none}}.v3-hero{padding:120px 0 90px;position:relative;overflow:hidden}.v3-eyebrow{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.22em;text-transform:uppercase;color:var(--v3-blue-ink);align-items:center;gap:10px;font-size:12px;display:inline-flex}.v3-eyebrow:before{content:"";background:var(--v3-blue-500);width:30px;height:2px}.v3-hero h1{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.035em;color:var(--v3-charcoal);text-wrap:balance;margin:22px 0 18px;font-size:clamp(42px,8vw,86px);font-weight:800;line-height:.98}.v3-hero h1 .v3-accent{color:var(--v3-blue-600)}.v3-hero .v3-lede{max-width:560px;color:var(--v3-ink);text-wrap:pretty;font-size:clamp(17px,2.4vw,22px)}.v3-hero__meta{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.v3-blob{filter:blur(8px);opacity:.5;z-index:0;pointer-events:none;border-radius:50%;position:absolute}.v3-blob.v3-blob--1{background:radial-gradient(circle at 30% 30%, var(--v3-blue-300), var(--v3-blue-500) 70%);opacity:.22;width:300px;height:300px;animation:11s ease-in-out infinite v3-float;top:-30px;right:-60px}.v3-blob.v3-blob--2{background:var(--v3-coral);opacity:.14;width:160px;height:160px;animation:9s ease-in-out infinite reverse v3-float;top:160px;right:240px}.v3-blob.v3-blob--3{background:var(--v3-gold);opacity:.16;width:120px;height:120px;animation:13s ease-in-out infinite v3-float;top:280px;right:60px}@keyframes v3-float{0%,to{transform:translate(0)}50%{transform:translate(-18px,22px)}}@media (prefers-reduced-motion:reduce){.v3-blob{animation:none!important}}.v3-sec-head{max-width:680px;margin-bottom:48px}.v3-sec-head__num{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-blue-ink);letter-spacing:.1em;font-size:13px}.v3-sec-head h2{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.025em;color:var(--v3-charcoal);text-wrap:balance;margin:8px 0 14px;font-size:clamp(30px,5vw,46px);font-weight:700;line-height:1.02}.v3-sec-head p{color:var(--v3-ink);text-wrap:pretty;font-size:17px}.v3-chip{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-pill);border:1px solid var(--v3-line);background:var(--v3-white);color:var(--v3-slate);align-items:center;padding:8px 14px;font-size:12px;display:inline-flex}.v3-chip__dot{vertical-align:middle;border-radius:50%;width:9px;height:9px;margin-right:7px;display:inline-block}.v3-pill{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-pill);align-items:center;padding:5px 13px;font-size:12px;font-weight:500;display:inline-flex}.v3-pill--blue{background:var(--v3-blue-50);color:var(--v3-blue-700)}.v3-pill--green{color:var(--v3-green-dk);background:#e3f5ec}.v3-pill--gold{color:var(--v3-gold-dk);background:#fcf2d8}.v3-pill--coral{color:var(--v3-coral-dk);background:#fbe6e3}.v3-btn{font-family:var(--font-v3-body), "Hanken Grotesk", sans-serif;border-radius:var(--v3-r-pill);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:15px;font-weight:600;line-height:1;text-decoration:none;transition:all .2s;display:inline-flex}.v3-btn--primary{background:var(--v3-blue-ink);color:#fff}.v3-btn--primary:hover{background:var(--v3-blue-600);box-shadow:var(--v3-sh-glow);transform:translateY(-2px)}.v3-btn--ghost{color:var(--v3-blue-700);border:1.5px solid var(--v3-blue-300);background:0 0}.v3-btn--ghost:hover{background:var(--v3-blue-50);border-color:var(--v3-blue-500)}.v3-btn--dark{background:var(--v3-charcoal);color:var(--v3-paper)}.v3-btn--dark:hover{background:var(--v3-ink)}.v3-btn--coral{background:var(--v3-coral-dk);color:#fff}.v3-btn--coral:hover{filter:brightness(1.1)}.v3-panel{background:var(--v3-white);border:1px solid var(--v3-line);border-radius:var(--v3-r-lg);box-shadow:var(--v3-sh-1);padding:28px}.v3-feature-card{border-radius:var(--v3-r-lg);border:1px solid var(--v3-line);background:var(--v3-white);transition:transform .25s,box-shadow .25s;overflow:hidden}.v3-feature-card:hover{box-shadow:var(--v3-sh-2);transform:translateY(-4px)}.v3-feature-card__top{background:linear-gradient(135deg, var(--v3-blue-500), var(--v3-blue-700));color:#fff;padding:28px;position:relative;overflow:hidden}.v3-feature-card__top:after{content:"";background:#ffffff1f;border-radius:50%;width:130px;height:130px;position:absolute;bottom:-40px;right:-30px}.v3-feature-card__ico{font-family:var(--font-v3-logo), "Baloo 2", cursive;font-size:30px;font-weight:800}.v3-feature-card__top h5{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;margin-top:8px;font-size:22px;font-weight:700;position:relative}.v3-feature-card__body{color:var(--v3-ink);padding:22px 24px;font-size:14.5px}.v3 :focus-visible{outline:2px solid var(--v3-blue-500);outline-offset:3px;border-radius:4px}.v3-reveal{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1);transform:translateY(22px)}.v3-reveal.is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.v3-reveal{opacity:1;transition:none;transform:none}}.v3-timeline{flex-direction:column;gap:28px;display:flex}.v3-timeline__entry{grid-template-columns:40px 1fr;gap:18px;display:grid;position:relative}.v3-timeline__rail{flex-direction:column;align-items:center;display:flex}.v3-timeline__dot{background:var(--v3-blue-50);border:1.5px solid var(--v3-blue-300);width:32px;height:32px;color:var(--v3-blue-600);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.v3-timeline__entry:not(:last-child) .v3-timeline__rail:after{content:"";background:linear-gradient(180deg, var(--v3-blue-200), var(--v3-line));flex:1;width:2px;margin-top:6px}.v3-timeline__year{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.06em;color:var(--v3-blue-ink);text-transform:uppercase;margin-bottom:4px;font-size:12px}.v3-timeline__title{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.01em;color:var(--v3-charcoal);margin-bottom:6px;font-size:18px;font-weight:700}.v3-timeline__desc{color:var(--v3-ink);font-size:14.5px;line-height:1.55}.v3-stat-row{border-bottom:1px solid var(--v3-line);align-items:center;gap:12px;padding:10px 0;display:flex}.v3-stat-row:last-child{border-bottom:none}.v3-stat-row__label{color:var(--v3-slate);flex:1;font-size:14px}.v3-stat-row__value{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-charcoal);font-size:14px;font-weight:700}.v3-stat-row__icon{width:16px;height:16px;color:var(--v3-blue-500);flex-shrink:0}.v3-skills{flex-wrap:wrap;gap:6px;display:flex}.v3-skill{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-sm);background:var(--v3-blue-50);color:var(--v3-blue-700);border:1px solid color-mix(in srgb, var(--v3-blue-500) 18%, transparent);padding:5px 10px;font-size:11px}.v3-page-head{padding:96px 0 56px;position:relative;overflow:hidden}.v3-page-head__lockup{text-align:center;z-index:1;position:relative}.v3-page-head h1{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.03em;color:var(--v3-charcoal);text-wrap:balance;margin:14px 0 12px;font-size:clamp(38px,6vw,64px);font-weight:800;line-height:1}.v3-page-head h1 .v3-accent{color:var(--v3-blue-600)}.v3-page-head__lede{color:var(--v3-ink);text-wrap:pretty;max-width:620px;margin:0 auto;font-size:clamp(16px,2vw,19px)}.v3-page-head__loc{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);letter-spacing:.04em;margin-top:10px;font-size:12px}.v3-twocol{grid-template-columns:1fr 320px;align-items:start;gap:40px;display:grid}@media (max-width:880px){.v3-twocol{grid-template-columns:1fr;gap:28px}}.v3-twocol__side{flex-direction:column;gap:20px;display:flex;position:sticky;top:84px}@media (max-width:880px){.v3-twocol__side{position:static}}.v3-panel-head{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--v3-slate);margin-bottom:14px;font-size:11px}.v3-prose{color:var(--v3-ink);text-wrap:pretty;font-size:16.5px;line-height:1.7}.v3-service{border-radius:var(--v3-r-lg);border:1px solid var(--v3-line);background:var(--v3-white);box-shadow:var(--v3-sh-1);padding:28px;transition:transform .25s,box-shadow .25s,border-color .25s}.v3-service:hover{box-shadow:var(--v3-sh-2);border-color:var(--v3-blue-300);transform:translateY(-3px)}.v3-service__head{align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.v3-service__num{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-blue-ink);letter-spacing:.1em;padding-top:8px;font-size:11px}.v3-service h3{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.015em;color:var(--v3-charcoal);margin-bottom:4px;font-size:22px;font-weight:700}.v3-service__desc{color:var(--v3-ink);margin-bottom:16px;font-size:15.5px;line-height:1.6}.v3-service__examples{color:var(--v3-slate);border-top:1px dashed var(--v3-line);margin-top:14px;padding-top:14px;font-size:13.5px}.v3-service__examples strong{color:var(--v3-charcoal);font-weight:600}.v3-price{border-radius:var(--v3-r-lg);border:1px solid var(--v3-line);background:var(--v3-white);box-shadow:var(--v3-sh-1);flex-direction:column;gap:8px;padding:26px 24px;transition:transform .25s,box-shadow .25s;display:flex}.v3-price:hover{box-shadow:var(--v3-sh-2);transform:translateY(-3px)}.v3-price h3{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);font-size:19px;font-weight:700}.v3-price__desc{color:var(--v3-slate);font-size:13.5px}.v3-price__range{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-blue-600);letter-spacing:-.01em;margin:8px 0 4px;font-size:22px;font-weight:700}.v3-price__ideal{color:var(--v3-slate);border-top:1px solid var(--v3-line);margin-top:auto;padding-top:12px;font-size:12.5px}.v3-steps{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;display:grid}.v3-step{text-align:center;padding:6px}.v3-step__num{background:linear-gradient(135deg, var(--v3-blue-50), var(--v3-blue-100));border:1.5px solid var(--v3-blue-300);width:48px;height:48px;color:var(--v3-blue-700);font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 14px;font-size:20px;font-weight:800;display:flex}.v3-step h3{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);margin-bottom:6px;font-size:16px;font-weight:700}.v3-step__desc{color:var(--v3-ink);font-size:13.5px;line-height:1.5}.v3-diff{background:var(--v3-white);border-radius:var(--v3-r-md);border:1px solid var(--v3-line);grid-template-columns:4px 1fr;gap:18px;padding:16px 18px 16px 0;display:grid;overflow:hidden}.v3-diff__bar{background:var(--v3-blue-500);width:4px}.v3-diff--coral .v3-diff__bar{background:var(--v3-coral)}.v3-diff--gold .v3-diff__bar{background:var(--v3-gold)}.v3-diff--green .v3-diff__bar{background:var(--v3-green)}.v3-diff h3{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);margin:8px 0 4px;font-size:16px;font-weight:700}.v3-diff p{color:var(--v3-ink);padding-bottom:8px;padding-right:6px;font-size:14px;line-height:1.55}.v3-chips{flex-wrap:wrap;gap:6px;display:flex}.v3-chip-sm{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-sm);background:var(--v3-blue-50);color:var(--v3-blue-700);border:1px solid color-mix(in srgb, var(--v3-blue-500) 18%, transparent);padding:4px 10px;font-size:11px}.v3-project-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;display:grid}.v3-pcard{border-radius:var(--v3-r-lg);border:1px solid var(--v3-line);background:var(--v3-white);box-shadow:var(--v3-sh-1);color:inherit;flex-direction:column;height:100%;text-decoration:none;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;overflow:hidden}.v3-pcard:hover{box-shadow:var(--v3-sh-2);border-color:color-mix(in srgb, var(--v3-pcard-color,var(--v3-blue-500)) 35%, var(--v3-line));transform:translateY(-3px)}.v3-pcard__bar{background:var(--v3-pcard-color,var(--v3-blue-500));height:3px}.v3-pcard__body{flex-direction:column;flex:1;gap:12px;padding:20px 22px;display:flex}.v3-pcard__row{justify-content:space-between;align-items:center;gap:8px;display:flex}.v3-pcard__cat{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;text-transform:uppercase;letter-spacing:.12em;border-radius:var(--v3-r-sm);background:color-mix(in srgb, var(--v3-pcard-color,var(--v3-blue-500)) 10%, transparent);color:var(--v3-pcard-ink,var(--v3-blue-ink));padding:4px 10px;font-size:10.5px;font-weight:600}.v3-pcard__research{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-pill);color:var(--v3-gold-dk);background:#fcf2d8;padding:3px 9px;font-size:10px}.v3-pcard__title{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.015em;color:var(--v3-charcoal);font-size:19px;font-weight:700;line-height:1.2;transition:color .2s}.v3-pcard:hover .v3-pcard__title{color:var(--v3-pcard-color,var(--v3-blue-500))}.v3-pcard__tagline{color:var(--v3-ink);flex:1;font-size:14px;line-height:1.5}.v3-pcard__tech{flex-wrap:wrap;gap:5px;display:flex}.v3-pcard__chip{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-sm);background:var(--v3-paper);color:var(--v3-slate);border:1px solid var(--v3-line);padding:3px 8px;font-size:10.5px}.v3-pcard__more{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);align-self:center;padding:3px 4px;font-size:10.5px}.v3-pcard__spark{opacity:.85;margin-top:8px;margin-bottom:2px;padding:4px 0;transition:opacity .2s}.v3-pcard:hover .v3-pcard__spark{opacity:1}.v3-pcard__foot{border-top:1px solid var(--v3-line);flex-wrap:wrap;align-items:center;gap:8px;padding-top:12px;display:flex}.v3-pcard__source{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-pill);background:var(--v3-blue-50);color:var(--v3-blue-700);border:1px solid color-mix(in srgb, var(--v3-blue-500) 18%, transparent);align-items:center;gap:4px;padding:3px 8px;font-size:10px;display:inline-flex}.v3-pcard__msgs{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);margin-left:auto;font-size:11px}.v3-filter{flex-wrap:wrap;gap:8px;padding:4px 0;display:flex}@media (max-width:760px){.v3-filter{scrollbar-width:none;flex-wrap:nowrap;margin:0 -28px;padding-bottom:8px;padding-left:28px;padding-right:28px;overflow-x:auto}.v3-filter::-webkit-scrollbar{display:none}}.v3-filter button{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.04em;border-radius:var(--v3-r-pill);border:1.5px solid var(--v3-line);background:var(--v3-white);color:var(--v3-slate);cursor:pointer;white-space:nowrap;flex-shrink:0;padding:8px 16px;font-size:12px;font-weight:600;transition:all .2s}.v3-filter button:hover{border-color:var(--v3-blue-300);color:var(--v3-blue-700)}.v3-filter button[data-active=true]{background:var(--v3-charcoal);color:var(--v3-paper);border-color:var(--v3-charcoal)}.v3-filter button[data-active=true][data-color]{background:color-mix(in srgb, var(--v3-filter-color,var(--v3-blue-500)) 14%, transparent);color:var(--v3-filter-color,var(--v3-blue-500));border-color:var(--v3-filter-color,var(--v3-blue-500))}.v3-filter button .v3-filter__count{color:var(--v3-slate);margin-left:4px;font-weight:500}.v3-filter button[data-active=true] .v3-filter__count{color:color-mix(in srgb, var(--v3-paper) 75%, transparent)}.v3-empty{text-align:center;color:var(--v3-slate);padding:80px 20px;font-size:15px}.v3-status{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;text-transform:lowercase;letter-spacing:.05em;border-radius:var(--v3-r-pill);border:1px solid;align-items:center;gap:7px;padding:4px 11px;font-size:11px;font-weight:600;display:inline-flex}.v3-status__dot{border-radius:50%;width:7px;height:7px}.v3-status--active{color:var(--v3-green-dk);border-color:color-mix(in srgb, var(--v3-green) 28%, transparent);background:#e3f5ec}.v3-status--active .v3-status__dot{background:var(--v3-green);animation:2s ease-in-out infinite v3-pulse}.v3-status--paused{color:var(--v3-gold-dk);border-color:color-mix(in srgb, var(--v3-gold) 32%, transparent);background:#fcf2d8}.v3-status--paused .v3-status__dot{background:var(--v3-gold)}.v3-status--completed{background:var(--v3-blue-50);color:var(--v3-blue-700);border-color:color-mix(in srgb, var(--v3-blue-500) 25%, transparent)}.v3-status--completed .v3-status__dot{background:var(--v3-blue-500)}.v3-status--archived{background:var(--v3-paper);color:var(--v3-slate);border-color:var(--v3-line)}.v3-status--archived .v3-status__dot{background:var(--v3-mist)}@keyframes v3-pulse{0%,to{opacity:1}50%{opacity:.45}}.v3-detail-meta{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.v3-detail-back{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.04em;color:var(--v3-slate);align-items:center;gap:6px;margin-bottom:18px;padding:8px 0;font-size:12px;text-decoration:none;transition:color .2s;display:inline-flex}.v3-detail-back:hover{color:var(--v3-blue-600)}.v3-detail-name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.03em;color:var(--v3-charcoal);text-wrap:balance;margin-bottom:12px;font-size:clamp(36px,5.5vw,56px);font-weight:800;line-height:1}.v3-detail-tag{color:var(--v3-ink);text-wrap:pretty;max-width:720px;font-size:clamp(17px,2vw,20px);line-height:1.45}.v3-activity{flex-direction:column;display:flex}.v3-activity__item{border-bottom:1px solid var(--v3-line);grid-template-columns:38px 1fr;gap:14px;padding:14px 0;display:grid}.v3-activity__item:last-child{border-bottom:none}.v3-activity__item:first-child{padding-top:4px}.v3-activity__icon{border-radius:var(--v3-r-sm);background:var(--v3-blue-50);border:1px solid color-mix(in srgb, var(--v3-blue-500) 18%, transparent);width:32px;height:32px;color:var(--v3-blue-600);flex-shrink:0;justify-content:center;align-items:center;display:flex}.v3-activity__icon--web{border-color:color-mix(in srgb, var(--v3-coral) 22%, transparent);color:var(--v3-coral-dk);background:#fbe6e3}.v3-activity__icon--gh{background:var(--v3-paper);border-color:var(--v3-line);color:var(--v3-slate)}.v3-activity__title{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);letter-spacing:-.01em;font-size:15px;font-weight:700}.v3-activity__desc{color:var(--v3-ink);margin-top:2px;font-size:13.5px;line-height:1.5}.v3-activity__date{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);margin-top:4px;font-size:11px}.v3-source-row{border-bottom:1px solid var(--v3-line);grid-template-columns:32px 1fr;align-items:center;gap:12px;padding:12px 0;display:grid}.v3-source-row:last-child{border-bottom:none}.v3-source-row__icon{border-radius:var(--v3-r-sm);background:var(--v3-blue-50);width:32px;height:32px;color:var(--v3-blue-600);justify-content:center;align-items:center;display:flex}.v3-source-row__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);font-size:14px;font-weight:700}.v3-source-row__detail{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);word-break:break-all;margin-top:2px;font-size:11px}.v3-method{background:var(--v3-white);border:1px solid var(--v3-line);border-radius:var(--v3-r-md);color:inherit;grid-template-columns:44px 1fr auto;align-items:center;gap:16px;padding:16px 18px;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:grid}.v3-method:hover{box-shadow:var(--v3-sh-2);border-color:var(--v3-blue-300);transform:translateY(-2px)}.v3-method__icon{border-radius:var(--v3-r-sm);background:var(--v3-blue-50);width:44px;height:44px;color:var(--v3-blue-600);flex-shrink:0;justify-content:center;align-items:center;display:flex}.v3-method--coral .v3-method__icon{color:var(--v3-coral-dk);background:#fbe6e3}.v3-method--green .v3-method__icon{color:var(--v3-green-dk);background:#e3f5ec}.v3-method--gold .v3-method__icon{color:var(--v3-gold-dk);background:#fcf2d8}.v3-method__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);letter-spacing:-.005em;font-size:15.5px;font-weight:700}.v3-method__detail{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);word-break:break-all;margin-top:2px;font-size:12.5px}.v3-method__chev{color:var(--v3-mist);transition:transform .2s,color .2s}.v3-method:hover .v3-method__chev{color:var(--v3-blue-500);transform:translate(3px)}.v3-numbered{counter-reset:v3-item;flex-direction:column;gap:18px;list-style:none;display:flex}.v3-numbered li{grid-template-columns:34px 1fr;align-items:start;gap:14px;display:grid}.v3-numbered li:before{counter-increment:v3-item;content:counter(v3-item);background:var(--v3-blue-50);border:1.5px solid var(--v3-blue-300);width:30px;height:30px;color:var(--v3-blue-700);font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;border-radius:50%;justify-content:center;align-items:center;margin-top:2px;font-size:13px;font-weight:800;display:flex}.v3-numbered__title{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);letter-spacing:-.005em;margin-bottom:3px;font-size:16px;font-weight:700}.v3-numbered__desc{color:var(--v3-ink);font-size:14.5px;line-height:1.55}.v3-statbar{background:var(--v3-white);border:1px solid var(--v3-line);border-radius:var(--v3-r-lg);box-shadow:var(--v3-sh-1);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0;display:grid;overflow:hidden}.v3-statbar__cell{text-align:center;border-right:1px solid var(--v3-line);padding:26px 22px}.v3-statbar__cell:last-child{border-right:none}@media (max-width:760px){.v3-statbar__cell{border-right:none;border-bottom:1px solid var(--v3-line)}.v3-statbar__cell:last-child{border-bottom:none}}.v3-statbar__val{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.03em;color:var(--v3-statbar-color,var(--v3-blue-600));font-variant-numeric:tabular-nums;font-size:clamp(34px,5vw,48px);font-weight:800;line-height:1}.v3-statbar__lbl{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--v3-slate);margin-top:8px;font-size:11px}.v3-cathead{align-items:center;gap:14px;margin-bottom:22px;display:flex}.v3-cathead__ico{border-radius:var(--v3-r-md);background:color-mix(in srgb, var(--v3-cat-color,var(--v3-blue-500)) 12%, transparent);width:44px;height:44px;color:var(--v3-cat-color,var(--v3-blue-500));border:1px solid color-mix(in srgb, var(--v3-cat-color,var(--v3-blue-500)) 22%, transparent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.v3-cathead__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.02em;color:var(--v3-charcoal);font-size:clamp(22px,3vw,28px);font-weight:700}.v3-cathead__meta{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);letter-spacing:.04em;margin-top:2px;font-size:11.5px}.v3-svc{border-radius:var(--v3-r-lg);background:var(--v3-white);border:1px solid var(--v3-line);box-shadow:var(--v3-sh-1);flex-direction:column;height:100%;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;overflow:hidden}.v3-svc:hover{box-shadow:var(--v3-sh-2);border-color:color-mix(in srgb, var(--v3-svc-color,var(--v3-blue-500)) 30%, var(--v3-line));transform:translateY(-3px)}.v3-svc__bar{background:var(--v3-svc-color,var(--v3-blue-500));height:3px}.v3-svc__body{flex-direction:column;flex:1;gap:11px;padding:18px 20px;display:flex}.v3-svc__head{justify-content:space-between;align-items:center;gap:10px;display:flex}.v3-svc__id{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;text-transform:uppercase;letter-spacing:.12em;color:var(--v3-svc-ink,var(--v3-blue-ink));font-size:10.5px;font-weight:700}.v3-svc__count{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);align-items:center;gap:4px;font-size:11px;display:inline-flex}.v3-svc__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.01em;color:var(--v3-charcoal);font-size:17px;font-weight:700;line-height:1.2}.v3-svc__desc{color:var(--v3-ink);flex:1;font-size:13.5px;line-height:1.55}.v3-svc__caps{flex-wrap:wrap;gap:5px;display:flex}.v3-svc__cap{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-sm);background:color-mix(in srgb, var(--v3-svc-color,var(--v3-blue-500)) 10%, transparent);color:var(--v3-svc-ink,var(--v3-blue-ink));border:1px solid color-mix(in srgb, var(--v3-svc-color,var(--v3-blue-500)) 22%, transparent);padding:3px 8px;font-size:10.5px}.v3-svc__auth{border-top:1px dashed var(--v3-line);font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);align-items:center;gap:6px;margin-top:auto;padding-top:10px;font-size:11px;display:inline-flex}.v3-svc__url{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-svc-ink,var(--v3-blue-ink));align-items:center;gap:4px;margin-left:auto;font-size:11px;font-weight:600;text-decoration:none;display:inline-flex}.v3-svc__url:hover{text-decoration:underline}.v3-study{border-radius:var(--v3-r-lg);background:var(--v3-white);border:1px solid var(--v3-line);box-shadow:var(--v3-sh-1);flex-direction:column;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;overflow:hidden}.v3-study:hover{box-shadow:var(--v3-sh-2);border-color:color-mix(in srgb, var(--v3-study-color,var(--v3-blue-500)) 28%, var(--v3-line));transform:translateY(-2px)}.v3-study__bar{background:var(--v3-study-color,var(--v3-blue-500));height:4px}.v3-study__body{flex-direction:column;gap:14px;padding:22px 24px;display:flex}.v3-study__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.v3-study__cat{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;text-transform:uppercase;letter-spacing:.12em;border-radius:var(--v3-r-sm);background:color-mix(in srgb, var(--v3-study-color,var(--v3-blue-500)) 10%, transparent);color:var(--v3-study-ink,var(--v3-blue-ink));padding:4px 10px;font-size:10.5px;font-weight:700}.v3-study__status{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-pill);letter-spacing:.04em;padding:3px 9px;font-size:10px}.v3-study__status--paper{color:var(--v3-green-dk);background:#e3f5ec}.v3-study__status--draft{color:var(--v3-gold-dk);background:#fcf2d8}.v3-study__date{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);font-size:11px}.v3-study__title{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.015em;color:var(--v3-charcoal);text-wrap:balance;font-size:19px;font-weight:700;line-height:1.25}.v3-study__desc{color:var(--v3-ink);font-size:14px;line-height:1.55}.v3-study__viz{border-radius:var(--v3-r-md);border:1px solid var(--v3-line);background:var(--v3-paper);margin:4px 0;overflow:hidden}.v3-study__viz img{width:100%;height:auto;display:block}.v3-study__finding{border-radius:var(--v3-r-md);border:1px solid color-mix(in srgb, var(--v3-gold) 30%, transparent);background:linear-gradient(#fcf2d8 0%,#fbfaf5 100%);padding:14px 16px}.v3-study__finding-head{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.06em;color:var(--v3-gold-dk);align-items:center;gap:8px;margin-bottom:10px;font-size:11.5px;display:flex}.v3-study__finding-head strong{text-transform:uppercase;font-weight:700}.v3-study__finding-tally{margin-left:auto;font-weight:600}.v3-study__highlights{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px;display:grid}.v3-study__hl{border:1px solid var(--v3-line);border-radius:var(--v3-r-sm);font-family:var(--font-v3-mono), "JetBrains Mono", monospace;background:#ffffffb3;padding:8px 10px;font-size:11px}.v3-study__hl-lbl{color:var(--v3-charcoal);margin-bottom:2px;font-weight:700}.v3-study__hl-meta{color:var(--v3-slate);font-size:10.5px}.v3-study__hl-verdict{text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-size:9.5px;font-weight:800}.v3-study__hl-verdict--strong{color:var(--v3-coral-dk)}.v3-study__hl-verdict--mild{color:var(--v3-gold-dk)}.v3-study__actions{flex-wrap:wrap;gap:8px;display:flex}.v3-action{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-sm);background:var(--v3-white);border:1px solid;align-items:center;gap:6px;padding:7px 12px;font-size:11.5px;font-weight:600;text-decoration:none;display:inline-flex}.v3-action--pdf{border-color:var(--v3-blue-300);background:var(--v3-blue-50);color:var(--v3-blue-700)}.v3-action--pdf:hover{background:var(--v3-blue-100)}.v3-action--viz{border-color:color-mix(in srgb, var(--v3-green) 22%, transparent);color:var(--v3-green-dk);background:#e3f5ec}.v3-action--data{border-color:var(--v3-line);background:var(--v3-paper);color:var(--v3-slate)}.v3-study__refs{border-top:1px dashed var(--v3-line);margin-top:2px;padding-top:10px}.v3-study__refs summary{cursor:pointer;font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);align-items:center;gap:8px;padding:4px 0;font-size:11.5px;list-style:none;display:inline-flex}.v3-study__refs summary::-webkit-details-marker{display:none}.v3-study__refs summary:before{content:"▸";color:var(--v3-blue-500);transition:transform .2s;display:inline-block}.v3-study__refs[open] summary:before{transform:rotate(90deg)}.v3-study__refs ul{flex-direction:column;gap:8px;margin-top:10px;list-style:none;display:flex}.v3-ref{border-radius:var(--v3-r-sm);border:1px solid var(--v3-line);color:inherit;background:var(--v3-cloud);padding:10px 12px;text-decoration:none;transition:border-color .15s,background .15s;display:block}.v3-ref:hover{border-color:var(--v3-blue-300);background:var(--v3-blue-50)}.v3-ref__title{color:var(--v3-charcoal);align-items:center;gap:6px;font-size:12.5px;font-weight:600;line-height:1.35;display:flex}.v3-ref__meta{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);margin-top:3px;font-size:10.5px}.v3-license{border-radius:var(--v3-r-xl);background:linear-gradient(135deg, var(--v3-blue-700) 0%, var(--v3-blue-500) 100%);color:#fff;box-shadow:var(--v3-sh-3);padding:32px 36px;position:relative;overflow:hidden}.v3-license:before{content:"";pointer-events:none;background-image:radial-gradient(#ffffff2e 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(135deg,#000 0%,#0000 70%);mask-image:linear-gradient(135deg,#000 0%,#0000 70%)}.v3-license:after{content:"";pointer-events:none;background:#ffffff14;border-radius:50%;width:260px;height:260px;position:absolute;bottom:-100px;right:-60px}.v3-license__head{z-index:1;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex;position:relative}.v3-license__brand{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.22em;text-transform:uppercase;opacity:.85;font-size:11px}.v3-license__class{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;border-radius:var(--v3-r-pill);letter-spacing:.06em;background:#ffffff2e;border:1px solid #fff6;padding:4px 14px;font-size:22px;font-weight:800}.v3-license__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.025em;z-index:1;font-size:clamp(30px,4vw,44px);font-weight:800;line-height:1;position:relative}.v3-license__role{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.06em;opacity:.85;z-index:1;margin-top:6px;font-size:13px;position:relative}.v3-license__grid{z-index:1;border-top:1px solid #ffffff38;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px;margin-top:24px;padding-top:22px;display:grid;position:relative}.v3-license__stat{flex-direction:column;display:flex}.v3-license__stat-lbl{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.18em;text-transform:uppercase;opacity:.72;font-size:10.5px}.v3-license__stat-val{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:4px;font-size:26px;font-weight:800}.v3-license__stat-sub{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;opacity:.7;margin-top:2px;font-size:11px}.v3-license__meta{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;opacity:.7;z-index:1;border-top:1px dashed #ffffff38;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:18px;padding-top:18px;font-size:11px;display:flex;position:relative}.v3-tabs{background:var(--v3-white);border:1px solid var(--v3-line);border-radius:var(--v3-r-pill);box-shadow:var(--v3-sh-1);scrollbar-width:none;gap:4px;padding:4px;display:flex;overflow-x:auto}.v3-tabs::-webkit-scrollbar{display:none}.v3-tabs button{min-width:92px;font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--v3-slate);border-radius:var(--v3-r-pill);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex:1;padding:9px 16px;font-size:12px;font-weight:600;transition:all .2s}.v3-tabs button:hover{color:var(--v3-blue-700)}.v3-tabs button[data-active=true]{background:var(--v3-blue-ink);color:#fff}.v3-heatmap{background:var(--v3-cloud);border-radius:var(--v3-r-md);border:1px solid var(--v3-line);grid-template-columns:repeat(auto-fit,minmax(14px,1fr));gap:4px;padding:14px;display:grid}@media (min-width:760px){.v3-heatmap{grid-template-columns:repeat(34,1fr)}}.v3-heatmap__cell{aspect-ratio:1;background:var(--v3-line);border-radius:3px;position:relative}.v3-heatmap__cell[data-i="1"]{background:var(--v3-blue-100)}.v3-heatmap__cell[data-i="2"]{background:var(--v3-blue-300)}.v3-heatmap__cell[data-i="3"]{background:var(--v3-blue-500)}.v3-heatmap__cell[data-i="4"]{background:var(--v3-blue-700)}.v3-heatmap__legend{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);align-items:center;gap:6px;margin-top:12px;font-size:11px;display:flex}.v3-heatmap__swatch{border-radius:2px;width:12px;height:12px}.v3-bars{background:var(--v3-cloud);border-radius:var(--v3-r-md);border:1px solid var(--v3-line);grid-template-columns:repeat(24,1fr);align-items:end;gap:3px;height:140px;padding:14px;display:grid}.v3-bars__bar{background:linear-gradient(180deg, var(--v3-blue-300), var(--v3-blue-600));border-radius:3px 3px 0 0;min-height:4px;transition:opacity .2s;position:relative}.v3-bars__bar[data-peak=true]{background:linear-gradient(180deg, var(--v3-coral), var(--v3-coral-dk))}.v3-bars__bar:hover{opacity:.75}.v3-bars__xaxis{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);text-align:center;grid-template-columns:repeat(8,1fr);margin-top:6px;font-size:10px;display:grid}.v3-score{grid-template-columns:130px 1fr 48px;align-items:center;gap:14px;padding:10px 0;display:grid}.v3-score__lbl{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);font-size:14px;font-weight:700}.v3-score__track{background:var(--v3-paper);border-radius:var(--v3-r-pill);height:8px;position:relative;overflow:hidden}.v3-score__fill{background:linear-gradient(90deg, var(--v3-blue-400), var(--v3-blue-700));border-radius:var(--v3-r-pill);height:100%;transition:width .4s ease-out}.v3-score__val{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;text-align:right;color:var(--v3-blue-700);font-size:13px;font-weight:700}.v3-mission{border-bottom:1px solid var(--v3-line);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;padding:14px 0;display:grid}.v3-mission>:first-child{min-width:0}.v3-mission:last-child{border-bottom:none}.v3-mission__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);letter-spacing:-.005em;overflow-wrap:anywhere;font-size:15.5px;font-weight:700}.v3-mission__meta{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);flex-wrap:wrap;gap:12px;margin-top:3px;font-size:11.5px;display:flex}.v3-mission__tech{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.v3-mission__chip{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-sm);background:var(--v3-paper);color:var(--v3-slate);border:1px solid var(--v3-line);padding:2px 7px;font-size:10px}.v3-mission__complexity{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-blue-600);background:var(--v3-blue-50);border-radius:var(--v3-r-pill);border:1px solid color-mix(in srgb, var(--v3-blue-500) 20%, transparent);white-space:nowrap;padding:3px 10px;font-size:11px}.v3-model{border-bottom:1px solid var(--v3-line);grid-template-columns:1fr 100px 70px;align-items:center;gap:14px;padding:12px 0;display:grid}.v3-model:last-child{border-bottom:none}.v3-model__name{flex-direction:column;min-width:0;display:flex}.v3-model__lbl{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);overflow-wrap:anywhere;font-size:14.5px;font-weight:700}.v3-model__sub{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);overflow-wrap:anywhere;margin-top:2px;font-size:11px}.v3-model__share{background:var(--v3-paper);border-radius:var(--v3-r-pill);height:8px;overflow:hidden}.v3-model__share-fill{background:linear-gradient(90deg, var(--v3-coral), var(--v3-gold));border-radius:var(--v3-r-pill);height:100%}.v3-model__prof{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;text-align:center;border-radius:var(--v3-r-sm);background:var(--v3-blue-50);color:var(--v3-blue-700);border:1px solid color-mix(in srgb, var(--v3-blue-500) 20%, transparent);text-transform:uppercase;letter-spacing:.06em;padding:4px 8px;font-size:10.5px;font-weight:600}.v3-stylemix{grid-template-columns:1fr 1fr;gap:14px;display:grid}.v3-stylemix__cell{border-radius:var(--v3-r-md);border:1px solid var(--v3-line);background:var(--v3-cloud);padding:16px}.v3-stylemix__lbl{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--v3-slate);font-size:10.5px}.v3-stylemix__val{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-blue-600);letter-spacing:-.02em;margin-top:4px;font-size:32px;font-weight:800}.v3-live{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--v3-r-pill);border:1px solid;align-items:center;gap:8px;padding:6px 12px;font-size:11.5px;font-weight:600;display:inline-flex}.v3-live__dot{border-radius:50%;width:8px;height:8px;animation:1.6s ease-in-out infinite v3-pulse}.v3-live--ok{color:var(--v3-green-dk);border-color:color-mix(in srgb, var(--v3-green) 28%, transparent);background:#e3f5ec}.v3-live--ok .v3-live__dot{background:var(--v3-green)}.v3-live--err{color:var(--v3-coral-dk);border-color:color-mix(in srgb, var(--v3-coral) 30%, transparent);background:#fbe6e3}.v3-live--err .v3-live__dot{background:var(--v3-coral)}.v3-freq-row{border-bottom:1px dashed var(--v3-line);flex-direction:column;gap:5px;padding:8px 0;display:flex}.v3-freq-row:last-child{border-bottom:none}.v3-freq-row__head{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;justify-content:space-between;font-size:12px;display:flex}.v3-freq-row__hz{color:var(--v3-charcoal);font-weight:600}.v3-freq-row__n{color:var(--v3-slate)}.v3-freq-row__track{background:var(--v3-paper);border-radius:var(--v3-r-pill);height:6px;overflow:hidden}.v3-freq-row__fill{background:linear-gradient(90deg, var(--v3-coral), var(--v3-coral-dk));border-radius:var(--v3-r-pill);height:100%;transition:width .5s ease-out}.v3-bandsel{background:var(--v3-paper);border-radius:var(--v3-r-md);border:1px solid var(--v3-line);flex-wrap:wrap;gap:5px;padding:4px;display:flex}.v3-bandsel button{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);border-radius:var(--v3-r-sm);cursor:pointer;background:0 0;border:none;padding:4px 10px;font-size:10.5px;font-weight:600;transition:all .15s}.v3-bandsel button:hover{color:var(--v3-coral-dk)}.v3-bandsel button[data-active=true]{background:var(--v3-coral-dk);color:#fff}.v3-soak{border-bottom:1px solid var(--v3-line);grid-template-columns:1fr auto;align-items:center;gap:16px;padding:12px 0;display:grid}.v3-soak:last-child{border-bottom:none}.v3-soak__band{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);letter-spacing:-.005em;font-size:15px;font-weight:700}.v3-soak__meta{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);margin-top:2px;font-size:11px}.v3-soak__dates{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.v3-soak__date{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;background:var(--v3-paper);color:var(--v3-slate);border:1px solid var(--v3-line);border-radius:4px;padding:2px 6px;font-size:9.5px}.v3-soak__hits{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-coral-dk);text-align:right;font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.v3-soak__hits-lbl{color:var(--v3-slate);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:500}.v3-job{border-bottom:1px solid var(--v3-line);grid-template-columns:1fr auto;align-items:center;gap:14px;padding:12px 0;display:grid}.v3-job:last-child{border-bottom:none}.v3-job__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);font-size:14px;font-weight:700}.v3-job__meta{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);flex-wrap:wrap;gap:10px;margin-top:2px;font-size:11px;display:flex}.v3-job__status{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-pill);text-transform:uppercase;letter-spacing:.08em;padding:3px 9px;font-size:10.5px;font-weight:700}.v3-job__status--running{color:var(--v3-green-dk);background:#e3f5ec}.v3-job__status--done{background:var(--v3-blue-50);color:var(--v3-blue-700)}.v3-job__status--failed{color:var(--v3-coral-dk);background:#fbe6e3}.v3-job__status--queued{color:var(--v3-gold-dk);background:#fcf2d8}.v3-job__status--other{background:var(--v3-paper);color:var(--v3-slate)}.v3-bandcard{border-radius:var(--v3-r-md);border:1px solid var(--v3-line);background:var(--v3-white);flex-direction:column;gap:6px;padding:16px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.v3-bandcard:hover{border-color:color-mix(in srgb, var(--v3-coral) 30%, transparent);box-shadow:var(--v3-sh-1)}.v3-bandcard[data-enabled=false]{opacity:.55;background:var(--v3-paper)}.v3-bandcard__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);font-size:14.5px;font-weight:700}.v3-bandcard__scanner{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.08em;color:var(--v3-coral-dk);text-transform:uppercase;font-size:10.5px}.v3-bandcard__freq{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-ink);margin-top:4px;font-size:12px}.v3-bandcard__channels{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);font-size:10.5px}.v3-bandcard__pill{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-pill);text-transform:uppercase;letter-spacing:.08em;padding:2px 7px;font-size:9px;font-weight:700;position:absolute;top:12px;right:12px}.v3-bandcard__pill--on{color:var(--v3-green-dk);background:#e3f5ec}.v3-bandcard__pill--off{background:var(--v3-paper);color:var(--v3-slate);border:1px solid var(--v3-line)}.v3-gauge{border-radius:var(--v3-r-md);border:1px solid var(--v3-line);background:var(--v3-cloud);flex-direction:column;gap:8px;padding:16px 18px;display:flex}.v3-gauge__head{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:baseline;font-size:10.5px;display:flex}.v3-gauge__target{text-transform:none;letter-spacing:0;opacity:.75;font-size:10px}.v3-gauge__val{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.025em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:800;line-height:1}.v3-gauge__val--good{color:var(--v3-green-dk)}.v3-gauge__val--ok{color:var(--v3-gold-dk)}.v3-gauge__val--bad{color:var(--v3-coral-dk)}.v3-gauge__suffix{opacity:.65;margin-left:4px;font-size:14px;font-weight:600}.v3-gauge__track{background:var(--v3-paper);border-radius:var(--v3-r-pill);border:1px solid var(--v3-line);height:8px;position:relative;overflow:hidden}.v3-gauge__fill{inset-block:0;border-radius:var(--v3-r-pill);transition:width .7s ease-out;position:absolute;left:0}.v3-gauge__fill--good{background:linear-gradient(90deg, #6ee7b7, var(--v3-green))}.v3-gauge__fill--ok{background:linear-gradient(90deg, #fcd34d, var(--v3-gold-dk))}.v3-gauge__fill--bad{background:linear-gradient(90deg, #fca5a5, var(--v3-coral-dk))}.v3-gauge__target-mark{background:var(--v3-charcoal);opacity:.55;width:2px;position:absolute;top:-2px;bottom:-2px}.v3-test{border-radius:var(--v3-r-md);border:1px solid var(--v3-line);background:var(--v3-white);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.v3-test__icon{border-radius:var(--v3-r-sm);width:36px;height:36px;color:var(--v3-green-dk);font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.04em;background:#e3f5ec;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.v3-test[data-state=warn] .v3-test__icon{color:var(--v3-gold-dk);background:#fcf2d8}.v3-test[data-state=fail] .v3-test__icon{color:var(--v3-coral-dk);background:#fbe6e3}.v3-test__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);letter-spacing:-.005em;font-size:14.5px;font-weight:700}.v3-test__meta{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);margin-top:2px;font-size:11px}.v3-test__verdict{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-pill);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;padding:4px 10px;font-size:11px;font-weight:700}.v3-test__verdict--pass{color:var(--v3-green-dk);background:#e3f5ec}.v3-test__verdict--warn{color:var(--v3-gold-dk);background:#fcf2d8}.v3-test__verdict--fail{color:var(--v3-coral-dk);background:#fbe6e3}.v3-battery{background:var(--v3-cloud);border-radius:var(--v3-r-md);border:1px solid var(--v3-line);grid-template-columns:repeat(auto-fit,minmax(14px,1fr));gap:3px;padding:12px;display:grid}@media (min-width:760px){.v3-battery{grid-template-columns:repeat(30,1fr)}}.v3-battery__cell{aspect-ratio:1/2.5;background:var(--v3-line);border-radius:3px}.v3-battery__cell--pass{background:var(--v3-green)}.v3-battery__cell--warn{background:var(--v3-gold)}.v3-battery__cell--fail{background:var(--v3-coral)}.v3-bits{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;background:var(--v3-charcoal);color:var(--v3-blue-200);border-radius:var(--v3-r-md);word-break:break-all;letter-spacing:.04em;padding:18px 20px;font-size:13px;line-height:1.6;position:relative;overflow:hidden}.v3-bits:before{content:"";pointer-events:none;background-image:repeating-linear-gradient(0deg,#0000 0 24px,#ffffff08 24px 25px);position:absolute;inset:0}.v3-bits__head{text-transform:uppercase;letter-spacing:.18em;color:#ffffff80;justify-content:space-between;margin-bottom:10px;font-size:10.5px;display:flex;position:relative}.v3-bits__head .v3-live{color:var(--v3-green);letter-spacing:.08em;background:#22c55e2e;border-color:#22c55e73}.v3-bits__stream{position:relative}.v3-cost-stat{border-radius:var(--v3-r-lg);border:1px solid var(--v3-line);background:var(--v3-white);box-shadow:var(--v3-sh-1);padding:18px 20px}.v3-cost-stat__lbl{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.18em;text-transform:uppercase;color:var(--v3-cost-color,var(--v3-blue-700));margin-bottom:10px;font-size:10.5px;font-weight:700}.v3-cost-stat__val{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.025em;color:var(--v3-charcoal);font-variant-numeric:tabular-nums;font-size:clamp(28px,4vw,36px);font-weight:800;line-height:1}.v3-cost-stat__sub{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);margin-top:6px;font-size:11px}.v3-role{border-radius:var(--v3-r-sm);background:var(--v3-cloud);border:1px solid var(--v3-line);grid-template-columns:36px 1fr auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.v3-role__count{border-radius:var(--v3-r-sm);background:color-mix(in srgb, var(--v3-coral) 12%, transparent);width:30px;height:30px;color:var(--v3-coral-dk);font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:flex}.v3-role__title{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);font-size:14px;font-weight:600}.v3-role__cost{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-charcoal);text-align:right;font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.v3-role__cost-sub{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);margin-top:2px;font-size:10px}.v3-water{flex-direction:column;gap:5px;margin-bottom:14px;display:flex}.v3-water__head{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;justify-content:space-between;font-size:12px;display:flex}.v3-water__lbl{color:var(--v3-charcoal);font-weight:600}.v3-water__val{font-variant-numeric:tabular-nums;font-weight:700}.v3-water__track{background:var(--v3-paper);border-radius:var(--v3-r-pill);height:12px;overflow:hidden}.v3-water__fill{border-radius:var(--v3-r-pill);height:100%;transition:width .8s ease-out}.v3-water__fill--coral{background:linear-gradient(90deg, var(--v3-coral), var(--v3-coral-dk))}.v3-water__fill--blue{background:linear-gradient(90deg, var(--v3-blue-400), var(--v3-blue-700))}.v3-domain{grid-template-columns:1fr auto;gap:8px;margin-bottom:12px;display:grid}.v3-domain__row{grid-column:1/-1;justify-content:space-between;align-items:baseline;display:flex}.v3-domain__lbl{color:var(--v3-charcoal);font-size:12.5px;font-weight:600}.v3-domain__score{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-blue-700);font-size:12px;font-weight:700}.v3-domain__track{background:var(--v3-paper);border-radius:var(--v3-r-pill);grid-column:1/-1;height:5px;margin-top:2px;overflow:hidden}.v3-domain__fill{border-radius:var(--v3-r-pill);height:100%;transition:width .6s ease-out}.v3-domain__fill--hi{background:linear-gradient(90deg, var(--v3-blue-400), var(--v3-blue-700))}.v3-domain__fill--mid{background:linear-gradient(90deg, var(--v3-gold), var(--v3-gold-dk))}.v3-domain__fill--lo{background:linear-gradient(90deg, var(--v3-mist), var(--v3-slate))}.v3-topproj{border-radius:var(--v3-r-sm);background:var(--v3-cloud);border:1px solid var(--v3-line);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.v3-topproj__name{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-charcoal);font-size:13px;font-weight:700}.v3-topproj__meta{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);font-size:10.5px}.v3-tl{gap:3px;height:36px;margin-top:8px;display:flex}.v3-tl__seg{border:1px solid var(--v3-line);border-radius:4px;flex:1}.v3-tl__seg--start{background:color-mix(in srgb, var(--v3-mist) 28%, transparent)}.v3-tl__seg--mid{background:color-mix(in srgb, var(--v3-coral) 24%, transparent)}.v3-tl__seg--end{background:color-mix(in srgb, var(--v3-gold) 30%, transparent)}.v3-tl__seg--ai{background:linear-gradient(135deg, var(--v3-blue-400), var(--v3-blue-700));border-color:#0000}.v3-tl__lbls{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);justify-content:space-between;margin-top:4px;font-size:10px;display:flex}.v3-study-row{border-radius:var(--v3-r-sm);background:var(--v3-cloud);border:1px solid var(--v3-line);grid-template-columns:160px 1fr;gap:12px;padding:10px 12px;display:grid}@media (max-width:600px){.v3-study-row{grid-template-columns:1fr}}.v3-study-row__src{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-blue-700);font-size:12px;font-weight:700}.v3-study-row__finding{color:var(--v3-ink);font-size:13px;line-height:1.4}.v3-term{background:var(--v3-charcoal);border-radius:var(--v3-r-lg);--v3-term-fg:var(--v3-blue-300);--v3-term-warn:var(--v3-gold);--v3-term-mute:#8b9ba0;padding:18px;position:relative;overflow:hidden;box-shadow:0 30px 60px -25px #043c5073,0 12px 24px -10px #00000040,inset 0 0 0 1px #ffffff14}.v3-term:before{content:"";border-radius:var(--v3-r-lg);pointer-events:none;z-index:1;background:radial-gradient(circle at 20% 0,#13b8f30f,#0000 50%),linear-gradient(#ffffff08,#0000 14%);position:absolute;inset:0}.v3-term:after{content:"";pointer-events:none;z-index:3;mix-blend-mode:overlay;background-image:repeating-linear-gradient(0deg,#0000 0 3px,#ffffff06 3px 4px);position:absolute;inset:0}.v3-term__chrome{z-index:2;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:0 4px;display:flex;position:relative}.v3-term__dots{gap:6px;display:flex}.v3-term__dot{border-radius:50%;width:11px;height:11px}.v3-term__dot--r{background:var(--v3-coral)}.v3-term__dot--y{background:var(--v3-gold)}.v3-term__dot--g{background:var(--v3-green)}.v3-term__title{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:#ffffff73;letter-spacing:.16em;text-transform:uppercase;font-size:11px}.v3-term__live{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-green);letter-spacing:.08em;align-items:center;gap:6px;font-size:10.5px;display:inline-flex}.v3-term__live span{background:var(--v3-green);border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite v3-pulse;box-shadow:0 0 6px #22c55e99}.v3-term__screen{border-radius:var(--v3-r-md);height:540px;max-height:70vh;font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-term-fg);text-shadow:0 0 6px #13b8f373;scrollbar-width:thin;scrollbar-color:#ffffff2e transparent;z-index:2;background:#0e1518;padding:20px 22px;font-size:13.5px;line-height:1.65;position:relative;overflow-y:auto}.v3-term__screen::-webkit-scrollbar{width:8px}.v3-term__screen::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:4px}.v3-term__line{white-space:pre-wrap;word-break:break-word}.v3-term__prompt{color:var(--v3-blue-300);-webkit-user-select:none;user-select:none;margin-right:6px}.v3-term__user{color:#fff}.v3-term__mute{color:var(--v3-term-mute)}.v3-term__warn{color:var(--v3-term-warn)}.v3-term__accent{color:var(--v3-blue-300)}.v3-term__bullet{color:var(--v3-gold)}.v3-term__cursor{background:var(--v3-blue-300);vertical-align:-2px;width:.6em;height:1em;margin-left:2px;animation:1s step-start infinite v3-blink;display:inline-block;box-shadow:0 0 8px #13b8f399}@keyframes v3-blink{0%,50%{opacity:1}50.01%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.v3-term__cursor{animation:none}.v3-term:after{display:none}}.v3-term__hint{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.04em;color:var(--v3-slate);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:14px;padding:0 4px;font-size:11px;display:flex}.v3-term__hint kbd{border:1px solid var(--v3-line);background:var(--v3-white);color:var(--v3-charcoal);border-radius:4px;padding:1px 6px;font-family:inherit;font-size:10.5px;box-shadow:0 1px #0000000a}.v3-term__entry{margin-bottom:6px}.v3-term__suggest{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.v3-term__chip{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-pill);color:var(--v3-blue-300);cursor:pointer;background:#13b8f31f;border:1px solid #13b8f347;padding:3px 9px;font-size:11px;transition:background .15s}.v3-term__chip:hover{background:#13b8f338}.v3-roles-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;display:grid}.v3-rolechip{border-radius:var(--v3-r-sm);background:var(--v3-cloud);border:1px solid var(--v3-line);font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-ink);align-items:center;gap:10px;padding:10px 14px;font-size:12px;display:flex}.v3-rolechip svg{color:var(--v3-blue-600);flex-shrink:0}.v3-callout{text-align:center;padding:36px 24px}.v3-callout__num{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:clamp(40px,7vw,72px);font-weight:800;line-height:1}.v3-callout__num--blue{color:var(--v3-blue-700)}.v3-callout__num--coral{color:var(--v3-coral-dk)}.v3-callout__word{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-slate);letter-spacing:-.01em;margin-left:6px;font-size:clamp(18px,2.6vw,26px);font-weight:600}.v3-compare{flex-direction:column;gap:18px;display:flex}.v3-compare__row .v3-compare__head{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.06em;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11.5px;display:flex}.v3-compare__lbl{text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:6px;font-weight:700;display:inline-flex}.v3-compare__meta{color:var(--v3-slate)}.v3-compare__track{background:var(--v3-paper);border-radius:var(--v3-r-pill);height:12px;overflow:hidden}.v3-compare__fill{border-radius:var(--v3-r-pill);height:100%;transition:width .8s ease-out}.v3-compare__fill--legacy{background:var(--v3-mist);opacity:.85}.v3-compare__fill--ai{background:linear-gradient(90deg, var(--v3-blue-400), var(--v3-blue-700))}.v3-cachepoint{border-radius:var(--v3-r-md);background:var(--v3-white);border:1px solid var(--v3-line);grid-template-columns:44px 1fr;align-items:start;gap:14px;padding:14px 16px;display:grid}.v3-cachepoint__icon{border-radius:var(--v3-r-sm);background:var(--v3-blue-50);width:44px;height:44px;color:var(--v3-blue-600);flex-shrink:0;justify-content:center;align-items:center;display:flex}.v3-cachepoint__icon--coral{color:var(--v3-coral-dk);background:#fbe6e3}.v3-cachepoint__lbl{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);letter-spacing:-.005em;margin-bottom:4px;font-size:14px;font-weight:700}.v3-cachepoint__big{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.025em;margin-bottom:4px;font-size:24px;font-weight:800;line-height:1.05}.v3-cachepoint__big--blue{color:var(--v3-blue-700)}.v3-cachepoint__big--coral{color:var(--v3-coral-dk)}.v3-cachepoint__desc{color:var(--v3-slate);font-size:12.5px;line-height:1.5}.v3-cycle{flex-direction:column;gap:12px;display:flex}.v3-cycle__row{grid-template-columns:32px 1fr;align-items:start;gap:12px;display:grid}.v3-cycle__ico{border-radius:var(--v3-r-sm);background:color-mix(in srgb, var(--v3-coral) 12%, transparent);width:32px;height:32px;color:var(--v3-coral-dk);border:1px solid color-mix(in srgb, var(--v3-coral) 20%, transparent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.v3-cycle__lbl{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);letter-spacing:-.005em;font-size:14px;font-weight:700}.v3-cycle__det{color:var(--v3-slate);margin-top:2px;font-size:12px}.v3-radar{flex-direction:column;align-items:center;display:flex;position:relative}.v3-radar__svg{width:100%;max-width:380px;height:auto;display:block}.v3-radar__rangebar{background:var(--v3-paper);border-radius:var(--v3-r-pill);border:1px solid var(--v3-line);gap:3px;padding:3px;display:inline-flex}.v3-radar__rangebar button{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);border-radius:var(--v3-r-pill);cursor:pointer;background:0 0;border:none;padding:5px 12px;font-size:11px;font-weight:600;transition:all .15s}.v3-radar__rangebar button[data-active=true]{background:var(--v3-blue-ink);color:#fff}.v3-radar__legend{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);flex-direction:column;gap:6px;font-size:11.5px;display:flex}.v3-radar__legend-row{align-items:center;gap:8px;display:inline-flex}.v3-radar__sw{border-radius:3px;flex-shrink:0;width:11px;height:11px}.v3-radar__detail{background:var(--v3-cloud);border:1px solid var(--v3-line);border-radius:var(--v3-r-md);font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-ink);flex-direction:column;gap:8px;padding:14px 16px;font-size:12px;display:flex}.v3-radar__detail-call{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-blue-700);letter-spacing:-.015em;font-size:17px;font-weight:800}.v3-radar__detail-sub{color:var(--v3-slate);font-size:11.5px}.v3-radar__detail-grid{color:var(--v3-slate);grid-template-columns:repeat(2,1fr);gap:8px 16px;font-size:11px;display:grid}.v3-radar__detail-grid strong{color:var(--v3-charcoal);font-weight:700}.v3-actable{border-collapse:collapse;width:100%;font-family:var(--font-v3-mono), "JetBrains Mono", monospace}.v3-actable th{text-align:left;letter-spacing:.12em;text-transform:uppercase;color:var(--v3-slate);border-bottom:1px solid var(--v3-line);background:var(--v3-paper);padding:8px 10px;font-size:10.5px;font-weight:700}.v3-actable td{border-bottom:1px solid var(--v3-line);color:var(--v3-ink);font-variant-numeric:tabular-nums;padding:8px 10px;font-size:12px}.v3-actable tr:last-child td{border-bottom:none}.v3-actable__call{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;color:var(--v3-charcoal);letter-spacing:-.005em;font-size:13px;font-weight:700}.v3-actable__icao{color:var(--v3-slate)}.v3-rb{flex-direction:column;gap:5px;padding:10px 0;display:flex}.v3-rb__head{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;justify-content:space-between;font-size:12px;display:flex}.v3-rb__lbl{color:var(--v3-charcoal);font-weight:600}.v3-rb__count{color:var(--v3-slate)}.v3-rb__track{background:var(--v3-paper);border-radius:var(--v3-r-pill);height:6px;overflow:hidden}.v3-rb__fill{border-radius:var(--v3-r-pill);background:linear-gradient(90deg, var(--v3-blue-400), var(--v3-blue-700));height:100%}.v3-rb__fill--coral{background:linear-gradient(90deg, var(--v3-coral), var(--v3-coral-dk))}.v3-rb__fill--gold{background:linear-gradient(90deg, var(--v3-gold), var(--v3-gold-dk))}.v3-rb__fill--green{background:linear-gradient(90deg, var(--v3-green), var(--v3-green-dk))}.v3-tlmeta{background:var(--v3-white);border:1px solid var(--v3-line);border-radius:var(--v3-r-lg);box-shadow:var(--v3-sh-1);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid;overflow:hidden}.v3-tlmeta__cell{text-align:center;border-right:1px solid var(--v3-line);padding:18px 16px}.v3-tlmeta__cell:last-child{border-right:none}@media (max-width:760px){.v3-tlmeta__cell{border-right:none;border-bottom:1px solid var(--v3-line)}.v3-tlmeta__cell:last-child{border-bottom:none}}.v3-tlmeta__val{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.025em;color:var(--v3-blue-700);font-variant-numeric:tabular-nums;font-size:clamp(22px,3vw,30px);font-weight:800;line-height:1}.v3-tlmeta__lbl{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--v3-slate);margin-top:7px;font-size:10.5px}.v3-langbar{border-radius:var(--v3-r-pill);border:1px solid var(--v3-line);background:var(--v3-paper);height:14px;display:flex;overflow:hidden}.v3-langbar__seg{height:100%;transition:filter .15s;position:relative}.v3-langbar__seg:hover{filter:brightness(1.05)}.v3-langbar__legend{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);flex-wrap:wrap;gap:6px 14px;margin-top:14px;font-size:11.5px;display:flex}.v3-langbar__legend-row{align-items:center;gap:6px;display:inline-flex}.v3-langbar__sw{border-radius:3px;flex-shrink:0;width:10px;height:10px}.v3-langbar__pct{color:var(--v3-charcoal);font-weight:600}.v3-cheat{background:var(--v3-cloud);border:1px solid var(--v3-line);border-radius:var(--v3-r-md);padding:16px;overflow-x:auto}.v3-cheat__svg{width:100%;min-width:480px;height:auto;display:block}.v3-cheat__legend{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;font-size:11px;display:flex}.v3-cheat__sw{gap:3px;display:inline-flex}.v3-cheat__cell{border-radius:2px;width:12px;height:12px}.v3-cheat__cell[data-i="0"]{background:var(--v3-line)}.v3-cheat__cell[data-i="1"]{background:var(--v3-blue-100)}.v3-cheat__cell[data-i="2"]{background:var(--v3-blue-300)}.v3-cheat__cell[data-i="3"]{background:var(--v3-blue-500)}.v3-cheat__cell[data-i="4"]{background:var(--v3-blue-700)}.v3-phases{flex-direction:column;display:flex}.v3-phase{grid-template-columns:28px 1fr;gap:18px;padding-bottom:36px;display:grid}.v3-phase:last-child{padding-bottom:0}.v3-phase__rail{flex-direction:column;align-items:center;display:flex}.v3-phase__dot{background:var(--v3-phase-color,var(--v3-blue-500));width:14px;height:14px;box-shadow:0 0 0 4px color-mix(in srgb, var(--v3-phase-color,var(--v3-blue-500)) 22%, transparent);border-radius:50%;flex-shrink:0;margin-top:6px}.v3-phase:not(:last-child) .v3-phase__rail:after{content:"";background:linear-gradient(180deg, var(--v3-phase-color,var(--v3-blue-500)) 0%, var(--v3-line) 100%);flex:1;width:2px;margin-top:8px}.v3-phase__range{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.06em;color:var(--v3-phase-color,var(--v3-blue-500));text-transform:uppercase;margin-bottom:4px;font-size:12px}.v3-phase__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.025em;color:var(--v3-charcoal);margin-bottom:8px;font-size:clamp(20px,2.6vw,26px);font-weight:800;line-height:1.1}.v3-phase__desc{color:var(--v3-ink);max-width:760px;margin-bottom:14px;font-size:15px;line-height:1.55}.v3-phase__milestones{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.v3-phase__milestone{grid-template-columns:64px 1fr auto;gap:12px;font-size:12.5px;display:grid}.v3-phase__milestone-date{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-phase-color,var(--v3-blue-500));font-weight:600}.v3-phase__milestone-title{color:var(--v3-ink)}.v3-phase__milestone-repo{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);font-size:11.5px}.v3-phase__toggle{cursor:pointer;font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.04em;color:var(--v3-phase-color,var(--v3-blue-500));background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-size:12px;font-weight:600;display:inline-flex}.v3-phase__toggle:hover{text-decoration:underline}.v3-phase__chev{transition:transform .2s}.v3-phase__chev[data-open=true]{transform:rotate(90deg)}.v3-phase__repos{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-top:14px;display:grid}.v3-repocard{border-radius:var(--v3-r-md);border:1px solid var(--v3-line);background:var(--v3-white);color:inherit;flex-direction:column;gap:6px;padding:14px 16px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.v3-repocard:hover{box-shadow:var(--v3-sh-1);border-color:color-mix(in srgb, var(--v3-phase-color,var(--v3-blue-500)) 38%, var(--v3-line));transform:translateY(-2px)}.v3-repocard__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.v3-repocard__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.005em;color:var(--v3-charcoal);font-size:14.5px;font-weight:700}.v3-repocard__lang{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;border-radius:var(--v3-r-pill);background:color-mix(in srgb, var(--v3-lang-color,var(--v3-blue-500)) 14%, transparent);color:var(--v3-lang-color,var(--v3-blue-700));border:1px solid color-mix(in srgb, var(--v3-lang-color,var(--v3-blue-500)) 24%, transparent);white-space:nowrap;padding:2px 8px;font-size:10.5px}.v3-repocard__desc{color:var(--v3-ink);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;flex:1;font-size:12.5px;line-height:1.5;display:-webkit-box;overflow:hidden}.v3-repocard__foot{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-slate);border-top:1px dashed var(--v3-line);justify-content:space-between;align-items:center;margin-top:4px;padding-top:8px;font-size:10.5px;display:flex}.v3-mission-hero{border-radius:var(--v3-r-lg);border:1px solid var(--v3-line);background:var(--v3-white);box-shadow:var(--v3-sh-1);flex-direction:column;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden}.v3-mission-hero:has(.v3-mission-hero__body:hover){box-shadow:var(--v3-sh-2);border-color:color-mix(in srgb, var(--v3-mission-color,var(--v3-blue-500)) 38%, var(--v3-line));transform:translateY(-3px)}.v3-mission-hero__body{color:inherit;text-decoration:none}.v3-mission-hero__bar{background:var(--v3-mission-color,var(--v3-blue-500));height:4px}.v3-mission-hero__body{flex-direction:column;flex:1;gap:12px;padding:18px 20px;display:flex}.v3-mission-hero__row{justify-content:space-between;align-items:center;display:flex}.v3-mission-hero__eyebrow{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.16em;text-transform:uppercase;border-radius:var(--v3-r-pill);background:color-mix(in srgb, var(--v3-mission-color,var(--v3-blue-500)) 12%, transparent);color:var(--v3-mission-ink,var(--v3-blue-ink));padding:3px 10px;font-size:10px;font-weight:700}.v3-mission-hero__gh{z-index:2;font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--v3-r-pill);background:var(--v3-paper);color:var(--v3-slate);border:1px solid var(--v3-line);align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:700;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:inline-flex;position:absolute;top:12px;right:12px}.v3-mission-hero__gh:hover{background:var(--v3-charcoal);color:var(--v3-paper);border-color:var(--v3-charcoal)}.v3-mission-hero__name{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.025em;color:var(--v3-charcoal);margin:0;font-size:26px;font-weight:800;line-height:1.1}.v3-mission-hero__lede{color:var(--v3-ink);min-height:2.6em;margin:0;font-size:13.5px;line-height:1.5}.v3-mission-hero__stats{background:var(--v3-cloud);border:1px solid var(--v3-line);border-radius:var(--v3-r-md);grid-template-columns:repeat(4,1fr);gap:0;padding:10px 0;display:grid}.v3-mission-hero__stat{text-align:center;border-right:1px solid var(--v3-line);padding:0 4px}.v3-mission-hero__stat:last-child{border-right:none}.v3-mission-hero__stat-val{font-family:var(--font-v3-display), "Bricolage Grotesque", sans-serif;letter-spacing:-.02em;color:var(--v3-charcoal);font-variant-numeric:tabular-nums;font-size:18px;font-weight:800;line-height:1}.v3-mission-hero__stat-lbl{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--v3-slate);margin-top:4px;font-size:9.5px}.v3-mission-hero__cta{font-family:var(--font-v3-mono), "JetBrains Mono", monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--v3-mission-ink,var(--v3-blue-ink));align-items:center;gap:6px;margin-top:auto;font-size:11.5px;font-weight:700;display:inline-flex}.v3-footer{z-index:49;background:var(--v3-charcoal);color:var(--v3-paper);border-top:1px solid #ffffff14;position:fixed;bottom:0;left:0;right:0}.v3-footer__bar{max-width:var(--v3-maxw);height:48px;font-family:var(--font-v3-mono), "JetBrains Mono", monospace;color:var(--v3-mist);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:10px 28px;font-size:11.5px;display:flex}.v3-footer__brand{color:inherit;flex-shrink:0;align-items:center;gap:8px;text-decoration:none;transition:opacity .2s;display:inline-flex}.v3-footer__brand:hover{opacity:.85}.v3-footer__brand-text{font-family:var(--font-v3-body), "Hanken Grotesk", sans-serif;letter-spacing:.06em;color:var(--v3-paper);text-transform:lowercase;font-size:14px;font-weight:700}.v3-footer__loc{color:var(--v3-mist);font-size:11px}.v3-footer__build{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;display:inline-flex}.v3-footer__gh{color:var(--v3-paper);border-radius:var(--v3-r-pill);white-space:nowrap;background:#ffffff0d;border:1px solid #ffffff14;align-items:center;gap:5px;padding:4px 10px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.v3-footer__gh:hover{background:#13b8f32e;border-color:#13b8f366}.v3-footer__version{color:inherit;align-items:center;gap:8px;text-decoration:none;transition:opacity .2s;display:inline-flex}.v3-footer__version:hover{opacity:.85}.v3-footer__pill{border-radius:var(--v3-r-pill);background:var(--v3-blue-700);color:#fff;letter-spacing:.04em;align-items:center;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.v3-footer__hash{color:var(--v3-blue-300)}.v3-footer__deployed strong{color:var(--v3-paper);font-weight:700}@media (max-width:760px){.v3-footer__loc,.v3-footer__hash,.v3-footer__deployed{display:none}.v3-footer__bar{gap:10px;padding:8px 14px}.v3-footer__build{gap:8px}.v3-footer__gh span,.v3-footer__gh{padding:3px 7px;font-size:10.5px}}
