/* assets/style.css — schlichtes, druckfreundliches UI */
:root{--b:#1f2937;--g:#6b7280;--bg:#f7fafc;--acc:#2563eb;--red:#dc2626}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,Segoe UI,Roboto,Arial;background:#fff;color:#111}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:.6rem 1rem;border-bottom:1px solid #e5e7eb;position:sticky;top:0;background:#fff}
.brand{font-weight:700}
.nav a{margin-right:.6rem;text-decoration:none;color:#111}
.user a{margin-left:.6rem}
.container{padding:1rem;max-width:1100px;margin:0 auto}
.headerbar{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:.5rem 0 1rem}
.badge{border:1px solid #e5e7eb;border-radius:.4rem;padding:.1rem .4rem;font-size:.85rem;color:#374151}
.weeknav{display:flex;gap:.5rem;flex-wrap:wrap}
.btn{border:1px solid #d1d5db;border-radius:.5rem;padding:.35rem .6rem;background:#fff;text-decoration:none;color:#111;display:inline-block}
.btn.primary{border-color:var(--acc);background:rgba(37,99,235,.08)}
.btn.danger{border-color:var(--red);background:rgba(220,38,38,.08)}
.grid{display:grid;grid-template-columns:120px repeat(5,1fr);gap:6px}
.grid > .cell:nth-child(6n+1) {
  display: flex;               
  align-items: center;         
  justify-content: center;     
  text-align: center;         
}

.cell{border:1px solid #e5e7eb;border-radius:.5rem;padding:.5rem;min-height:50px;white-space:pre-wrap}
.th{font-weight:600;background:#fafafa;}
.lunch{background:#fff8e1}
.ta{width:100%;min-height:80px;padding:.5rem;border:1px solid #d1d5db;border-radius:.5rem;font-family:inherit}
.formbar{margin-top:1rem;display:flex;gap:.5rem}
.hint{margin:.5rem 0;color:#6b7280;font-size:.9rem}
.table{width:100%;border-collapse:collapse}
.table th,.table td{border:1px solid #e5e7eb;padding:.5rem;text-align:left;}
.card{border:1px solid #e5e7eb;border-radius:.6rem;padding:.6rem;background:#fff}
.row{display:flex;gap:.5rem;flex-wrap:wrap}
.alert{padding:.5rem;border:1px solid #f59e0b;background:#fffbeb;border-radius:.5rem}
.footer{border-top:1px solid #e5e7eb;padding:1rem;text-align:center;margin-top:2rem}
@media print {
  .topbar,.weeknav,.formbar,.alert,.hint{display:none!important}
  .container{padding:0}
  .cell{min-height:40px}
}

.week-note {border:1px solid #e5e7eb;border-radius:.6rem;padding:.6rem;background:#fff;margin-bottom:1rem}
.week-note h2 {margin:.2rem 0 .4rem;font-size:1rem}
.week-note .note-content {white-space:pre-wrap}
.week-note-edit .ta {min-height:100px}
@media print {
  .week-note {page-break-inside:avoid}
}

@media print {
  @page { size: A4 landscape; margin: 10mm; }
  .topbar,.weeknav,.formbar,.alert,.hint{display:none!important}
  .container{padding:0}
  h1{margin:0 0 .5rem 0}
  .grid{gap:4px}
  .cell{min-height:32px; page-break-inside:avoid}
  *{-webkit-print-color-adjust:exact; print-color-adjust:exact}
}

@media print {
  body.print-compact { font-size: 11px; }
  body.print-compact h1 { font-size: 16px; margin-bottom: 6px; }
  body.print-compact .grid { gap: 2px; grid-template-columns: 95px repeat(5, 1fr); }
  body.print-compact .cell { padding: 4px; min-height: 24px; }
  body.print-compact .cell.th { padding: 4px; }
  body.print-compact .lunch { background: #fff8e1; } 
  body.print-compact .cell,
  body.print-compact .cell * { line-height: 1.2; }
}



@media print {
  body.print-ultra { font-size: 10px; }
  body.print-ultra .grid { gap: 1px; grid-template-columns: 90px repeat(5, 1fr); }
  body.print-ultra .cell { padding: 3px; min-height: 20px; }
}
