.bk-root{--bk-accent:#175cd3;--bk-border:#dce2ea;font:inherit;color:inherit}.bk-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.bk-toolbar label{display:grid;gap:5px;font-size:14px;flex:1 1 145px}.bk-toolbar input,.bk-toolbar select{width:100%;padding:10px;border:1px solid var(--bk-border);border-radius:8px;background:#fff;color:#202b3a}.bk-tabs{display:flex;gap:8px;margin-bottom:15px}.bk-tab,.bk-controls button{cursor:pointer;padding:10px 15px;border:1px solid var(--bk-border);background:#fff;border-radius:8px;color:#202b3a}.bk-tab[aria-pressed=true]{background:var(--bk-accent);color:#fff}.bk-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.bk-controls button:disabled{opacity:.4;cursor:not-allowed}.bk-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--bk-border);border-left:1px solid var(--bk-border)}.bk-weekday,.bk-day,.bk-empty{border-right:1px solid var(--bk-border);border-bottom:1px solid var(--bk-border);padding:8px;min-width:0}.bk-weekday{text-align:center;font-weight:700;background:#f3f6fa}.bk-day,.bk-empty{min-height:112px}.bk-day-number{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.bk-event{display:block;padding:7px;margin-bottom:5px;border-radius:6px;background:#eaf1ff;color:#143b80;text-decoration:none;overflow-wrap:anywhere;font-size:12px;line-height:1.35}.bk-event small{display:block;margin-top:3px}.bk-event:hover{text-decoration:underline}.bk-list{display:grid;gap:12px}.bk-list-item{display:grid;grid-template-columns:minmax(150px,220px) 1fr;align-items:start;gap:12px;padding:14px;border:1px solid var(--bk-border);border-radius:10px}.bk-list-date{font-weight:600}.bk-list-item .bk-event{margin:0;font-size:15px}.bk-empty-message{padding:16px}.bk-root :focus-visible{outline:3px solid var(--bk-accent);outline-offset:2px}@media(max-width:700px){.bk-calendar{overflow-x:auto;grid-template-columns:repeat(7,minmax(105px,1fr))}.bk-day,.bk-empty{min-height:95px}.bk-list-item{grid-template-columns:1fr}.bk-toolbar label{flex-basis:135px}}

/* OLBA 1.2: responsive improvements; scoped to the calendar only. */
.bk-root{--bk-accent:#e60012;--bk-border:#e0e0e0;max-width:100%;min-width:0}
.bk-root .bk-tab[aria-pressed="true"]{background:#e60012;border-color:#e60012;color:#fff}
.bk-root .bk-list-item{grid-template-columns:minmax(180px,230px) minmax(0,1fr);align-items:center;gap:18px;background:#fff;border-left:3px solid #e60012}
.bk-root .bk-list-date{font-weight:700;color:#222;line-height:1.4}
.bk-root .bk-date-label{display:block;color:#666;font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}
.bk-root .bk-list-info{min-width:0;display:flex;align-items:center;gap:14px;justify-content:space-between}
.bk-root .bk-list-info .bk-event{flex:1;min-width:0;background:#fff6f6;border-left:3px solid #e60012;color:#a8000c;padding:12px}
.bk-root .bk-details-link{flex-shrink:0;display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #e60012;border-radius:6px;color:#b3000f;background:#fff;text-decoration:none;font-size:13px;font-weight:700}
.bk-root .bk-details-link:hover,.bk-root .bk-details-link:focus-visible{background:#e60012;color:#fff}
.bk-root .bk-calendar .bk-event{background:#fff0f1;color:#a8000c;border-left:3px solid #e60012}
.bk-root .bk-toolbar input,.bk-root .bk-toolbar select{min-width:0;max-width:100%}
@media(max-width:767px){
 .bk-root .bk-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .bk-root .bk-toolbar label{min-width:0;flex:auto;font-size:13px}
 .bk-root .bk-toolbar input,.bk-root .bk-toolbar select{font-size:16px;min-height:44px}
 .bk-root .bk-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 .bk-root .bk-tab{padding:10px 6px;font-size:13px;white-space:normal}
 .bk-root .bk-controls{gap:8px}
 .bk-root .bk-controls button{min-width:44px;min-height:44px}
 .bk-root .bk-calendar{overflow-x:auto;grid-template-columns:repeat(7,minmax(95px,1fr))}
 .bk-root .bk-day,.bk-root .bk-empty{min-height:90px;padding:5px}
 .bk-root .bk-list-item{grid-template-columns:1fr;gap:9px;padding:12px}
 .bk-root .bk-list-info{flex-wrap:wrap;align-items:stretch;gap:8px}
 .bk-root .bk-list-info .bk-event{flex-basis:100%}
 .bk-root .bk-details-link{width:100%;justify-content:center}
}
@media(max-width:380px){.bk-root .bk-toolbar{grid-template-columns:1fr}}
