.fcard{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:13px;padding:22px 22px 18px;transition:box-shadow .18s,transform .18s,border-color .18s;display:flex;position:relative}.fcard:hover{box-shadow:var(--shadow-2);border-color:var(--line-strong);transform:translateY(-2px)}.fcard.is-sel{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.fcard__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.fcard__name{font-family:var(--font-serif);letter-spacing:-.018em;font-size:1.32rem;font-weight:400;line-height:1.1}.fcard__one{color:var(--ink-2);margin:0;font-size:13.5px;line-height:1.5}.fcard__row{flex-direction:column;gap:6px;display:flex}.fcard__lbl{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);font-size:9.5px}.fcard__pats{flex-wrap:wrap;gap:6px;display:flex}.fcard__scen{color:var(--ink-soft);font-size:13px;line-height:1.5}.fcard__iops{flex-wrap:wrap;gap:6px;display:flex}.fcard__foot{border-top:1px solid var(--line-2);justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:13px;display:flex}.fcard__detail{font-family:var(--font-mono);color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:3px;font-size:12px;transition:text-decoration-color .14s}.fcard__detail:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.cmp-add{font-family:var(--font-mono);letter-spacing:.04em;border-radius:var(--radius-sm);border:1px solid var(--line-strong);color:var(--ink-2);background:var(--paper);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:5px 11px 5px 9px;font-size:11.5px;transition:all .14s;display:inline-flex}.cmp-add:hover{border-color:var(--ink);color:var(--ink)}.cmp-add__icon{border:1.5px solid;border-radius:4px;flex:none;place-items:center;width:14px;height:14px;font-size:11px;line-height:1;display:grid}.cmp-add[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.cmp-add[aria-pressed=true] .cmp-add__icon{border-color:var(--paper)}@keyframes cmp-shake{0%{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}to{transform:translate(0)}}.cmp-add.is-shake{animation:.42s both cmp-shake}
.card-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.no-results{text-align:center;color:var(--ink-mute);grid-column:1/-1;padding:60px 20px}.no-results .mono{font-family:var(--font-mono);margin-bottom:12px;font-size:13px;display:block}
.fw-matrix{width:100%}.fw-matrix__table{border-collapse:collapse;table-layout:fixed;width:100%}.fw-matrix__corner,.fw-matrix__col{font-family:var(--font-mono);font-size:var(--label);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);vertical-align:bottom;border-bottom:1px solid var(--line);text-align:center;overflow-wrap:anywhere;padding:10px 4px;font-weight:500}.fw-matrix__corner{text-align:left;width:150px}.fw-matrix__col{border-bottom:2px solid var(--accent)}.fw-matrix__col-link{color:inherit;text-decoration:none}.fw-matrix__col-link:hover{color:var(--ink);text-decoration:underline}.fw-matrix--diagonal .fw-matrix__grid{padding-left:var(--fw-head-overhang)}.fw-matrix--diagonal .fw-matrix__col{height:var(--fw-head-height);white-space:nowrap;padding:0;position:relative;overflow:visible}.fw-matrix--diagonal .fw-matrix__col-link{transform-origin:100% 100%;white-space:nowrap;position:absolute;bottom:8px;right:0;transform:rotate(45deg)}.fw-matrix__row-head{text-align:left;font-family:var(--font-sans);font-size:var(--small);color:var(--ink-2);border-bottom:1px solid var(--line-2);overflow-wrap:anywhere;padding:6px 10px 6px 0;font-weight:500}.fw-matrix__row-head a{color:inherit;text-decoration:none}.fw-matrix__row-head a:hover{text-decoration:underline}.fw-matrix__cell{border-bottom:1px solid var(--line-2);text-align:center;padding:0}.fw-matrix__cell-link{min-height:var(--tap);border-radius:var(--r-sm);justify-content:center;align-items:center;display:flex}.fw-matrix__cell-link:hover{background:var(--paper-3)}.fw-matrix__cell.is-empty{height:var(--tap);line-height:var(--tap)}.fw-matrix__mark{display:inline-block}.fw-matrix__mark.is-native{background:var(--ink);border-radius:2px;width:11px;height:11px}.fw-matrix__mark.is-composable{border:1.5px solid var(--ink-soft);border-radius:2px;width:11px;height:11px}.fw-matrix__mark.is-supporting{background:var(--ink-mute);border-radius:var(--r-pill);width:7px;height:7px}.fw-matrix__mark.is-custom{border:1.5px dashed var(--ink-mute);border-radius:2px;width:9px;height:9px}.fw-matrix__mark.is-none{background:var(--line-strong);border-radius:var(--r-pill);width:3px;height:3px}.fw-matrix__caption{text-align:left;font-size:var(--small);color:var(--ink-soft);padding-top:12px}.fw-matrix__legend{font-family:var(--font-mono);font-size:var(--label);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:6px 18px;margin-top:14px;display:flex}.fw-matrix__legend-label{color:var(--ink-mute)}.fw-matrix__legend-item{align-items:center;gap:7px;display:inline-flex}.fw-matrix__stack{grid-template-columns:repeat(var(--cols-cat), minmax(0, 1fr));margin:0;padding:0;list-style:none}.fw-matrix__pcard{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r);padding:var(--card-pad);border-top:2px solid var(--accent)}.fw-matrix__pcard-title{font-size:var(--h3);margin:0 0 10px}.fw-matrix__pcard-title a{color:inherit;text-decoration:none}.fw-matrix__pcard-title a:hover{text-decoration:underline}.fw-matrix__pcard-empty{font-family:var(--font-mono);font-size:var(--small);color:var(--ink-mute)}.fw-matrix__pcard-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.fw-matrix__pcard-fw{min-height:var(--tap);border-radius:var(--r-sm);color:var(--ink-2);font-family:var(--font-sans);font-size:var(--small);align-items:center;gap:10px;padding:0 4px;text-decoration:none;display:flex}.fw-matrix__pcard-fw:hover{background:var(--paper-3)}.fw-matrix__pcard-lvl{font-family:var(--font-mono);font-size:var(--label);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin-left:auto}
