/* Meisterlich-Genießen Look */
:root{ --bg:#f6f5f3; --card:#ffffff; --ink:#1f1f1f; --muted:#6a6966; --accent:#c9a362; }
*{box-sizing:border-box}
body{margin:0; font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; color:var(--ink); background:var(--bg);}
.container{max-width:980px; margin:0 auto; padding:24px;}
.header{margin:8px 0 18px;}
.header h1{margin:0 0 4px; font-size:28px; letter-spacing:.2px;}
.header .sub{color:var(--muted); margin:0;}
.card{background:var(--card); border:1px solid #e8e6e2; border-radius:16px; padding:16px; box-shadow:0 6px 20px rgba(0,0,0,.04);}
.block{margin-bottom:14px;}
label{font-weight:600; display:block; margin-bottom:6px;}
input, textarea, select{width:100%; padding:10px 12px; border:1px solid #dedbd6; border-radius:10px; background:#fff;}
.row{display:flex; gap:12px; align-items:center; flex-wrap:wrap;}
.chip{display:inline-flex; align-items:center; gap:8px; background:#faf7f1; border:1px solid #e6dcc8; padding:8px 12px; border-radius:999px; cursor:pointer;}
.actions{display:flex; gap:10px; justify-content:flex-end; margin-top:12px;}
.btn{background:#f0eee9; border:1px solid #ddd7cf; border-radius:999px; padding:10px 16px; cursor:pointer;}
.btn.primary{background:var(--accent); border-color:var(--accent); color:#fff; font-weight:700;}
.gang{border:1px dashed #ddd7cf; border-radius:12px; padding:12px; margin:12px 0; background:#fff;}
.table{width:100%; border-collapse:collapse; margin-top:8px;}
.table th,.table td{border:1px solid #eee; padding:8px; font-size:14px;}
.table td input{min-width:150px; font-size:14px;} /* Fix: Zutat-Inputs besser lesbar */
.row-actions{margin-top:8px; display:flex; gap:8px;}
.footer{color:var(--muted); text-align:center; margin:16px 0;}

/* PDF Template (Dompdf/print) */
.pdf-wrap{padding:18mm 16mm; font-size:11pt; color:#1a1a1a;}
.pdf-head{display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:10mm; border-bottom:2px solid #000; padding-bottom:3mm;}
.pdf-brand{font-weight:800; letter-spacing:.5px; font-size:18pt;}
.pdf-meta{font-size:9pt; line-height:1.6;}
.pdf-title{margin:0; font-size:20pt; letter-spacing:.2pt;}
.pdf-section{page-break-inside:avoid; margin-bottom:8mm;}
.pdf-section h2{font-size:13pt; margin:0 0 3mm; border-bottom:1px solid #000; padding-bottom:2mm;}
.pdf-cols{display:flex; gap:10mm;}
.pdf-col{flex:1; min-width:0;}
.pdf-list{margin:0; padding-left:4mm;}
.pdf-list li{margin:0 0 1.4mm;}
.pdf-notes{font-size:9pt; color:#444; margin-top:8mm;}

@page{ size:A4; margin:12mm 12mm; }
@media print{
  body{background:#fff;}
}

/* Mobile Responsive */
@media (max-width: 768px) {
  .container { padding: 16px; }
  .header h1 { font-size: 24px; }
  .card { padding: 12px; border-radius: 12px; }
  .row { flex-direction: column; align-items: stretch; }
  .row > div { width: 100% !important; }
  .table { font-size: 12px; }
  .table th, .table td { padding: 6px; }
  .actions { flex-wrap: wrap; }
  .btn { width: 100%; text-align: center; }
  .gang { padding: 10px; }
  input, textarea, select { font-size: 16px; } /* prevents zoom on iOS */
}
