.bf-app{min-height:25rem}.bf-kicker{font:.75rem/1.4 var(--font-data);letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent)}.bf-intro{max-width:54rem;padding:1rem 0 4rem}.bf-intro h2,.bf-main h2,.bf-result h2{font-size:clamp(2rem,3.5vw,3.75rem);line-height:1.12;letter-spacing:-.04em;margin:.5rem 0 1.5rem}.bf-intro>p:not(.bf-kicker){max-width:40rem;font-size:var(--text-lg)}.bf-actions,.bf-nav{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.bf-actions{margin-top:2rem}.bf-app button{cursor:pointer}.bf-primary{background:var(--color-accent);color:var(--color-on-accent);border:1px solid var(--color-accent);padding:.8rem 1.5rem;font-weight:650;min-height:44px}.bf-primary:hover{background:var(--color-accent-hover)}.bf-primary:disabled{opacity:.5;cursor:not-allowed}.bf-layout{display:grid;grid-template-columns:minmax(12rem,17rem) minmax(0,48rem);gap:clamp(2rem,5vw,6rem)}.bf-rail ol{list-style:none;padding:0;margin:0;border-left:1px solid var(--color-line)}.bf-rail li{position:relative}.bf-rail li:before{content:"";position:absolute;width:.6rem;height:.6rem;border-radius:50%;background:var(--color-paper);border:1px solid var(--color-line);left:-.35rem;top:1.15rem}.bf-rail li.active:before{background:var(--color-accent);border-color:var(--color-accent)}.bf-rail li.completed:before{background:var(--color-ink);border-color:var(--color-ink)}.bf-rail li.active{border-left:2px solid var(--color-accent);margin-left:-1px}.bf-rail button{background:none;border:0;text-align:left;padding:.7rem .8rem .7rem 1.25rem;min-height:44px;width:100%;color:var(--color-muted)}.bf-rail li.active button{color:var(--color-ink);font-weight:650}.bf-rail button span{font:.75rem var(--font-data);color:var(--color-accent);margin-right:.75rem}.bf-rail button small{display:block;color:var(--color-muted);font:.7rem var(--font-data);padding-left:2.4rem}.bf-main{min-width:0}.bf-field{margin:0 0 1.5rem}.bf-field label,.bf-choice-group legend{display:block;font-weight:650;margin-bottom:.55rem}.bf-required{color:var(--color-muted);font-size:.85em;font-weight:400}.bf-field input,.bf-field textarea{width:100%;max-width:100%;padding:.8rem .9rem;border:1px solid var(--color-line);border-radius:0;background:var(--color-surface);color:var(--color-ink);min-height:44px}.bf-field textarea{resize:vertical}.bf-field [aria-invalid=true]{border-color:var(--color-error)}.bf-choice-group{border:0;padding:0;margin:0 0 1.75rem;min-width:0}.bf-options{display:grid;grid-template-columns:minmax(0,1fr);gap:.55rem}.bf-choice{display:flex;min-width:0;gap:.8rem;align-items:center;border:1px solid var(--color-line);background:var(--color-surface);padding:.7rem .9rem;min-height:48px;cursor:pointer}.bf-choice span{min-width:0;overflow-wrap:anywhere}.bf-choice:has(input:checked){border-color:var(--color-accent);box-shadow:inset 3px 0 var(--color-accent);font-weight:650}.bf-choice input{accent-color:var(--color-accent);flex:none;width:1.1rem;height:1.1rem}.bf-asset-list{border-top:1px solid var(--color-line);margin:1.5rem 0 2rem}.bf-asset-list .bf-choice-group{display:grid;grid-template-columns:minmax(7rem,12rem) minmax(0,1fr);gap:1rem;padding:1rem 0;border-bottom:1px solid var(--color-line);margin:0}.bf-asset-list .bf-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.bf-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.bf-metric{border-top:1px solid var(--color-line);padding-top:1rem}.bf-metric .bf-options{grid-template-columns:repeat(2,minmax(0,1fr))}.bf-hint{color:var(--color-muted)}.bf-consent{border-top:1px solid var(--color-line);padding:1.5rem 0}.bf-consent label{display:flex;gap:.75rem;align-items:flex-start;margin-bottom:1rem}.bf-consent input{accent-color:var(--color-accent);width:1.2rem;height:1.2rem;flex:none}.bf-nav{justify-content:space-between;border-top:1px solid var(--color-line);padding-top:1.25rem;margin:2rem 0 1rem}.bf-nav button:not(.bf-primary),.bf-save button,.bf-recovery button,.bf-review button,.bf-result button{min-height:44px;padding:.6rem .9rem;background:none;border:1px solid var(--color-line);color:var(--color-ink)}.bf-save{color:var(--color-muted);font:.8rem var(--font-data);min-height:44px;display:flex;flex-wrap:wrap;align-items:center;gap:1rem}.bf-save button,.bf-recovery button{max-width:100%;overflow-wrap:anywhere}.bf-error,.bf-notice{color:var(--color-error)}.bf-error-summary,.bf-recovery,.bf-notice{border-left:3px solid var(--color-error);background:var(--color-surface);padding:1rem 1.25rem;margin:1rem 0 2rem}.bf-error-summary button{background:none;border:0;color:var(--color-error);text-decoration:underline;text-align:left}.bf-recovery{display:grid;gap:.75rem;justify-items:start}.bf-review section,.bf-result section{border-top:1px solid var(--color-line);padding:1rem 0}.bf-review section{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.3rem 1rem;align-items:center}.bf-review h3,.bf-result h3{margin:0;font-size:1.15rem}.bf-review dl{grid-column:1;margin:0}.bf-review dl>div{display:grid;grid-template-columns:minmax(0,12rem) minmax(0,1fr);gap:.5rem;padding:.25rem 0;overflow-wrap:anywhere}.bf-review dt{color:var(--color-muted)}.bf-review dd{margin:0}.bf-review button{grid-column:2;grid-row:1 / span 2}.bf-result{max-width:52rem}.bf-result ul{margin-bottom:0}@media(max-width:48rem){.bf-layout{display:block}.bf-rail{display:none}.bf-asset-list .bf-choice-group{display:block}.bf-asset-list .bf-options,.bf-metrics{grid-template-columns:1fr}.bf-nav{position:sticky;bottom:0;z-index:5;background:var(--color-paper);margin-inline:calc(-1 * var(--gutter));padding:.75rem var(--gutter) calc(.75rem + env(safe-area-inset-bottom));box-shadow:0 -.5rem 1rem #2027240f}}@media(max-width:24rem){.bf-asset-list .bf-options,.bf-metric .bf-options{grid-template-columns:1fr}}@media print{.bf-rail,.bf-nav,.bf-save,.bf-actions,.bf-recovery{display:none}}.bf-captcha-container{height:100px;min-width:0;max-width:100%}.bf-captcha{margin-block:1.5rem;min-width:0}.bf-captcha>p{min-height:3em}@media(max-width:48rem){.bf-review section{grid-template-columns:minmax(0,1fr)}.bf-review dl>div{grid-template-columns:minmax(0,1fr)}.bf-review button{grid-column:1;grid-row:auto;justify-self:start}}
