/* Fiches A8 à imprimer (Premium) et leur aperçu dans l'onglet Premium */

/* printable A8 cards (52 x 74 mm), 9 per A4 sheet, fronts then mirrored backs for double-sided printing */
#print-root { display: none; }
@media print {
  @page { size: A4 portrait; margin: 0; }
  html, body { background: #fff !important; margin: 0 !important; padding: 0 !important; }
  body.printing > *:not(#print-root) { display: none !important; }
  body.printing #print-root { display: block; }
}
.sheet { width: 210mm; height: 297mm; box-sizing: border-box; padding: 37.5mm 27mm; display: grid; grid-template-columns: repeat(3, 52mm); grid-template-rows: repeat(3, 74mm);
  break-after: page; page-break-after: always; background: #fff; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.sheet:last-child { break-after: auto; page-break-after: auto; }
.pc { position: relative; width: 52mm; height: 74mm; box-sizing: border-box; outline: 0.2mm dashed #9aa3ad; outline-offset: -0.1mm; overflow: hidden;
  color: #16191d; font-family: "Times New Roman", Times, "Liberation Serif", serif; background: #fff; }
.pc-in { position: absolute; left: 50%; top: 50%; width: 74mm; height: 52mm; box-sizing: border-box; padding: 3.2mm 4mm; overflow: hidden;
  display: flex; flex-direction: column; transform: translate(-50%, -50%) rotate(-90deg); }
.pc-back .pc-in { transform: translate(-50%, -50%) rotate(90deg); }
.pc.empty { outline-color: transparent; }
.pc-top { display: flex; justify-content: space-between; align-items: center; font-size: 6.5pt; color: #6b7480; }
.pc-lvl { border: 0.25mm solid currentColor; border-radius: 1mm; padding: 0 1.2mm; font-weight: 600; }
.pc-front-main { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 1.5mm; }
.pc-word { font-size: 17pt; line-height: 1.15; overflow-wrap: anywhere; }
.pc-word .art.der { color: #2459b8; } .pc-word .art.die { color: #b8323a; } .pc-word .art.das { color: #2f7d45; }
.pc-kind { font-size: 7pt; color: #6b7480; }
.pc-src { font-size: 6pt; color: #8a929c; text-align: center; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.pc-back .pc-in { font-size: 7.2pt; line-height: 1.25; gap: 1.1mm; }
.pc-tr { font-size: 9.6pt; font-weight: 700; line-height: 1.2; }
.pc-back .pk { font-size: 6pt; letter-spacing: .05em; text-transform: uppercase; color: #6b7480; font-weight: 700; }
.pc-back .pde { font-style: italic; font-size: 7.4pt; }
.pc-back .pfr { color: #4a525c; font-size: 7.2pt; }
.pc-back mark { background: none; color: inherit; font-weight: 700; text-decoration: underline; }
.pc-back .blk { display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; }
/* front of a verb with a particle: the word on top, its verb family in a circle below (js/features/print-cards.js, pcRing) */
.pc-pre { color: #c62828; }
.pc-sich { font-weight: 400; }
.pc-fam .pc-top { position: relative; z-index: 1; gap: 2mm; }
.pc-fam .pc-src { flex: 1; min-width: 0; text-align: center; }
.pc-famhead { text-align: center; margin-top: .4mm; position: relative; z-index: 1; }
.pc-fam .pc-word { font-size: 13pt; line-height: 1.1; }
.pc-fam .pc-kind { font-size: 6.5pt; }
.pc-lines { position: absolute; left: 0; top: 0; width: 74mm; height: 52mm; }
.pc-lines line { stroke: #c9d0d8; stroke-width: .25; }
.pc-lines ellipse { fill: none; stroke: #c9d0d8; stroke-width: .2; stroke-dasharray: .8 .8; }
.pc-hub { position: absolute; transform: translate(-50%, -50%); border-radius: 50%; background: #f1f2f4; border: .3mm solid #16191d; display: flex; align-items: center; justify-content: center; font-size: 6.2pt; }
.pc-node { position: absolute; transform: translate(-50%, -50%); background: #fff; padding: .2mm .7mm; border-radius: .8mm; font-size: 5.6pt; white-space: nowrap; line-height: 1.1; display: flex; flex-direction: column; align-items: center; }
.pc-nt { font-size: 4.8pt; color: #4a525c; font-style: italic; max-width: 17mm; overflow: hidden; text-overflow: ellipsis; }
.pc-node.cur { outline: .3mm solid #c62828; outline-offset: .2mm; }
.pc-back .pc-main { flex: 1 1 auto; min-height: 0; overflow: hidden; display: flex; flex-direction: column; gap: 1.1mm; }
.pc-memo { flex: none; margin-top: auto; border-top: .25mm dashed #b8bfc8; padding-top: .8mm; font-style: italic; font-size: 5.8pt; line-height: 1.2; color: #2b3138; }
.pc-memo .pk { font-style: normal; font-size: 5.4pt; color: #c62828 !important; }
.print-btn .tag { margin-left: 2px; }
.pc-sample { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; align-items: start; }
.pc-sample figure { margin: 0; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.pc-sample .pc-fit { width: 100%; overflow: hidden; }
.pc-sample figcaption { font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); font-weight: 600; }
.pc.pc-screen { width: 74mm; height: 52mm; outline: none; border: 1px dashed #9aa3ad; border-radius: 6px; box-shadow: 0 6px 18px rgba(0,0,0,.08); }
.pc.pc-screen .pc-in { position: absolute; inset: 0; left: 0; top: 0; width: auto; height: auto; transform: none; }
