.mk-app, .mk-admin-wrap {
  --mk-border:#1f2937;
  --mk-soft:#f3f4f6;
  --mk-accent:#0f172a;
  --mk-muted:#334155;
  --mk-bg:#ffffff;
  font-family: Arial, Helvetica, sans-serif;
  color:#111827 !important;
}
.mk-app *, .mk-admin-wrap * { box-sizing:border-box; }
.mk-app .mk-card, .mk-admin-wrap .mk-card,
.mk-app label, .mk-admin-wrap label,
.mk-app legend, .mk-admin-wrap legend,
.mk-app p, .mk-admin-wrap p,
.mk-app td, .mk-admin-wrap td,
.mk-app th, .mk-admin-wrap th,
.mk-app h2, .mk-admin-wrap h2,
.mk-app h3, .mk-admin-wrap h3,
.mk-app span, .mk-admin-wrap span,
.mk-app strong, .mk-admin-wrap strong {
  color:#111827;
}
.mk-card { background:#fff; border:1px solid #d1d5db; border-radius:14px; padding:22px; margin:18px 0; box-shadow:0 8px 24px rgba(15,23,42,.07); }
.mk-card h2 { margin-top:0; font-size:22px; color:#0f172a; }
.mk-grid-form { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:16px; align-items:start; }
.mk-grid-form label, .mk-grid-form fieldset { display:flex; flex-direction:column; gap:7px; font-weight:600; color:#111827 !important; }
.mk-grid-form input, .mk-grid-form select, .mk-grid-form textarea, .mk-access-card input, .mk-search-form input {
  width:100%; max-width:100%; box-sizing:border-box; border:1px solid #cbd5e1; border-radius:9px; padding:10px 12px; font-size:14px; background:#fff !important; color:#111827 !important;
}
.mk-grid-form input::placeholder, .mk-grid-form textarea::placeholder, .mk-search-form input::placeholder { color:#64748b !important; }
.mk-grid-form textarea { min-height:74px; }
.mk-full { grid-column:1 / -1; }
.mk-button, .mk-app .mk-button, .mk-admin-wrap .mk-button { display:inline-flex; align-items:center; justify-content:center; border:0; background:#0f172a; color:#fff !important; border-radius:10px; padding:10px 16px; text-decoration:none; cursor:pointer; font-weight:700; line-height:1.2; }
.mk-button.secondary, .mk-app .mk-button.secondary, .mk-admin-wrap .mk-button.secondary { background:#475569; color:#fff !important; }
.mk-button.danger, .mk-app .mk-button.danger, .mk-admin-wrap .mk-button.danger { background:#991b1b; color:#fff !important; }
.mk-button:hover { filter:brightness(1.08); color:#fff !important; }
.mk-message { padding:12px 14px; border-radius:10px; margin:12px 0; border:1px solid; }
.mk-success { background:#ecfdf5; border-color:#10b981; color:#065f46; }
.mk-error { background:#fef2f2; border-color:#ef4444; color:#991b1b; }
.mk-workers-box { display:flex; flex-wrap:wrap; gap:10px; }
.mk-worker-choice { border:1px solid #cbd5e1; border-radius:999px; padding:8px 12px; background:#f8fafc !important; color:#111827 !important; flex-direction:row !important; display:none !important; font-weight:500 !important; }
.mk-worker-admin-row { display:grid; grid-template-columns:1fr 1.35fr; gap:10px; align-items:center; margin-bottom:10px; }
.mk-media-line { display:flex; gap:8px; align-items:center; }
.mk-media-line input { flex:1; }
.mk-worker-choice.is-visible { display:inline-flex !important; }
.mk-location-row { display:grid; grid-template-columns:1fr 2fr; gap:12px; margin-bottom:10px; align-items:start; }
.mk-location-row > input[type=hidden] { display:none; }
.mk-location-meta, .mk-location-delete { grid-column:1 / -1; font-size:13px; color:#334155 !important; font-weight:500 !important; }
.mk-location-delete { flex-direction:row !important; align-items:center; gap:7px !important; }
.mk-location-delete input { width:auto !important; }
.mk-table { width:100%; border-collapse:collapse; margin-top:12px; background:#fff; color:#111827; }
.mk-table th, .mk-table td { border:1px solid #d1d5db; padding:9px; text-align:left; vertical-align:top; color:#111827; }
.mk-table th { background:#e5e7eb; color:#111827; }
.mk-search-form { display:flex; gap:8px; align-items:center; margin-bottom:10px; }
.mk-search-form input { max-width:520px; }
.mk-toolbar { display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:16px 0; }
.mk-inline-form { display:inline-flex; margin:0; }
.mk-access-card { max-width:460px; margin:30px auto; }
.mk-access-card form { display:flex; gap:10px; }

/* A4 munkalap - egy oldalra optimalizált kimenet */
.mk-sheet-a4 { background:#fff; color:#111827; width:210mm; height:297mm; box-sizing:border-box; padding:8mm; margin:18px auto; border:1px solid #d1d5db; box-shadow:0 10px 28px rgba(0,0,0,.12); font-family:Arial, Helvetica, sans-serif; overflow:hidden; }
.mk-sheet-header { display:grid; grid-template-columns:38mm 1fr 62mm; gap:6mm; align-items:center; border-bottom:2px solid #0f172a; padding-bottom:3.5mm; margin-bottom:3.5mm; }
.mk-logo-box { height:19mm; display:flex; align-items:center; justify-content:center; border:0; border-radius:0; overflow:hidden; background:transparent; }
.mk-logo-box img { max-width:100%; max-height:100%; object-fit:contain; }
.mk-logo-placeholder { font-weight:800; color:#475569; letter-spacing:2px; }
.mk-title-box { text-align:left; }
.mk-title-box h1 { margin:0; font-size:25px; line-height:1; letter-spacing:1.5px; color:#0f172a; }
.mk-sheet-number { display:inline-block; margin-top:5px; border:1.5px solid #0f172a; border-radius:7px; padding:4px 9px; font-size:15px; font-weight:800; }
.mk-status { margin-top:4px; color:#334155; font-size:10px; text-transform:uppercase; letter-spacing:.6px; }
.mk-barcode-box { text-align:right; }
.mk-barcode-svg { width:66mm; height:12mm; display:block; margin-left:auto; }
.mk-barcode-text { font-size:9px; letter-spacing:1px; margin-top:1mm; color:#111827; text-align:center; }
.mk-parties-table { width:100%; border-collapse:collapse; margin-bottom:3.5mm; table-layout:fixed; }
.mk-parties-table th { border:1px solid #64748b; background:#e2e8f0; color:#0f172a; text-align:left; text-transform:uppercase; letter-spacing:.4px; font-size:11.5px; padding:5px 7px; }
.mk-parties-table td { border:1px solid #94a3b8; vertical-align:top; color:#111827; font-size:10.6px; line-height:1.28; padding:7px; }
.mk-panel { border:1px solid #94a3b8; border-radius:8px; padding:2.8mm; margin-bottom:3.2mm; break-inside:avoid; page-break-inside:avoid; }
.mk-panel h3 { margin:0 0 2mm; padding-bottom:1.1mm; border-bottom:1px solid #cbd5e1; font-size:11.5px; line-height:1.2; color:#0f172a; text-transform:uppercase; letter-spacing:.4px; }
.mk-panel p { margin:0; line-height:1.24; font-size:10.5px; color:#111827; }
.mk-details { width:100%; border-collapse:collapse; font-size:10.2px; }
.mk-details th, .mk-details td { border:1px solid #cbd5e1; padding:3.5px 5px; vertical-align:top; line-height:1.18; color:#111827; }
.mk-details th { width:21%; background:#f1f5f9; text-align:left; font-weight:700; color:#0f172a; }
.mk-textbox { min-height:14mm; max-height:14mm; border:1px solid #cbd5e1; border-radius:6px; padding:5px 7px; line-height:1.22; font-size:10.2px; overflow:hidden; color:#111827; }
.mk-textbox.large { min-height:39mm; max-height:39mm; }
.mk-signatures { display:grid; grid-template-columns:1fr 1fr; gap:16mm; margin-top:6mm; }
.mk-signature-block { position:relative; }
.mk-signature-images { height:13mm; display:flex; align-items:flex-end; justify-content:center; gap:3mm; margin-bottom:-1mm; }
.mk-signature-img { max-height:13mm; max-width:31mm; object-fit:contain; }
.mk-signatures span { display:block; height:0; border-bottom:1.5px solid #111827; }
.mk-signatures p { text-align:center; margin:3mm 0 0; color:#1f2937; font-size:9.5px; word-spacing:1.5px; }
.mk-footer { margin-top:3mm; border-top:1px solid #cbd5e1; padding-top:2mm; color:#334155; font-size:9px; text-align:center; }

@media (max-width: 760px) {
  .mk-grid-form, .mk-location-row, .mk-worker-admin-row { grid-template-columns:1fr; }
  .mk-parties-table, .mk-parties-table thead, .mk-parties-table tbody, .mk-parties-table tr, .mk-parties-table th, .mk-parties-table td { display:block; width:100%; }
  .mk-sheet-a4 { width:100%; height:auto; min-height:0; padding:18px; overflow:visible; }
  .mk-sheet-header { grid-template-columns:1fr; text-align:left; }
  .mk-title-box { text-align:left; }
  .mk-barcode-box { text-align:left; }
  .mk-barcode-svg { margin-left:0; width:100%; max-width:280px; }
  .mk-search-form, .mk-access-card form { flex-direction:column; align-items:stretch; }
}

@page { size:A4; margin:0; }
@media print {
  html, body { margin:0 !important; padding:0 !important; background:#fff !important; }
  body * { visibility:hidden !important; }
  .mk-sheet-a4, .mk-sheet-a4 * { visibility:visible !important; }
  .mk-sheet-a4 { position:absolute; left:0; top:0; margin:0 !important; box-shadow:none !important; border:0 !important; width:210mm !important; height:297mm !important; padding:8mm !important; page-break-after:avoid !important; overflow:hidden !important; }
  .no-print, .no-print * { display:none !important; visibility:hidden !important; }
}
