/* ===== D6: Karta technologiczna ===== */
.tcard-root { max-width: 900px; margin: 0 auto; display: flex; flex-direction: column; gap: 18px; }

.tcard {
    background: #fff; border: 1px solid #e6e9e2; border-radius: 16px;
    padding: 28px 32px;
}
.tcard-head { border-bottom: 2px solid #285A42; padding-bottom: 14px; margin-bottom: 18px; }
.tcard-eyebrow { color: #8a938b; font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; font-weight: 700; }
.tcard-title { font-size: 1.8rem; font-weight: 800; color: #1f2b23; margin: 2px 0 6px; }
.tcard-desc { color: #55605a; font-size: .95rem; }

.tcard-meta { display: flex; flex-wrap: wrap; gap: 22px; margin: 4px 0 0; }
.tcard-meta .m { display: flex; flex-direction: column; }
.tcard-meta .m .lbl { font-size: .72rem; text-transform: uppercase; letter-spacing: .04em; color: #9aa39c; font-weight: 600; }
.tcard-meta .m .val { font-size: 1.05rem; font-weight: 700; color: #234b39; }

.tcard-section-title { font-size: .85rem; text-transform: uppercase; letter-spacing: .05em; color: #8a938b; font-weight: 700; margin: 20px 0 8px; }

.tcard-table { width: 100%; border-collapse: collapse; }
.tcard-table th, .tcard-table td { padding: 9px 10px; font-size: .92rem; text-align: left; }
.tcard-table thead th { color: #8a938b; font-weight: 600; font-size: .76rem; text-transform: uppercase; letter-spacing: .03em; border-bottom: 1px solid #e6e9e2; }
.tcard-table tbody tr { border-bottom: 1px solid #f0f2ed; }
.tcard-table .num { text-align: right; white-space: nowrap; }
.tcard-table tfoot td { font-weight: 700; padding-top: 12px; }
.tcard-sub-name { color: #285A42; }
.tcard-missing { color: #b4452f; font-size: .82rem; }

.tcard-totals { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 18px; }
.tcard-kpi { border: 1px solid #e6e9e2; border-radius: 12px; padding: 12px 16px; min-width: 130px; }
.tcard-kpi .k-lbl { font-size: .74rem; color: #8a938b; text-transform: uppercase; letter-spacing: .03em; font-weight: 600; }
.tcard-kpi .k-val { font-size: 1.4rem; font-weight: 800; color: #285A42; line-height: 1.15; margin-top: 2px; }
.tcard-kpi.warn .k-val { color: #b4452f; }

.tcard-allergens { margin-top: 18px; }
.tcard-allergen-chip {
    display: inline-block; background: #fdf3e3; color: #8a6d1f; border: 1px solid #ecdcb6;
    border-radius: 999px; padding: 3px 12px; font-size: .85rem; font-weight: 600; margin: 0 6px 6px 0;
}

.tcard-foot { margin-top: 22px; padding-top: 12px; border-top: 1px dashed #d7ddd1; color: #9aa39c; font-size: .78rem; display: flex; justify-content: space-between; }

@media print {
    .sidebar, .topbar, .impersonation-bar, .no-print, .page-hero-actions { display: none !important; }
    .app-shell { display: block !important; }
    .main { margin: 0 !important; padding: 0 !important; }
    .tcard { border: none !important; padding: 0 !important; }
    .tcard-root { max-width: 100%; }
    body { background: #fff !important; }
    .tcard-kpi, .tcard-table, .tcard-head { break-inside: avoid; }
}
