@layer tokens,base,components,utilities;@layer components{.tp-hero{padding-block:var(--space-9) var(--space-8)}.tp-hero__title{max-inline-size:24ch;margin-block:var(--space-4) var(--space-5);font-size:var(--type-h1);line-height:var(--leading-display);letter-spacing:var(--tracking-display);font-weight:var(--font-weight-display);text-wrap:balance}.tp-hero__title>span{display:block}.tp-hero__lead{max-inline-size:58ch;font-size:var(--type-body);line-height:var(--leading-body);color:var(--text-muted)}.tp-hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-block-start:var(--space-6)}.tp-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-block-size:44px;padding-block:var(--space-3);padding-inline:var(--space-6);border-radius:var(--radius);border:1px solid var(--accent);background:var(--accent);color:var(--ink-inverse);font-weight:var(--font-weight-medium);text-decoration:none}.tp-btn--quiet{background:transparent;border-color:var(--line-strong);color:var(--text)}.tp-hero__chips{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-block-start:var(--space-7);padding:0;list-style:none}.tp-hero__chips li{display:inline-flex;align-items:center;gap:var(--space-2);padding-block:var(--space-2);padding-inline:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-pill);font-size:var(--type-caption);color:var(--text-muted)}.tp-hero__chips li:before{content:"";inline-size:6px;block-size:6px;border-radius:50%;background:var(--accent);flex:none}.tp-stage{margin-block-start:var(--space-8)}.tp-stage:first-of-type{margin-block-start:var(--space-7)}.tp-stage__head{display:flex;align-items:baseline;gap:var(--space-4);padding-block-end:var(--space-3);border-block-end:1px solid var(--line)}.tp-stage__index{font-family:var(--font-mono, monospace);font-size:var(--type-caption);color:var(--accent-text);font-variant-numeric:tabular-nums}.tp-stage__name{font-size:var(--type-h3);font-weight:var(--font-weight-bold)}.tp-stage__intro{max-inline-size:64ch;margin-block-start:var(--space-3);color:var(--text-muted)}.tp-tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(19rem,100%),1fr));gap:var(--space-5);margin-block-start:var(--space-5)}.tp-card{display:flex;flex-direction:column;gap:var(--space-3)}.tp-card__top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.tp-card .tool-glyph{color:var(--text-muted);transition:color var(--duration-fast, .16s) var(--ease-out, ease-out)}.tp-card:hover .tool-glyph,.tp-card:focus-visible .tool-glyph{color:var(--accent)}.tp-card__time{font-family:var(--font-mono, monospace);font-size:var(--type-micro);color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.tp-card__label{font-size:var(--type-micro);font-weight:var(--font-weight-bold);color:var(--accent-text)}.tp-card__name{font-size:1.125rem;font-weight:var(--font-weight-bold);line-height:var(--leading-heading)}.tp-card__text{font-size:var(--type-caption);color:var(--text-muted);flex-grow:1}.tp-card__personas{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:0;margin:0;list-style:none}.tp-card__personas li{padding-block:2px;padding-inline:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);font-size:var(--type-micro);color:var(--text-muted)}.tp-card__open{align-self:start;font-size:var(--type-caption);font-weight:var(--font-weight-medium);color:var(--accent-text)}.tp-doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(15rem,100%),1fr));gap:var(--space-5);margin-block-start:var(--space-6)}.tp-doc{display:flex;flex-direction:column;gap:var(--space-3)}.tp-doc__thumb{position:relative;aspect-ratio:1 / 1.1;max-block-size:11rem;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius);background:repeating-linear-gradient(to bottom,transparent 0 .9rem,var(--line-soft) .9rem calc(.9rem + 2px),transparent calc(.9rem + 2px) 1.8rem) content-box,var(--paper-raised);padding:var(--space-5);overflow:hidden;color:var(--text-muted)}.tp-doc__thumb:after{content:"";position:absolute;inset-block-start:0;inset-inline-end:0;inline-size:1.25rem;block-size:1.25rem;background:var(--surface);border-inline-start:1px solid var(--line);border-block-end:1px solid var(--line)}.tp-doc__tag{font-size:var(--type-micro);font-weight:var(--font-weight-bold);color:var(--accent-text)}.tp-doc__title{font-size:1.0625rem;font-weight:var(--font-weight-bold);line-height:var(--leading-heading)}.tp-doc__text{font-size:var(--type-caption);color:var(--text-muted);flex-grow:1}.tp-doc__cta{align-self:start;font-size:var(--type-caption);font-weight:var(--font-weight-medium);color:var(--accent-text)}.td-hero{padding-block:var(--space-9) var(--space-8)}.td-hero__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:var(--space-7);align-items:start}.td-hero__title{max-inline-size:24ch;margin-block:var(--space-4) var(--space-5);font-size:var(--type-h1);line-height:var(--leading-display);letter-spacing:var(--tracking-display);font-weight:var(--font-weight-display);text-wrap:balance}.td-hero__lead{max-inline-size:56ch;color:var(--text-muted)}.td-hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-block-start:var(--space-6)}.td-meta{border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-6);display:grid;gap:var(--space-4)}.td-meta__glyph{color:var(--text-muted)}.td-meta dl{margin:0;display:grid;gap:var(--space-4)}.td-meta dt{font-size:var(--type-micro);font-weight:var(--font-weight-bold);color:var(--text-muted)}.td-meta dd{margin:0;font-size:var(--type-caption)}.td-meta__time{font-family:var(--font-mono, monospace);font-size:var(--type-micro);color:var(--text-muted);font-variant-numeric:tabular-nums}.td-meta__privacy{padding-block-start:var(--space-4);border-block-start:1px solid var(--line);font-size:var(--type-micro);color:var(--text-muted)}@media(max-width:899px){.td-hero__grid{grid-template-columns:minmax(0,1fr)}}.td-scoring{max-inline-size:46rem;margin-block-start:var(--space-6);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-raised)}.td-scoring>summary{display:flex;align-items:center;gap:var(--space-3);min-block-size:44px;padding-block:var(--space-3);padding-inline:var(--space-5);font-weight:var(--font-weight-bold);cursor:pointer;list-style:none}.td-scoring>summary::-webkit-details-marker{display:none}.td-scoring>summary:after{content:"";inline-size:.5rem;block-size:.5rem;margin-inline-start:auto;border-block-end:1.5px solid currentColor;border-inline-end:1.5px solid currentColor;transform:rotate(45deg);transition:transform var(--duration-fast, .16s) var(--ease-out, ease-out)}.td-scoring[open]>summary:after{transform:rotate(-135deg)}.td-scoring__body{padding-block:0 var(--space-5);padding-inline:var(--space-5);display:grid;gap:var(--space-4);font-size:var(--type-caption);color:var(--text-muted)}.td-scoring__bands{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-2)}.td-scoring__bands li{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-3);padding-block:var(--space-2);border-block-start:1px solid var(--line-soft)}.td-scoring__band-range{font-family:var(--font-mono, monospace);font-size:var(--type-micro);font-variant-numeric:tabular-nums;color:var(--text-muted);min-inline-size:4.5rem}.td-scoring__band-name{font-weight:var(--font-weight-bold);color:var(--text)}.td-scoring__band-desc{flex-basis:100%;font-size:var(--type-micro)}@media(min-width:700px){.td-scoring__band-desc{flex-basis:auto;flex:1;min-inline-size:16rem}}html[data-tool-printing] .td-scoring,html[data-tool-printing] .tp-boundary{display:none}.td-research{display:grid;gap:var(--space-3);max-inline-size:46rem}.td-research__cta{align-self:start;font-weight:var(--font-weight-medium);color:var(--accent-text)}.tp-boundary__head{max-inline-size:62ch;display:grid;gap:var(--space-4)}.tp-boundary__head h2{font-size:var(--type-h2);line-height:var(--leading-heading);font-weight:var(--font-weight-display)}.tp-boundary__head p{color:var(--text-muted)}.tp-boundary__points{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),1fr));gap:var(--space-5);margin-block:var(--space-7) 0}.tp-boundary__point{padding-block-start:var(--space-4);border-block-start:1px solid var(--line)}.tp-boundary__point dt{font-weight:var(--font-weight-bold);margin-block-end:var(--space-2)}.tp-boundary__point dd{margin:0;font-size:var(--type-caption);color:var(--text-muted)}}
