.ecs-fig{min-width:0;margin:0}.ecs-fig figcaption{color:var(--mut);margin-top:12px;font-size:13px;line-height:1.5}.ecs-tag{letter-spacing:.1em;text-transform:uppercase;color:#fbbf24;white-space:nowrap;background:#fbbf2414;border:1px solid #fbbf2459;border-radius:999px;padding:2px 9px;font-family:JetBrains Mono,monospace;font-size:10px}.ecs-dot{background:var(--t,#6b6b80);width:8px;height:8px;box-shadow:0 0 0 3px rgba(var(--t-rgb,107,107,128),.18);border-radius:50%;flex:none;display:inline-block}.ecs-dot.red{--t:#f87171;--t-rgb:248,113,113}.ecs-app{background:#0e0e12;flex-direction:column;gap:12px;padding:16px 16px 18px;display:flex}.ecs-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.ecs-step{min-width:0;color:var(--mut);border:1px solid var(--line2);white-space:nowrap;text-overflow:ellipsis;border-radius:9px;align-items:center;gap:7px;padding:6px 8px;font-size:12px;font-weight:600;display:flex;overflow:hidden}.ecs-step b{width:18px;height:18px;color:var(--ink);background:#ffffff0f;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:10.5px;display:inline-flex}.ecs-step.on{color:var(--ink);background:#a78bfa1a;border-color:#a78bfa8c}.ecs-step.on b{color:#0a0a0c;background:#a78bfa}.ecs-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px 14px;padding:0 2px 8px;display:flex}.ecs-tabs span{color:var(--mut);font-size:12px}.ecs-tabs span.on{color:var(--ink);font-weight:700;box-shadow:0 10px 0 -8px #a78bfa}.ecs-src{flex-wrap:wrap;gap:6px;display:flex}.ecs-src>span{color:var(--ink);border:1px solid var(--line2);background:#ffffff08;border-radius:7px;align-items:center;gap:6px;padding:3px 8px 3px 4px;font-size:11.5px;display:inline-flex}.ecs-rows{flex-direction:column;gap:6px;display:flex}.ecs-row{border:1px solid var(--line);background:#ffffff05;border-radius:10px;grid-template-columns:minmax(0,1fr) 58px 58px 40px;align-items:center;gap:8px;padding:8px 10px;display:grid}.ecs-row-h{letter-spacing:.06em;text-transform:uppercase;color:var(--mut);background:0 0;border:none;padding:0 10px 2px;font-family:JetBrains Mono,monospace;font-size:10.5px}.ecs-row-h span:not(:first-child){text-align:right}.ecs-row-h span:last-child{text-align:center}.ecs-prod{align-items:center;gap:10px;min-width:0;display:flex}.ecs-thumb{background:linear-gradient(135deg,#2a2a33,#3a3a44);border-radius:7px;flex:none;width:30px;height:30px}.ecs-name{flex-direction:column;flex:auto;gap:6px;min-width:0;display:flex}.ecs-name>i{background:#3a3a44;border-radius:4px;height:8px;display:block}.ecs-st{color:var(--ink);align-items:center;gap:7px;min-width:0;font-size:12px;line-height:1.3;display:flex}.ecs-num{color:var(--mut);justify-content:flex-end;font-size:12px;display:flex}.ecs-num i{background:#34343d;border-radius:4px;width:34px;height:7px;display:block}.ecs-feed{color:var(--mut);justify-content:center;font-size:12px;display:flex}.ecs-feed.ok{color:#34d399}.ecs-feed.no{color:#f87171}.t-muted{--t:#8a8a99;--t-rgb:154,150,140}.ecs-row.t-muted .ecs-st{color:var(--mut)}.ecs-src.hero{margin-top:2px}@media (max-width:640px){.ecs-src.hero{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ecs-src.hero>span{justify-content:flex-start}}@media (min-width:1025px){.lp-hero.split:has(.ecs-hero-fig) .lp-hero-main{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:48px}}.ecs-shot-scroll{min-width:0}.ecs-shot-crop{aspect-ratio:var(--cw) / var(--ch);background:#f7f6f2;display:block;position:relative;overflow:hidden}.ecs-shot-crop img{max-width:none;width:calc(1440 / var(--cw) * 100%);height:auto;left:calc(var(--cx) / var(--cw) * -100%);top:calc(var(--cy) / var(--ch) * -100%);position:absolute}.ecs-shot figcaption a{color:#c4b5fd;white-space:nowrap}.ecs-dg{border:1px solid var(--line2);background:linear-gradient(#111116,#0c0c0f);border-radius:18px;overflow:hidden;box-shadow:0 30px 80px -40px #8b5cf680}.ecs-dg-bar{border-bottom:1px solid var(--line);color:var(--mut);justify-content:space-between;align-items:center;gap:10px;padding:12px 18px;font-size:12.5px;display:flex}.ecs-dg-k{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-family:JetBrains Mono,monospace;font-size:10px}.ecs-dg-foot{border-top:1px solid var(--line);color:var(--mut);flex-wrap:wrap;align-items:center;gap:6px;padding:11px 18px;font-size:12.5px;line-height:1.5;display:flex}.ecs-dg-foot b{color:var(--ink)}.ecs-q{grid-template-columns:auto minmax(0,1fr);gap:10px;padding:18px 18px 16px;display:grid}.ecs-q-y{writing-mode:vertical-rl;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);text-align:center;font-family:JetBrains Mono,monospace;font-size:10.5px;transform:rotate(180deg)}.ecs-q-grid{grid-template-rows:auto repeat(2,minmax(96px,auto));grid-template-columns:96px repeat(2,minmax(0,1fr));gap:8px;display:grid}.ecs-q-h{letter-spacing:.08em;text-transform:uppercase;color:var(--mut);text-align:center;grid-row:1;font-family:JetBrains Mono,monospace;font-size:10.5px}.ecs-q-h.c1{grid-column:2}.ecs-q-h.c2{grid-column:3}.ecs-q-r{color:var(--mut);grid-column:1;align-self:center;font-size:12px;line-height:1.35}.ecs-q-r.r1,.ecs-q-c.r1{grid-row:2}.ecs-q-r.r2,.ecs-q-c.r2{grid-row:3}.ecs-q-c.c1{grid-column:2}.ecs-q-c.c2{grid-column:3}.ecs-q-c{border:1px solid rgba(var(--t-rgb,154,150,140),.35);background:rgba(var(--t-rgb,154,150,140),.07);border-radius:12px;flex-direction:column;gap:6px;min-width:0;padding:12px;display:flex}.ecs-q-c b{color:var(--ink);font-size:13.5px;line-height:1.3}.ecs-q-c small{color:var(--mut);font-size:12px}.ecs-q-c.muted{--t:#6b6b80;--t-rgb:154,150,140}.ecs-legend{color:var(--mut);flex-wrap:wrap;align-items:center;gap:6px 16px;padding:12px 18px 0;font-size:11.5px;display:flex}.ecs-legend span{align-items:center;gap:7px;display:inline-flex}.ecs-legend s,.ecs-legend i{border-radius:4px;width:22px;height:7px;display:inline-block}.ecs-legend s{background:#f8717159}.ecs-legend i{background:#34d39966}.ecs-legend-r{margin-left:auto}.ecs-blocks{flex-direction:column;gap:8px;margin:0;padding:14px 18px;list-style:none;display:flex}.ecs-blocks li{border:1px solid var(--line);border-radius:10px;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 12px;display:grid}.ecs-bl-k{color:var(--ink);font-size:12.5px;font-weight:700}.ecs-bl-diff{flex-direction:column;gap:5px;min-width:0;display:flex}.ecs-bl-diff s,.ecs-bl-diff i{border-radius:4px;height:7px;display:block}.ecs-bl-diff s{background:#f8717159;position:relative}.ecs-bl-diff s:after{content:"";background:#f87171e6;height:1px;position:absolute;top:3px;left:-3px;right:-3px}.ecs-bl-diff i{background:#34d39966}.ecs-bl-st{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11.5px;font-weight:700;display:inline-flex}.ecs-blocks li.ok .ecs-bl-st{color:#34d399;background:#34d3991a}.ecs-blocks li.edit .ecs-bl-st{color:#a78bfa;background:#a78bfa1f}.ecs-blocks li.no{opacity:.6}.ecs-blocks li.no .ecs-bl-st{color:var(--mut);background:#ffffff0d}.ecs-lane{border:1px solid var(--line2);border-radius:14px;grid-template-columns:162px minmax(0,1fr) auto;align-items:center;gap:14px;margin:14px 18px;padding:14px;display:grid}.ecs-lane.api{background:#7ab55c12;border-color:#7ab55c73}.ecs-lane-logo{background:#fff;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.ecs-lane-logos{grid-template-columns:repeat(6,22px);gap:6px;display:grid}.ecs-lane-logos>span{background:#ffffffeb;border-radius:6px;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;overflow:hidden}.ecs-lane-logos>span.wide{grid-column:span 3;width:auto}.ecs-lane-t{flex-direction:column;gap:3px;min-width:0;display:flex}.ecs-lane-t b{color:var(--ink);font-size:15px}.ecs-lane-t small{color:var(--mut);font-size:12.5px}.ecs-lane-tag{letter-spacing:.08em;text-transform:uppercase;color:#0a0a0c;background:#34d399;border-radius:999px;padding:3px 9px;font-family:JetBrains Mono,monospace;font-size:10.5px}.ecs-lane-tag.beta{color:#fbbf24;background:#fbbf241a;border:1px solid #fbbf2459}.ecs-lane-tag.exp{color:var(--ink);border:1px solid var(--line2);background:#ffffff0d}.ecs-chips{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.ecs-chips span{color:var(--ink);border:1px solid var(--line2);background:#ffffff08;border-radius:8px;align-items:center;gap:6px;padding:4px 9px;font-size:12px;font-weight:600;display:inline-flex}.ecs-chips span.on{color:#0a0a0c;background:var(--t,var(--accent));border-color:#0000}.ecs-chips span.beta{color:#fbbf24;background:#fbbf2414;border-color:#fbbf2459}.ecs-tbl td,.ecs-tbl th{vertical-align:top}.ecs-tbl .api{color:#34d399;font-weight:700}.ecs-tbl .exp{color:var(--ink);font-weight:700}.ecs-tbl .beta{color:#fbbf24;font-weight:700}.ecs-tbl .no{color:var(--mut);font-weight:700}.ecs-tbl small{color:var(--mut);margin-top:3px;font-size:12px;font-weight:400;line-height:1.4;display:block}.ecs-tbl thead th{vertical-align:middle}.ecs-th{vertical-align:middle;align-items:center;gap:8px;display:inline-flex}.ecs-th-ic{background:#fff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;overflow:hidden}.ecs-th-ic.wide{width:68px}.ecs-th-ic.mid{width:auto;padding:0 6px}.ecs-tbl-swipe{display:none}.ecs-tips{margin-top:28px}@media (max-width:760px){.ecs-tbl{position:relative}.ecs-tbl:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0c0c1000,#0c0c10);width:36px;position:absolute;top:0;bottom:33px;right:0}.ecs-tbl-swipe{color:var(--mut);border-top:1px solid var(--line);background:#111115;padding:8px 16px;font-size:11px;display:block}.ecs-shot-crop{width:560px}.ecs-shot-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:640px){.ecs-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.ecs-row{grid-template-columns:minmax(0,1fr) 40px 40px 28px;gap:6px;padding:8px}.ecs-row-h{letter-spacing:.02em;padding:0 8px 2px;font-size:9px}.ecs-prod{gap:8px}.ecs-thumb{width:24px;height:24px}.ecs-num i{width:26px}.ecs-st{align-items:flex-start;font-size:11.5px}.ecs-st .ecs-dot{margin-top:4px}.ecs-q{padding:14px 12px}.ecs-q-y{display:none}.ecs-q{grid-template-columns:minmax(0,1fr)}.ecs-q-grid{grid-template-columns:64px repeat(2,minmax(0,1fr))}.ecs-q-c{padding:9px}.ecs-q-c b{font-size:12.5px}.ecs-legend{padding:12px 12px 0}.ecs-legend-r{display:none}.ecs-blocks{padding:12px}.ecs-blocks li{grid-template-columns:minmax(0,1fr) auto}.ecs-bl-diff{grid-area:2/1/auto/-1}.ecs-lane{grid-template-columns:minmax(0,1fr) auto;margin:12px}.ecs-lane-logo,.ecs-lane-logos{grid-column:1/-1}}