/* Yazdırılabilir sayfalar: fiyat listesi ve masa QR kartları */
* { box-sizing: border-box; }
body {
    margin: 0; background: #e7e7ea; color: #1a1a1a;
    font-family: var(--font-body, system-ui, sans-serif);
}
.print-bar {
    position: sticky; top: 0; z-index: 5;
    display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap;
    padding: 12px 20px; background: #1a1a1a; color: #fff;
}
.print-bar a { color: #fff; text-decoration: none; }
.print-bar button, .print-bar .btn {
    background: var(--brand, #18181b); color: #fff; border: 0; border-radius: 10px;
    padding: 10px 16px; font: inherit; font-weight: 700; cursor: pointer;
}
.print-bar label { font-size: 14px; display: inline-flex; gap: 6px; align-items: center; }

.sheet-a4 {
    width: 210mm; min-height: 297mm; margin: 20px auto; padding: 14mm 14mm 12mm;
    background: #fff; box-shadow: 0 4px 30px rgba(0,0,0,.12);
}

/* ---------- Fiyat listesi ---------- */
.pl-head {
    display: flex; align-items: center; gap: 16px;
    border-bottom: 3px solid var(--brand, #18181b); padding-bottom: 10px; margin-bottom: 14px;
}
.pl-logo { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; }
.pl-head h1 { margin: 0; font-size: 26px; }
.pl-head p { margin: 2px 0 0; color: #555; font-size: 13px; }
.pl-columns { column-count: 2; column-gap: 12mm; }
.pl-category { break-inside: avoid; margin-bottom: 14px; }
.pl-category h2 {
    font-size: 15px; text-transform: uppercase; letter-spacing: .06em;
    color: var(--brand, #18181b); margin: 0 0 6px; padding-bottom: 3px; border-bottom: 1px solid #ddd;
}
.pl-note { font-size: 11px; color: #666; margin: 0 0 4px; }
.pl-group-name { font-weight: 700; font-size: 12px; margin: 8px 0 2px; }
.pl-row { display: flex; align-items: baseline; gap: 6px; font-size: 12.5px; padding: 2px 0; }
.pl-name small { color: #666; }
.pl-allergens { color: #b45309; font-size: 9px; font-weight: 700; }
.pl-dots { flex: 1; border-bottom: 1px dotted #aaa; transform: translateY(-3px); }
.pl-price { font-weight: 700; white-space: nowrap; }
.pl-foot { margin-top: 12px; padding-top: 8px; border-top: 1px solid #ddd; font-size: 10px; color: #444; }
.pl-foot p { margin: 3px 0; }
.pl-legend { white-space: nowrap; margin-right: 8px; }

/* ---------- Masa QR kartları ---------- */
.qr-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8mm; }
.qr-card {
    break-inside: avoid; border: 1.5px dashed #bbb; border-radius: 6mm;
    padding: 8mm 6mm; text-align: center; display: flex; flex-direction: column; align-items: center;
}
.qr-card .qr-cafe { font-weight: 800; font-size: 18px; margin: 0; }
.qr-card .qr-logo { width: 16mm; height: 16mm; border-radius: 50%; object-fit: cover; margin-bottom: 2mm; }
.qr-card .qr-code { width: 52mm; height: 52mm; margin: 4mm 0; }
.qr-card .qr-code svg { width: 100%; height: 100%; display: block; }
.qr-card .qr-table {
    display: inline-block; background: var(--brand, #18181b); color: #fff;
    font-weight: 800; font-size: 16px; padding: 2mm 6mm; border-radius: 999px;
}
.qr-card .qr-hint { margin: 3mm 0 0; font-size: 12px; color: #555; }
.qr-card.is-hidden { display: none; }

@page { size: A4; margin: 0; }
@media print {
    body { background: #fff; }
    .no-print { display: none !important; }
    .sheet-a4 { margin: 0; box-shadow: none; width: auto; min-height: auto; }
    .qr-sheet { page-break-after: always; }
    * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
@media screen and (max-width: 800px) {
    .sheet-a4 { width: 100%; margin: 0; padding: 16px; min-height: 0; }
    .pl-columns { column-count: 1; }
    .qr-grid { grid-template-columns: 1fr; }
}

/* Yazı stili ve ikonlar */
.pl-head h1, .pl-category h2, .qr-card .qr-cafe { font-family: var(--font-head, inherit); }
.print-bar a, .print-bar button { display: inline-flex; align-items: center; gap: 8px; }
.print-bar .icon { width: 18px; height: 18px; }
