.lb{margin:20px 0}
.lb *{box-sizing:border-box}
.lb h1{font-size:22px;margin:0 0 8px}
.lb h2{font-size:18px;margin:8px 0 12px}
.lb h3{font-size:16px;margin:18px 0 10px}
.lb-heading,.lb-actions,.lb-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.lb-heading{justify-content:space-between;margin-bottom:18px}
.lb-rows{display:grid;gap:16px;margin:16px 0}
.lb-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:16px 0}
.lb-card{overflow:hidden}
.lb-card-body,.lb-detail-body,.lb-form-body{padding:16px}
.lb-card-image{display:block;width:100%;height:160px;object-fit:cover}
.lb-detail-image{display:block;width:100%;max-height:320px;object-fit:cover}
.lb-card-footer{margin-top:16px}
.lb-meta{font-size:12px;opacity:.8}
.lb-fields{margin:16px 0}
.lb-field{margin:10px 0}
.lb-field dt{font-weight:bold;margin-bottom:4px}
.lb-field dd{margin:0;overflow-wrap:anywhere}
.lb-field img{max-width:100%;height:auto;max-height:200px}
.lb-control{display:block;margin:0 0 16px}
.lb-control>span{display:block;font-weight:bold;margin-bottom:5px}
.lb .textbox,.lb select,.lb textarea{max-width:100%;padding:7px}
.lb-control>.textbox,.lb-control>select,.lb-control>textarea{width:100%}
.lb-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:12px}
.lb-filter label{display:block;font-size:12px}
.lb-filter label span{display:block;margin-bottom:4px}
.lb-filter label{max-width:100%}
.lb-people{display:flex;gap:18px;flex-wrap:wrap;margin:12px 0 20px}
.lb-person{display:flex;gap:10px;align-items:center;min-width:170px}
.lb-person-image{width:48px;height:48px;object-fit:cover;flex-shrink:0}
.lb-person-placeholder{width:48px;height:48px;border:1px solid currentColor;display:flex;align-items:center;justify-content:center;opacity:.5}
.lb-notice,.lb-errors{padding:12px;margin:12px 0;border:1px solid currentColor}
.lb-pagination{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
.lb-inline-form{display:inline-block;margin:6px 8px 6px 0}
.lb-inline-form button{cursor:pointer}
.lb-intro,.lb-summary{line-height:1.6;overflow-wrap:anywhere}
.lb-people-form{margin:20px 0}
.lb-people-form select,.lb-people-form input{margin:0 8px 8px 0}
.lb-empty{padding:20px}
.lb-form textarea{min-height:110px}
.lb-status{font-style:italic}
.lb-archive{margin:0 0 15px}
@media(max-width:600px){.lb-grid{grid-template-columns:1fr}
.lb-heading{align-items:flex-start}
.lb-filter label{width:100%}
.lb-filter .textbox,.lb-filter select{width:100%}
.lb-detail-body,.lb-card-body{padding:12px}
}
