.fn{--fn-radius:14px;margin:0 0 3rem}.fn__panel{background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--fn-radius);box-shadow:var(--shadow-bloom);padding:clamp(1.1rem,3vw,1.9rem)}.fn__controls{gap:.8rem;margin-bottom:1.1rem;display:grid}@media (width>=620px){.fn__controls{grid-template-columns:repeat(2,minmax(0,1fr))}.fn__field--wide{grid-column:1/-1}}@media (width>=880px){.fn__controls{grid-template-columns:2fr 1fr .7fr;align-items:end}.fn__field--wide{grid-column:auto}}.fn__go{width:100%;font-size:var(--step-1);padding:1rem}.fn__hint{font-size:var(--step--1);color:var(--ink-faint);text-align:center;max-width:none;margin:.6rem 0 0}.fn__hint[data-error]{color:#a1332f;font-weight:550}.fn__options{border-top:1px solid var(--line);margin-top:1.2rem;padding-top:.6rem}.fn__options>summary{cursor:pointer;font-size:var(--step--1);color:var(--bloom-deep);padding:.4rem 0;font-weight:600;list-style:none}.fn__options>summary::-webkit-details-marker{display:none}.fn__options>summary:before{content:"⌄";margin-right:.4rem;transition:transform .15s;display:inline-block}.fn__options[open]>summary:before{transform:rotate(180deg)}.fn__options-body{padding:.8rem 0 .2rem}.fn__checks{gap:.5rem;margin-bottom:1rem;display:grid}.fn__check{font-size:var(--step--1);cursor:pointer;align-items:center;gap:.45rem;margin:0;font-weight:500;display:flex}.fn__check input{width:auto}.fn__grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.8rem;display:grid}.fn__tip{color:var(--ink-faint);margin:.6rem 0 0;font-size:.76rem}.fn__results{margin-top:2.2rem}.fn__results-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:1rem;display:flex}.fn__h{font-family:var(--font-body);font-size:var(--step--1);color:var(--ink-soft);margin:0;font-weight:650}.fn__tools{flex-wrap:wrap;gap:.4rem;display:flex}.fn__list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}@media (width>=460px){.fn__list{grid-template-columns:repeat(auto-fill,minmax(225px,1fr))}}.fn__card{background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--fn-radius);flex-direction:column;gap:.45rem;padding:.8rem .9rem .65rem;transition:border-color .14s,box-shadow .14s;display:flex}.fn__card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-bloom)}.fn__card[data-saved=true]{border-color:var(--stem);background:color-mix(in srgb, var(--stem-mist) 45%, white)}.fn__name{font-family:var(--font-display);font-variation-settings:"WONK" 1,"opsz" 34;font-size:var(--step-1);color:var(--ink);max-width:none;margin:0;font-weight:600;line-height:1.15}.fn__tags{flex-wrap:wrap;gap:.28rem;display:flex}.fn__tag{background:var(--paper-sunk);color:var(--ink-faint);border-radius:4px;padding:.16rem .4rem;font-size:.66rem;font-weight:600}.fn__tag--f{background:var(--bloom-mist);color:var(--bloom-deep)}.fn__tag--m{background:var(--stem-mist);color:var(--stem)}.fn__actions{gap:.3rem;margin-top:auto;display:flex}.fn__mini{border:1px solid var(--line);color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:6px;padding:.32rem .58rem;font-size:.72rem;font-weight:600}.fn__mini:hover{background:var(--bloom-mist);color:var(--bloom-deep);border-color:var(--bloom-mist)}.fn__mini[aria-pressed=true]{background:var(--stem);border-color:var(--stem);color:#fff}.fn__ling{background:var(--paper-sunk);border-radius:var(--fn-radius);font-size:var(--step--1);color:var(--ink-soft);margin-top:1.4rem;padding:1rem 1.2rem}.fn__ling strong{color:var(--ink)}.fn__saved{background:var(--stem-mist);border-radius:var(--fn-radius);margin-bottom:1.5rem;padding:1rem 1.1rem}.fn__saved-h{font-family:var(--font-body);font-size:var(--step--1);color:var(--stem);margin:0 0 .6rem;font-weight:650}.fn__saved-list{flex-wrap:wrap;gap:.4rem;margin:0 0 .7rem;padding:0;list-style:none;display:flex}.fn__chip{background:var(--paper-raised);border:1px solid var(--line);font-size:var(--step--1);border-radius:100px;align-items:center;padding:.25rem .35rem .25rem .8rem;font-weight:600;display:inline-flex}.fn__chip button{cursor:pointer;color:var(--ink-faint);background:0 0;border:0;padding:0 .3rem;font-size:1.05rem;line-height:1}.fn__empty{background:var(--paper-sunk);border-radius:var(--fn-radius);color:var(--ink-soft);max-width:none;padding:1.4rem}
