/* Hallmark · component: library-composer + paywall-preview + growth-reports · genre: modern-minimal · theme: Midnight
 * states: default · hover · focus · active · disabled · loading · error · success
 * contrast: pass (40–41) · pre-emit critique: P5 H5 E5 S5 R5 V5
 */
.library-composer{display:grid;gap:var(--space-3)}.library-composer>p{max-width:68ch;color:var(--color-muted)}.library-composer article{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(110px,.55fr));gap:var(--space-3);align-items:end;padding:var(--space-3);border:1px solid var(--color-rule);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-muted);opacity:.68}.library-composer article.assigned{background:var(--color-paper-soft);color:var(--color-ink);opacity:1}.assign-check{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--space-2);align-items:center}.assign-check input{grid-row:1/3;accent-color:var(--color-accent)}.assign-check small{color:var(--color-muted)}.library-composer input,.library-composer select,.report-range input{min-height:44px}.paywall-preview{grid-column:1/-1;display:grid;gap:var(--space-3);align-content:end;min-height:420px;padding:clamp(20px,5vw,52px);border:1px solid var(--color-rule);border-radius:var(--radius-lg);background:var(--color-paper);color:var(--color-ink);background-size:cover;background-position:center}.paywall-preview[data-theme="ember"]{background:var(--color-paper-soft);color:var(--color-ink)}.paywall-preview[data-theme="minimal"]{background:var(--color-paper-raised);color:var(--color-ink)}.paywall-preview img{width:100%;max-height:160px;object-fit:cover;border-radius:var(--radius-sm)}.paywall-preview small{font-family:var(--font-mono);color:var(--color-accent)}.paywall-preview h3{max-width:18ch;margin:0;font-size:clamp(30px,5vw,52px);line-height:1.05}.paywall-preview ul{display:grid;gap:7px;margin:0;padding-inline-start:20px;color:var(--color-muted)}.preview-prices{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-2)}.preview-prices span{display:grid;gap:4px;padding:var(--space-3);border:1px solid var(--color-rule);border-radius:var(--radius-sm)}.preview-prices b{font-variant-numeric:tabular-nums}.paywall-preview button{justify-self:start;min-height:44px}.report-range{display:flex;align-items:end;gap:var(--space-3);flex-wrap:wrap;margin-block-end:var(--space-5)}.report-range label{display:grid;gap:6px}.growth-summary{margin-block:0 var(--space-6)}.funnel-list{display:grid;gap:var(--space-2)}.funnel-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-rule);background:var(--color-paper)}.funnel-list article>span{display:grid;place-items:center;width:32px;height:32px;border-radius:var(--radius-pill);background:var(--color-paper-soft);color:var(--color-muted);font-family:var(--font-mono)}.funnel-list div{display:grid;gap:3px}.funnel-list small{color:var(--color-muted)}.funnel-list strong,.funnel-list em{font-style:normal;font-variant-numeric:tabular-nums}.funnel-list em{min-width:72px;text-align:end;color:var(--color-accent)}
.library-composer input:disabled,.library-composer select:disabled,.report-range button:disabled{cursor:not-allowed;opacity:.55}.library-composer article[data-state="loading"],.report-range[data-state="loading"]{cursor:wait;opacity:.7}.library-composer article[data-state="error"]{border-color:var(--color-error)}.library-composer article[data-state="success"]{border-color:var(--color-success)}
@media(hover:hover) and (pointer:fine){.library-composer article:hover{background:var(--color-paper-soft)}.funnel-list article:hover{background:var(--color-paper-raised)}}
@media(max-width:56rem){.library-composer article{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.assign-check{grid-column:1/-1}.report-range{align-items:stretch;flex-direction:column}.report-range button{min-height:44px}.funnel-list article{grid-template-columns:auto minmax(0,1fr) auto}.funnel-list em{grid-column:2/4;text-align:start}}
@media(max-width:28rem){.library-composer article{grid-template-columns:minmax(0,1fr)}.assign-check{grid-column:auto}.preview-prices{grid-template-columns:minmax(0,1fr)}.funnel-list article{grid-template-columns:auto minmax(0,1fr)}.funnel-list strong{grid-column:2}.funnel-list em{grid-column:2}}
@media(prefers-reduced-motion:reduce){.library-composer article,.funnel-list article{transition-duration:150ms!important;transform:none!important}}
