/* Lehrzeug Jahresblick – werkzeugeigenes Design. Gemeinsames Design: /kern/kern.css */
.lz-sec-title .i { width: 18px; height: 18px; color: var(--teal-ink); }
.jb-kurse { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 6px; align-items: center; }
.jb-form { display: grid; gap: 10px; }
.jb-form .seg span { padding: 5px 10px; font-size: 13px; }
.jb-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; max-height: 320px; overflow: auto; }
.jb-list li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; gap: 6px; align-items: center; font-size: 13.5px; }
.jb-lt { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.jb-empty { color: var(--ink-3); font-size: 14px; }
.jb-wrap { padding: 10px; }
.jb-legend { list-style: none; margin: 10px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 13px; color: var(--ink-2); }
.jb-legend li { display: inline-flex; align-items: center; gap: 6px; }
/* Raster */
.jb-sheet { font-family: var(--font); color: #071B4A; background: #fff; padding: 12px; }
.jb-head { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; border-bottom: 2px solid #071B4A; margin-bottom: 6px; padding-bottom: 3px; }
.jb-head h1 { margin: 0; font-size: 18px; }
.jb-head span { font-size: 12px; font-weight: 600; color: #3D4B66; }
.jb-grid { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 9px; }
.jb-grid th { font-size: 9.5px; padding: 2px; color: #3D4B66; }
.jb-grid thead th { border-bottom: 1px solid #071B4A; }
.jb-grid tbody th { width: 16px; text-align: right; padding-right: 3px; color: #8E9AB0; font-weight: 600; }
.jb-grid td { position: relative; height: 15px; padding: 0 2px; border: 1px solid #E1E6EE; overflow: hidden; white-space: nowrap; vertical-align: middle; }
.jb-grid td.is-x { background: repeating-linear-gradient(45deg, #fff 0 3px, #F1F3F7 3px 6px); }
.jb-grid td.is-we { background: #EEF1F5; }
.jb-grid td.is-fe { background: #DDF2EA; }
.jb-grid td.is-ft { background: #FDE8E4; }
.jb-wd { display: inline-block; width: 13px; color: #8E9AB0; font-size: 8px; }
.jb-m { display: inline-block; padding: 0 3px; border-radius: 3px; font-weight: 700; font-size: 8.5px; line-height: 12px; color: #fff; vertical-align: middle; max-width: calc(100% - 14px); overflow: hidden; text-overflow: ellipsis; }
.jb-ka { background: #D63B2B; } .jb-test { background: #E08A00; } .jb-gfs { background: #7C3AED; } .jb-aus { background: #0B8F74; } .jb-ea { background: #2E7CF6; } .jb-sonst { background: #5B6372; } .jb-ue1 { background: #0EA5B7; }
.jb-ue { position: absolute; left: 0; top: 0; bottom: 0; width: 3px; }
.jb-ue.is-start { width: auto; right: 0; padding-left: 5px; font-size: 8px; font-weight: 700; color: #071B4A; background: linear-gradient(90deg, currentColor 0 3px, transparent 3px); white-space: nowrap; overflow: hidden; }
.jb-ue.u0 { color: #12C7A3; background-color: #12C7A3; } .jb-ue.u1 { color: #2E7CF6; background-color: #2E7CF6; } .jb-ue.u2 { color: #F5A623; background-color: #F5A623; } .jb-ue.u3 { color: #EC4F8F; background-color: #EC4F8F; }
.jb-ue.is-start { background-color: transparent; color: #071B4A; }
.jb-ue.is-start.u0 { background: linear-gradient(90deg, #12C7A3 0 3px, transparent 3px); } .jb-ue.is-start.u1 { background: linear-gradient(90deg, #2E7CF6 0 3px, transparent 3px); } .jb-ue.is-start.u2 { background: linear-gradient(90deg, #F5A623 0 3px, transparent 3px); } .jb-ue.is-start.u3 { background: linear-gradient(90deg, #EC4F8F 0 3px, transparent 3px); }
.jb-ue + .jb-wd, td .jb-ue ~ .jb-wd { margin-left: 4px; }
.jb-ftn { margin-left: 2px; font-size: 7.5px; color: #B1382A; }
.jb-key { margin: 5px 0 0; font-size: 9px; color: #3D4B66; display: flex; flex-wrap: wrap; align-items: center; gap: 3px 6px; }
.jb-key > span { display: inline-block; width: 12px; height: 10px; border: 1px solid #CCD6E1; vertical-align: middle; }
.jb-key .k-fe { background: #DDF2EA; } .jb-key .k-ft { background: #FDE8E4; } .jb-key .k-we { background: #EEF1F5; }
.k-ue { position: static !important; display: inline-block; width: 4px !important; height: 12px; }
.jb-listsheet h2 { margin: 12px 0 4px; font-size: 14px; border-bottom: 1px solid #CCD6E1; }
.jb-li { margin: 3px 0; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 13px; }
.jb-li .jb-m { font-size: 10px; line-height: 15px; padding: 0 6px; }
.jb-li small { color: #5B6372; }
.jb-sheet.is-all .jb-m { font-size: 7.5px; }
/* Druck A4 quer */
.jb-print { width: 297mm; height: 209mm; padding: 7mm 8mm 9mm; box-sizing: border-box; background: #fff; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.jb-print .jb-sheet { padding: 0; }
.jb-print .jb-head h1 { font-size: 13pt; }
.jb-print .jb-grid td { height: 4.9mm; }
.jb-print .jb-grid { font-size: 6.5pt; }
