@layer ficha {

@scope (.cos-ficha) {

.p1, .p2 { height: 100%; display: grid; gap: 4mm; }
.p1 > .ex, .p2 > .ex { min-height: 0; }
.ex-cos { flex: 1; min-height: 0; display: flex; }
.ex-cos > * { flex: 1; min-width: 0; min-height: 0; }
.foto { position: relative; display: block; min-height: 0; }
.foto > .img, .foto > .img-ph { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; object-fit: fill; }
.carta { display: grid; place-items: center; border-radius: var(--radi); border: var(--gruix) solid var(--acento); background: var(--paper); padding: 0; min-height: 0; }
.cmp { display: flex; align-items: center; justify-content: center; gap: 1.5mm; border: var(--gruix) solid var(--linia); border-radius: var(--radi); background: var(--paper); }
.r.lletra { padding: 0; line-height: 1; }
.p1 { grid-template-rows: 1.7fr 0.8fr 0.5fr; }
.cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 3mm; }
.card { display: grid; grid-template-columns: 36mm minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); gap: 3mm; padding: 2mm; border: var(--gruix) solid var(--linia); border-radius: var(--radi); background: var(--paper); min-height: 0; }
.card .tx { display: grid; align-content: center; gap: 3mm; min-width: 0; }
.card .mp { text-align: center; font-size: 1.8em; }
.card .r.lletra { width: 100%; height: 1.5em; font-size: 1.1em; border-radius: 6px; }
.sils { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 3mm; }
.sil { display: grid; grid-template-rows: 1fr 1fr; place-items: center; border: var(--gruix) solid var(--acento); border-radius: var(--radi); background: var(--acento-suau); padding: 1.5mm; min-height: 0; }
.sil .model { font-size: 2.2em; }
.sil .r.lletra { width: 100%; height: 100%; font-size: 1.3em; background: var(--paper); border-radius: 6px; }
.comps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4mm; }
.comps .r.lletra { width: 1.7em; height: 1.4em; font-size: 1.1em; }
.comps .lletra-gran { font-size: 1.5em; }

}
}
