.gl-tabs { display: inline-flex; gap: 2px; padding: 3px; border: 1px solid var(--line, rgba(120,100,60,.25)); border-radius: 10px; background: var(--panel, rgba(255,250,235,.6)); justify-self: start; }
.gl-tab { font: inherit; font-size: .88rem; font-weight: 600; padding: 5px 16px; border: 0; border-radius: 7px; background: transparent; color: var(--muted, #6f6550); cursor: pointer; }
.gl-tab:hover:not(:disabled) { color: inherit; }
.gl-tab-on { background: var(--gold, #b8892c); color: var(--on-gold, #fffaf0); }
.gl-tab:focus-visible { outline: 2px solid var(--gold, #b8892c); outline-offset: 2px; }
.gl-tab:disabled { opacity: .55; cursor: default; }
.lb-grid { display: grid; gap: 14px; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); align-items: start; }
.lb-day { display: inline-flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.lb-day-label { font-size: .92rem; min-width: 12ch; text-align: center; font-variant-numeric: tabular-nums; }
.lb-fig { margin: 0; display: grid; gap: 4px; }
.lb-row { display: grid; grid-template-columns: 112px minmax(0, 1fr); align-items: end; gap: 10px; }
.lb-pos { display: grid; font-size: .85rem; font-weight: 600; line-height: 1.2; overflow-wrap: anywhere; }
.lb-spark { width: 100%; height: 40px; display: block; }
.lb-sched { fill: var(--gold-3, #e2c98a); }
.lb-act { fill: var(--ink, #3b3220); }
.lb-gap { fill: rgba(120,100,60,.07); }
.lb-axis { display: flex; justify-content: space-between; margin-left: 122px; font-size: 11px; color: var(--muted, #6f6550); }
.lb-legend { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; margin: 0; }
.lb-key { display: inline-block; width: 10px; height: 10px; border-radius: 2px; vertical-align: middle; }
.lb-key-sched { background: var(--gold-3, #e2c98a); }
.lb-key-act { background: var(--ink, #3b3220); }
.lb-key-gap { background: rgba(120,100,60,.14); border: 1px dashed var(--line-strong, rgba(120,100,60,.45)); }
.lb-details summary { cursor: pointer; font-size: .88rem; font-weight: 600; }
.lb-details summary:focus-visible { outline: 2px solid var(--gold, #b8892c); outline-offset: 2px; }
.lb-table td, .lb-table th { padding: 4px 8px; white-space: nowrap; }
.lb-pill-complete { color: var(--success, #2f7d4f); }
.lb-pill-scheduled_only { color: var(--warning, #9a6510); }
@media (max-width: 1023px) { .lb-grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 767px) { .lb-row { grid-template-columns: 84px minmax(0, 1fr); } .lb-axis { margin-left: 94px; } #lb-store { min-width: 0; width: 100%; } }
@media (prefers-reduced-motion: reduce) { .lb-page * { transition: none !important; animation: none !important; } }
