.calendar-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:15px}.calendar-controls h2{flex:1;margin:0 12px;font-size:28px}.calendar-status{margin-bottom:20px;font-size:13px}.month-grid{overflow:auto;background:white;border:1px solid #ddd;border-radius:12px}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));min-width:770px}.calendar-weekdays{background:#111;color:#fff;font-size:11px;letter-spacing:1px;text-align:center;padding:12px 0}.calendar-week{position:relative;border-top:1px solid #ddd;min-width:770px}.calendar-days{position:absolute;inset:0}.calendar-day{border-right:1px solid #e1e1e1;padding:10px 8px}.calendar-day:last-child{border:0}.calendar-day.outside{background:#f6f6f6;color:#777}.calendar-day.today time{background:#111;color:white;border-radius:50%;padding:3px 6px}.calendar-day time{display:block;width:fit-content;font-size:13px;margin-bottom:8px}.day-count{display:inline-block;font-size:10px;border-radius:4px;padding:3px 5px;margin:0 3px 3px 0;font-weight:700}.day-count.opening{background:#187544;color:white}.day-count.closing{background:#111;color:white}.calendar-bars{position:relative;display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));gap:4px 0;padding:100px 0 12px;pointer-events:none}.calendar-bars .store-bar{pointer-events:auto;background:#e6e6e6;border:1px solid #888;border-left:4px solid #222;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-size:11px;padding:3px 7px;margin:0 3px;color:#111}.store-bar:focus-visible{outline:3px solid #187544;outline-offset:1px}.calendar-issues{margin-top:18px;padding:15px;background:#fff;border:1px solid #ddd;border-radius:9px}.calendar-issues p{margin-top:8px;font-size:12px}

.calendar-bars .store-bar{display:flex;align-items:center;gap:5px}.bar-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.close-star{flex:none;font-size:16px;line-height:1;margin-left:auto;padding:0 1px}.bar-color-dialog{border:1px solid #ccc;border-radius:14px;padding:24px;max-width:430px;width:calc(100% - 32px);color:#111;background:#fff;box-shadow:0 15px 70px #0004}.bar-color-dialog::backdrop{background:#0008}.bar-color-dialog h3{margin:0 0 12px;font-size:24px}.bar-color-dialog p{margin:8px 0;overflow-wrap:anywhere}.bar-color-dialog label{display:block;margin-top:20px;margin-bottom:8px;font-weight:650}.bar-color-dialog input[type=color]{width:100%;height:45px;border:1px solid #bbb;background:#fff;padding:4px;cursor:pointer}.color-swatches{display:flex;gap:10px;margin:14px 0;flex-wrap:wrap}.color-swatch{width:30px;height:30px;border:1px solid #777;border-radius:50%;padding:0}.color-swatch:focus-visible{outline:3px solid #111;outline-offset:3px}.color-note{font-size:12px;color:#666}.color-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-top:20px}.color-actions button:last-child{background:#111;color:#fff}.calendar-key .star-key{font-size:12px;color:#111}
