@layer ficha {

@scope (.cos-ficha) {

:scope { --realce: var(--il-verd); --realce-fosc: var(--il-verd-fosc); --realce-suau: var(--il-groc); }
.pg { height: 100%; display: grid; gap: 4mm; }
.bd-p1 { grid-template-rows: minmax(0, 1fr) minmax(0, 1fr); }
.bd-p2 { grid-template-rows: auto minmax(0, 1fr); }
.pg > .ex { min-height: 0; }


.bd-informatiu { height: 100%; display: grid; grid-template-rows: auto minmax(0, 1fr); gap: 3mm; }
.bd-capcalera { display: grid; grid-template-columns: 58mm minmax(0, 1fr); gap: 5mm; }
.bd-foto-a { width: 58mm; aspect-ratio: 4 / 3; display: grid; }
.bd-text { align-self: stretch; display: grid; align-content: center; padding: 2mm 4mm; font-weight: 700; line-height: 1.45; background: var(--realce-suau); border: var(--gruix) solid var(--realce-fosc); border-radius: var(--radi); }
.bd-buits { min-height: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 2mm 5mm; }
.bd-buit { display: flex; align-items: center; flex-wrap: nowrap; gap: 1.5mm; margin: 0; padding: 0 3mm; border-bottom: var(--gruix) dashed var(--realce-fosc); font-weight: 700; }
.bd-buit .r { flex: none; }
.bd-buit span { white-space: nowrap; font-size: .95em; }


.bd-gos { height: 100%; display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.25fr); gap: 5mm; }
.bd-carnet { min-height: 0; display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto; align-content: space-between; gap: 3mm; padding: 2mm; border: var(--gruix) solid var(--realce-fosc); border-radius: var(--radi); background: var(--paper); }
.bd-foto-b { width: 100%; aspect-ratio: 4 / 3; display: grid; }
.bd-dades { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5mm 4mm; margin: 0; }
.bd-dades div { display: grid; padding: .5mm 0; border-bottom: .3mm solid var(--realce); }
.bd-dades dt { font-weight: 800; font-size: .75em; color: var(--realce-fosc); line-height: 1.2; }
.bd-dades dd { margin: 0; font-weight: 700; font-size: .9em; line-height: 1.3; }
.bd-quin { min-height: 0; display: grid; grid-template-rows: repeat(3, minmax(0, 1fr)); gap: 2mm; }
.bd-pregunta { display: grid; grid-template-columns: minmax(0, 1fr); align-content: center; gap: 1mm; padding: 0 3mm; border-bottom: var(--gruix) dashed var(--realce); }
.bd-q { font-weight: 800; line-height: 1.25; font-size: .95em; }
.bd-ops { display: flex; flex-wrap: nowrap; gap: 1.5mm 3mm; font-weight: 700; font-size: .8em; }
.bd-ops .tria { flex: 1 1 auto; justify-content: flex-start; white-space: nowrap; gap: 1.5mm; padding: 1.5mm 2mm; background: var(--realce-suau); border-radius: 8px; }


.bd-oriol { display: grid; grid-template-columns: 46mm minmax(0, 1fr); gap: 5mm; }
.bd-foto-c { width: 46mm; aspect-ratio: 5 / 8; display: grid; }
.bd-uneix { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); column-gap: 12mm; }
.bd-col { display: grid; grid-template-rows: repeat(4, 17mm); gap: 3mm; align-content: center; }
.bd-pregunta-u, .bd-frase-u { display: flex; align-items: center; gap: 3mm; padding: 0 3mm; font-weight: 700; line-height: 1.25; border: var(--gruix) solid var(--realce-fosc); border-radius: var(--radi); }
.bd-pregunta-u { justify-content: space-between; background: var(--realce-suau); }
.bd-frase-u { background: var(--paper); }


.bd-obert { height: 100%; display: grid; grid-template-columns: 82mm minmax(0, 1fr); gap: 5mm; }
.bd-foto-d { width: 82mm; aspect-ratio: 5 / 8; display: grid; }

}
}
