.ex{--ex-ink:var(--foreground);--ex-muted:var(--text-muted);--ex-line:var(--card-border);--ex-line-strong:rgba(13,34,54,0.18);--ex-surface:#ffffff;--ex-panel:#f2f6fa;--ex-accent:var(--primary);--ex-accent-ink:#1577ab;--ex-on-accent:#ffffff;--ex-ok:#127644;--ex-radius:var(--radius-lg,12px);--ex-shadow:0 1px 2px rgba(13,34,54,0.06);--ex-shadow-hover:0 12px 28px -14px rgba(13,34,54,0.32);color:var(--ex-ink)}.dark .ex{--ex-line-strong:rgba(255,255,255,0.18);--ex-surface:var(--card-bg);--ex-panel:rgba(255,255,255,0.04);--ex-accent-ink:#5cb3f0;--ex-on-accent:#0b1220;--ex-ok:#3ccb85;--ex-shadow:none;--ex-shadow-hover:0 12px 28px -14px rgba(0,0,0,0.7)}.ex-wrap{max-width:1200px;margin:0 auto;padding:0 20px}.ex-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ex-hero{padding:40px 0 4px}body:has(header.main-header) .ex-hero{padding-top:120px}.ex-h1{margin:0 0 14px;font-size:clamp(2rem,3.6vw,2.9rem);line-height:1.08;font-weight:800;letter-spacing:-.02em;text-wrap:balance}.ex-lead{margin:0;max-width:40em;font-size:1.1rem;line-height:1.55;color:var(--ex-muted)}.ex-filters{display:grid;gap:12px;margin-top:28px}.ex-filter{display:grid;grid-template-columns:7.5rem minmax(0,1fr);align-items:start;gap:8px}.ex-filter__label{padding-top:8px;font-size:.875rem;color:var(--ex-muted)}.ex-filter__chips{display:flex;flex-wrap:wrap;gap:8px}.ex-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid var(--ex-line-strong);border-radius:999px;background:var(--ex-surface);color:var(--ex-ink);font:inherit;font-size:.9rem;line-height:1.2;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,color .15s ease}.ex-chip:hover{border-color:var(--ex-accent-ink)}.ex-chip:focus-visible{outline:2px solid var(--ex-accent-ink);outline-offset:2px}.ex-chip[aria-pressed=true]{border-color:var(--ex-accent-ink);background:var(--ex-accent-ink);color:var(--ex-on-accent)}.ex-chip__n{font-size:.82rem;font-variant-numeric:tabular-nums;opacity:.8}.ex-found{margin:26px 0 14px;font-size:.9rem}.ex-empty,.ex-found{color:var(--ex-muted)}.ex-empty{margin:8px 0 0;padding:40px 20px;border:1px dashed var(--ex-line-strong);border-radius:var(--ex-radius);text-align:center}.ex-empty button{margin-top:12px}.ex-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}.ex-card,.ex-grid>li{min-width:0}.ex-card{position:relative;display:flex;flex-direction:column;height:100%;overflow:hidden;border:1px solid var(--ex-line);border-radius:var(--ex-radius);background:var(--ex-surface);box-shadow:var(--ex-shadow);transition:border-color .2s ease,box-shadow .2s ease}.ex-card:hover{border-color:var(--ex-accent-ink);box-shadow:var(--ex-shadow-hover)}.ex-card:has(.ex-card__link:focus-visible){outline:2px solid var(--ex-accent-ink);outline-offset:2px}.ex-card__media{position:relative;aspect-ratio:16/10;overflow:hidden;border-bottom:1px solid var(--ex-line);background:var(--ex-panel)}.ex-card__media img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center}.ex-card__nothumb{display:grid;place-items:center;height:100%;padding:16px;color:var(--ex-muted);font-size:.9rem;text-align:center}.ex-card__body{display:flex;flex:1 1 auto;flex-direction:column;gap:6px;padding:16px 18px 18px}.ex-card__title{margin:0;font-size:1.05rem;line-height:1.3;font-weight:700}.ex-card__link{color:inherit;text-decoration:none}.ex-card__link:focus-visible{outline:none}.ex-card__link:after{content:"";position:absolute;inset:0;z-index:1}.ex-card__desc{display:-webkit-box;margin:0;overflow:hidden;font-size:.92rem;line-height:1.5;color:var(--ex-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical}.ex-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:auto;padding-top:10px;font-size:.84rem;color:var(--ex-muted)}.ex-card__type{color:var(--ex-accent-ink);font-weight:600}.ex-card__host{display:inline-flex;align-items:center;gap:4px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-viz{position:absolute;inset:0;display:flex;flex-direction:column;gap:6px;padding:16px 18px}.ex-viz__cap{margin:0;font-size:.82rem;color:var(--ex-muted)}.ex-viz__num{margin:0;font-size:clamp(1.6rem,2.3vw,2rem);line-height:1.1;font-weight:800;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.ex-viz__growth{margin:0;font-size:.9rem;font-weight:600;color:var(--ex-ok);font-variant-numeric:tabular-nums}.ex-viz__row{margin:0;overflow:hidden;font-size:.84rem;color:var(--ex-muted);text-overflow:ellipsis;white-space:nowrap}.ex-viz__row b{color:var(--ex-ink);font-weight:600}.ex-bars{display:flex;align-items:flex-end;gap:6px;margin:auto 0 4px;padding:0;list-style:none}.ex-bars li{display:flex;flex:1 1 0;flex-direction:column;align-items:stretch;gap:4px}.ex-bars i{display:block;flex:0 0 auto;border-radius:4px 4px 0 0;background:var(--ex-accent)}.ex-bars span{font-size:.72rem;line-height:1;color:var(--ex-muted);text-align:center;font-variant-numeric:tabular-nums}.ex-canvas{display:grid;gap:0;margin:0}.ex-canvas div{padding:7px 0;border-top:1px solid var(--ex-line)}.ex-canvas div:first-child{padding-top:0;border-top:0}.ex-canvas dt{font-size:.8rem;color:var(--ex-muted)}.ex-canvas dd{display:-webkit-box;margin:2px 0 0;overflow:hidden;font-size:.88rem;line-height:1.4;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ex-lines{display:grid;gap:8px;margin:0;padding:0;list-style:none}.ex-lines li{position:relative;display:-webkit-box;padding-inline-start:14px;overflow:hidden;font-size:.88rem;line-height:1.45;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ex-lines li:before{content:"";position:absolute;inset-inline-start:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--ex-accent)}.ex-roles{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 0;padding:0;list-style:none}.ex-roles li{padding:5px 10px;border:1px solid var(--ex-line-strong);border-radius:999px;background:var(--ex-surface);font-size:.84rem}.ex-viz__foot{margin:auto 0 0;font-size:.84rem;color:var(--ex-muted)}.ex-section{margin-top:56px}.ex-h2{margin:0 0 8px;font-size:clamp(1.5rem,2.4vw,1.9rem);line-height:1.2;font-weight:800;letter-spacing:-.01em}.ex-section__lead{margin:0 0 22px;max-width:44em;font-size:1rem;line-height:1.55;color:var(--ex-muted)}.ex-chain{counter-reset:exstep;display:grid;grid-template-columns:repeat(var(--ex-steps,4),minmax(0,1fr));gap:28px;margin:0;padding:0;list-style:none}.ex-step{counter-increment:exstep;position:relative;display:flex;flex-direction:column;gap:10px;min-width:0;padding:18px;border:1px solid var(--ex-line);border-radius:var(--ex-radius);background:var(--ex-surface);box-shadow:var(--ex-shadow)}.ex-step:not(:last-child):after{content:"";position:absolute;top:28px;inset-inline-end:-21px;width:14px;height:14px;border-top:2px solid var(--ex-line-strong);border-inline-end:2px solid var(--ex-line-strong);transform:rotate(45deg)}[dir=rtl] .ex-step:not(:last-child):after{transform:rotate(-135deg)}.ex-step__head{display:flex;align-items:center;gap:10px;margin:0;font-size:1rem;font-weight:700}.ex-step__head:before{content:counter(exstep);display:grid;place-items:center;flex:0 0 auto;width:26px;height:26px;border:2px solid var(--ex-accent-ink);border-radius:50%;color:var(--ex-accent-ink);font-size:.82rem;font-weight:700}.ex-step__idea{margin:0;font-size:1.05rem;line-height:1.45;font-weight:600}.ex-step__hint{margin:0;font-size:.84rem;color:var(--ex-muted)}.ex-step__thumb{display:block;overflow:hidden;aspect-ratio:16/10;border:1px solid var(--ex-line);border-radius:8px;background:var(--ex-panel)}.ex-step__thumb img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center}.ex-step .ex-canvas dd{-webkit-line-clamp:3}.ex-step__link{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:4px;color:var(--ex-accent-ink);font-size:.92rem;font-weight:600;text-decoration:none}.ex-step__link:hover{text-decoration:underline;text-underline-offset:3px}.ex-step__link:focus-visible{outline:2px solid var(--ex-accent-ink);outline-offset:3px;border-radius:4px}.ex-more{display:flex;flex-wrap:wrap;gap:6px 16px;margin:16px 0 0;padding:0;list-style:none;font-size:.92rem;color:var(--ex-muted)}.ex-more a{color:var(--ex-accent-ink);font-weight:600;text-decoration:none}.ex-more a:hover{text-decoration:underline;text-underline-offset:3px}.ex-cta{margin:72px auto 88px;max-width:720px;text-align:center}.ex-cta .ex-section__lead{margin-inline:auto}.ex-cta .prompt-box{margin:8px auto 0;text-align:start}.ex-crumbs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px;padding:0;list-style:none;font-size:.875rem;color:var(--ex-muted)}.ex-crumbs li:not(:last-child):after{content:"/";margin-inline-start:6px;opacity:.6}.ex-crumbs a{color:var(--ex-accent-ink);text-decoration:none}.ex-crumbs a:hover{text-decoration:underline;text-underline-offset:3px}.ex-detail__meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin:16px 0 0;font-size:.9rem;color:var(--ex-muted)}.ex-detail__body{display:grid;gap:20px;margin-top:32px}.ex-prose{padding:24px;border:1px solid var(--ex-line);border-radius:var(--ex-radius);background:var(--ex-surface);color:var(--ex-ink);overflow-wrap:anywhere}.ex-prose__title{margin:0 0 12px;font-size:1.15rem;font-weight:700}@media (max-width:1000px){.ex-chain,.ex-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-step:nth-child(2n):after{display:none}}@media (max-width:640px){.ex-wrap{padding:0 16px}body:has(header.main-header) .ex-hero{padding-top:100px}.ex-filter{grid-template-columns:minmax(0,1fr);gap:6px}.ex-filter__label{padding-top:0}.ex-filter__chips{flex-wrap:nowrap;margin-inline:-16px;padding:2px 16px 6px;overflow-x:auto;scrollbar-width:none}.ex-filter__chips::-webkit-scrollbar{display:none}.ex-chip{flex:0 0 auto}.ex-chain,.ex-grid{grid-template-columns:minmax(0,1fr);gap:16px}.ex-step:after{display:none}.ex-prose{padding:16px}.ex-cta{margin:56px auto 64px}}@media (prefers-reduced-motion:reduce){.ex-card,.ex-chip{transition:none}}.ex-step__viz .ex-viz{position:static;padding:0}.ex-more__label{color:var(--ex-muted)}.ex-step .ex-viz__row{white-space:normal}html:not(.dark) .ex .prompt-box__textarea{border-color:var(--ex-line-strong);background:var(--ex-surface);box-shadow:var(--ex-shadow);color:var(--ex-ink);backdrop-filter:none}html:not(.dark) .ex .prompt-box__textarea:focus{border-color:var(--ex-accent-ink);background:var(--ex-surface)}html:not(.dark) .ex .prompt-box__textarea::-moz-placeholder{color:#5f6b7a}html:not(.dark) .ex .prompt-box__ghost,html:not(.dark) .ex .prompt-box__textarea::placeholder{color:#5f6b7a}html:not(.dark) .ex .prompt-box__length{color:var(--ex-muted)}.ex-step__idea{padding:12px 14px;border:1px solid var(--ex-line-strong);border-radius:10px;background:var(--ex-panel)}.ex-step__built-title{margin-top:6px}.ex-built{display:grid;gap:6px;margin:0;padding:0;list-style:none;font-size:.92rem}.ex-built li{display:flex;align-items:center;gap:8px}.ex-built svg{flex:0 0 auto;color:var(--ex-ok)}.ex-step__site{margin:0;font-size:.92rem;line-height:1.45;color:var(--ex-muted)}.ex-step__site b{display:block;margin-bottom:2px;color:var(--ex-ink);font-weight:600}.ex-step .ex-bars{margin-top:12px}.ex-fulltext>summary{display:flex;align-items:center;gap:10px;margin:0;cursor:pointer;list-style:none}.ex-fulltext>summary::-webkit-details-marker{display:none}.ex-fulltext>summary:before{content:"";width:8px;height:8px;border-inline-end:2px solid currentColor;border-bottom:2px solid;transform:rotate(-45deg);transition:transform .15s ease}[dir=rtl] .ex-fulltext>summary:before{transform:rotate(135deg)}.ex-fulltext[open]>summary{margin-bottom:12px}.ex-fulltext[open]>summary:before{transform:rotate(45deg)}.ex-fulltext>summary:focus-visible{outline:2px solid var(--ex-accent-ink);outline-offset:4px;border-radius:4px}.ex-block{min-width:0;padding:24px;border:1px solid var(--ex-line);border-radius:var(--ex-radius);background:var(--ex-surface);box-shadow:var(--ex-shadow)}.ex-block__title{margin:0 0 14px;font-size:1.2rem;line-height:1.3;font-weight:700}.ex-block__note{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:-6px 0 16px;font-size:.875rem;color:var(--ex-muted)}.ex-block__text{margin:0;line-height:1.55}.ex-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0}.ex-kpi{min-width:0}.ex-kpi dt{font-size:.875rem;color:var(--ex-muted)}.ex-kpi__value{margin:4px 0 0;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.1;font-weight:800;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.ex-kpi__note{margin:6px 0 0;font-size:.84rem;line-height:1.4;color:var(--ex-muted)}.ex-summary{margin:20px 0 0;padding-top:16px;border-top:1px solid var(--ex-line);font-size:1.02rem;line-height:1.55}.ex-forecast{display:flex;align-items:flex-end;gap:14px;margin:0;padding:0;list-style:none}.ex-forecast li{display:flex;flex:1 1 0;flex-direction:column;align-items:stretch;gap:6px;min-width:0;text-align:center}.ex-forecast i{display:block;flex:0 0 auto;border-radius:6px 6px 0 0;background:var(--ex-accent)}.ex-forecast .is-estimate i{border:1.5px solid var(--ex-accent);border-bottom:0;background:color-mix(in srgb,var(--ex-accent) 28%,var(--ex-surface))}.ex-forecast__value{line-height:1.25;font-weight:600;overflow-wrap:anywhere}.ex-forecast__value,.ex-forecast__year{font-size:.84rem;font-variant-numeric:tabular-nums}.ex-forecast__year{color:var(--ex-muted)}.ex-block__note:has(.ex-legend){margin:14px 0 0}.ex-legend{display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--ex-accent)}.ex-legend--estimate{margin-inline-start:8px;border:1.5px solid var(--ex-accent);background:color-mix(in srgb,var(--ex-accent) 28%,var(--ex-surface))}.ex-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ex-block .ex-lines li{-webkit-line-clamp:unset;font-size:.95rem}.ex-personas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none}.ex-persona{display:flex;flex-direction:column;gap:8px;min-width:0}.ex-persona__head{display:flex;align-items:center;gap:12px}.ex-persona__head img{flex:0 0 auto;width:56px;height:56px;border-radius:50%;-o-object-fit:cover;object-fit:cover;background:var(--ex-panel)}.ex-persona__name{margin:0;font-size:1.05rem;font-weight:700}.ex-persona__role{margin:2px 0 0;font-size:.875rem;line-height:1.4;color:var(--ex-muted)}.ex-persona__quote{margin:4px 0 0;padding-inline-start:12px;border-inline-start:3px solid var(--ex-line-strong);font-size:.95rem;line-height:1.5}.ex-persona__label{margin:6px 0 0;font-size:.84rem;font-weight:600;color:var(--ex-muted)}.ex-table-wrap{position:relative;overflow-x:auto}.ex-table{width:100%;min-width:520px;border-collapse:collapse;font-size:.92rem}.ex-table td,.ex-table th{padding:10px 12px;border-bottom:1px solid var(--ex-line);text-align:center}.ex-table thead th{font-weight:600;color:var(--ex-muted)}.ex-table th[scope=row],.ex-table thead th:first-child{text-align:start;font-weight:500;color:var(--ex-ink)}.ex-table .is-own{background:var(--ex-panel);color:var(--ex-ink);font-weight:600}.ex-yes{color:var(--ex-ok);font-weight:700}.ex-no{color:var(--ex-muted)}@media (max-width:1000px){.ex-personas{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.ex-block{padding:16px}.ex-kpis,.ex-pair{grid-template-columns:minmax(0,1fr);gap:16px}.ex-forecast{gap:8px}.ex-forecast__value{font-size:.75rem}}.ex-canvas-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:1px;margin:0;padding:0;overflow:hidden;border-radius:8px;background:var(--ex-line);list-style:none}.ex-canvas-cell{display:flex;flex-direction:column;gap:8px;min-width:0;padding:14px;background:var(--ex-surface)}.ex-canvas-cell__title{margin:0;font-size:.9rem;font-weight:700;color:var(--ex-accent-ink)}.ex-canvas-cell__note{margin:0;font-size:.875rem;line-height:1.45;color:var(--ex-muted)}.ex-canvas-cell .ex-lines li{-webkit-line-clamp:unset;font-size:.9rem}.ex-canvas-cell--1{grid-column:1/3;grid-row:1/3}.ex-canvas-cell--4{grid-column:3/5;grid-row:1}.ex-canvas-cell--8{grid-column:3/5;grid-row:2}.ex-canvas-cell--3{grid-column:5/7;grid-row:1/3}.ex-canvas-cell--9{grid-column:7/9;grid-row:1}.ex-canvas-cell--5{grid-column:7/9;grid-row:2}.ex-canvas-cell--2{grid-column:9/11;grid-row:1/3}.ex-canvas-cell--7{grid-column:1/6;grid-row:3}.ex-canvas-cell--6{grid-column:6/11;grid-row:3}@media (max-width:1000px){.ex-canvas-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-canvas-grid .ex-canvas-cell{grid-column:auto;grid-row:auto}}@media (max-width:640px){.ex-canvas-grid{grid-template-columns:minmax(0,1fr)}}