#wpadminbar #wp-admin-bar-chronos-hours-toggle.chronos-hours-bar-closed > a.ab-item { background-color: #dc3545 !important; color: #ffffff !important; }
#wpadminbar #wp-admin-bar-chronos-hours-toggle.chronos-hours-bar-open > a.ab-item { background-color: #28a745 !important; color: #ffffff !important; }

.chronos-hours-closed-notice { position:relative; display:flex; align-items:center; justify-content:center; gap:10px; }
.chronos-hours-notice-text-row { display:flex; align-items:baseline; justify-content:center; flex-wrap:wrap; gap:0 10px; text-align:center; }
.chronos-hours-closed-message { display:block; font-weight:700; }
#chronos-hours-notice-wrapper .chronos-hours-reopening-trigger { display:inline !important; appearance:none !important; -webkit-appearance:none !important; margin:0 !important; padding:0 !important; min-width:0 !important; min-height:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; background-color:transparent !important; background-image:none !important; color:inherit !important; font-family:inherit !important; font-size:inherit !important; font-style:inherit !important; font-weight:400 !important; line-height:inherit !important; text-align:inherit !important; text-decoration:none !important; box-shadow:none !important; text-shadow:none !important; cursor:pointer !important; touch-action:manipulation; -webkit-tap-highlight-color:rgba(0,0,0,0.14); }
#chronos-hours-notice-wrapper .chronos-hours-reopening-trigger:hover,
#chronos-hours-notice-wrapper .chronos-hours-reopening-trigger:focus { color:inherit !important; background:transparent !important; background-color:transparent !important; background-image:none !important; border:0 !important; box-shadow:none !important; }
#chronos-hours-notice-wrapper .chronos-hours-reopening-trigger:focus { outline:1px dotted currentColor; outline-offset:3px; }
@supports selector(:focus-visible) {
    #chronos-hours-notice-wrapper .chronos-hours-reopening-trigger:focus { outline:0; }
    #chronos-hours-notice-wrapper .chronos-hours-reopening-trigger:focus-visible { outline:1px dotted currentColor; outline-offset:3px; }
}

.chronos-hours-close-icon { display:block; width:22px; height:22px; flex:0 0 auto; color:currentColor; fill:currentColor; pointer-events:none; }
.chronos-hours-deadline-close .chronos-hours-close-icon { width:22px; height:22px; }
.chronos-hours-schedule-close .chronos-hours-close-icon { width:22px; height:22px; }
.chronos-hours-schedule-backdrop { display:none; position:fixed; inset:0; z-index:100000; background:rgba(0,0,0,0.35); }
.chronos-hours-schedule-modal { display:none; position:fixed; top:50%; left:50%; z-index:100001; width:auto; min-width:min(260px, calc(100vw - 32px)); max-width:min(480px, calc(100vw - 32px)); max-height:calc(100vh - 64px); overflow:auto; transform:translate(-50%, -50%); box-sizing:border-box; padding:22px 22px 20px; border-radius:10px; background:#333; color:#fff; box-shadow:0 10px 30px rgba(0,0,0,0.35); text-align:center; font-size:15px; line-height:1.6; }
.chronos-hours-schedule-backdrop.is-open { display:block; }
.chronos-hours-schedule-modal.is-open { display:block; }
body.chronos-hours-schedule-open { overflow:hidden; }
.chronos-hours-schedule-modal-header { position:static; display:block; margin-bottom:12px; padding:0 34px; text-align:center; }
.chronos-hours-schedule-modal-header strong { display:block; color:#fff; font-size:15px; line-height:1.35; }
.chronos-hours-schedule-close { position:absolute !important; top:8px !important; right:8px !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; width:32px !important; height:32px !important; min-width:32px !important; min-height:32px !important; margin:0 !important; padding:0 !important; border:0 !important; border-radius:999px !important; appearance:none !important; -webkit-appearance:none !important; background:transparent !important; background-color:transparent !important; background-image:none !important; color:#fff !important; font-size:0 !important; line-height:1 !important; cursor:pointer !important; box-shadow:none !important; text-shadow:none !important; z-index:2 !important; touch-action:manipulation; -webkit-tap-highlight-color:rgba(255,255,255,0.18); }
.chronos-hours-schedule-close:hover, .chronos-hours-schedule-close:focus { background:transparent !important; background-color:transparent !important; outline:0 !important; box-shadow:0 0 0 2px rgba(255,255,255,0.65) !important; }

.chronos-hours-schedule-content { display:block; width:auto; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.chronos-hours-schedule-content ul, .chronos-hours-schedule-modal ul { display:block; width:max-content; max-width:100%; margin:10px auto 0 !important; padding:0 !important; color:#fff; list-style:none !important; text-align:left; }
.chronos-hours-schedule-content li, .chronos-hours-schedule-modal li { color:#fff; margin:0 !important; padding:0 !important; list-style:none !important; }
.chronos-hours-schedule-modal li::marker { content:''; font-size:0; }
.chronos-hours-schedule-row { display:grid; grid-template-columns:max-content max-content; column-gap:14px; align-items:baseline; margin:0 0 8px !important; }
.chronos-hours-schedule-day { display:block; min-width:32px; padding:0; font-weight:600; white-space:nowrap; text-align:right; }
.chronos-hours-schedule-time { display:block; white-space:nowrap; text-align:left; }
.chronos-hours-schedule-separator { display:inline-block; padding:0 8px; opacity:0.85; }
.chronos-hours-schedule-segment { display:inline-block; }
.chronos-hours-common-break { display:block; margin:12px 0 0 !important; padding-top:12px !important; border-top:1px solid rgba(255,255,255,0.35); list-style:none !important; font-weight:600; text-align:center; white-space:normal; }
.chronos-hours-closed-loop-button,
.chronos-hours-closed-loop-button:hover,
.chronos-hours-closed-loop-button:focus,
.chronos-hours-closed-loop-button:active {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:max-content !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    padding:0.65em 1.25em !important;
    box-sizing:border-box !important;
    border-radius:999px !important;
    text-indent:0 !important;
    white-space:normal !important;
    line-height:1.2 !important;
    text-align:center !important;
    cursor:not-allowed !important;
    opacity:1 !important;
    overflow:visible !important;
}
.chronos-hours-closed-loop-button > * {
    display:none !important;
}
.chronos-hours-closed-loop-button::before,
.chronos-hours-closed-loop-button::after {
    content:none !important;
    display:none !important;
}
.chronos-hours-loop-error { display:block !important; margin:1em 0; }
.chronos-hours-deadline-minutes { display:inline-block; transform-origin:center; }
.chronos-hours-deadline-minutes.is-refreshing { animation:chronos-hours-deadline-pulse .45s ease-out; }
.chronos-hours-wrapper-deadline { display:flex !important; align-items:center; justify-content:center; gap:10px; }
.chronos-hours-deadline-content { min-width:0; }
#chronos-hours-notice-wrapper .chronos-hours-deadline-close { display:inline-flex !important; flex:0 0 auto; align-items:center !important; justify-content:center !important; appearance:none !important; -webkit-appearance:none !important; width:28px !important; height:28px !important; min-width:28px !important; min-height:28px !important; margin:0 !important; padding:0 !important; box-sizing:border-box !important; border:0 !important; border-radius:999px !important; background:transparent !important; background-color:transparent !important; background-image:none !important; color:inherit !important; font-size:0 !important; line-height:1 !important; text-align:center !important; text-decoration:none !important; text-shadow:none !important; box-shadow:none !important; cursor:pointer !important; touch-action:manipulation; -webkit-tap-highlight-color:rgba(255,255,255,0.18); }
#chronos-hours-notice-wrapper .chronos-hours-deadline-close:hover,
#chronos-hours-notice-wrapper .chronos-hours-deadline-close:focus { background:transparent !important; background-color:transparent !important; background-image:none !important; color:inherit !important; outline:0 !important; box-shadow:0 0 0 2px currentColor !important; }
#chronos-hours-notice-wrapper .chronos-hours-closed-notice-close { display:inline-flex !important; flex:0 0 auto; align-items:center !important; justify-content:center !important; appearance:none !important; -webkit-appearance:none !important; width:28px !important; height:28px !important; min-width:28px !important; min-height:28px !important; margin:0 !important; padding:0 !important; box-sizing:border-box !important; border:0 !important; border-radius:999px !important; background:transparent !important; background-color:transparent !important; background-image:none !important; color:inherit !important; font-size:0 !important; line-height:1 !important; text-align:center !important; text-decoration:none !important; text-shadow:none !important; box-shadow:none !important; cursor:pointer !important; touch-action:manipulation; -webkit-tap-highlight-color:rgba(255,255,255,0.18); }
#chronos-hours-notice-wrapper .chronos-hours-closed-notice-close:hover,
#chronos-hours-notice-wrapper .chronos-hours-closed-notice-close:focus { background:transparent !important; background-color:transparent !important; background-image:none !important; color:inherit !important; outline:0 !important; box-shadow:0 0 0 2px currentColor !important; }
@keyframes chronos-hours-deadline-pulse {
    0% { transform:scale(1); }
    45% { transform:scale(1.16); }
    100% { transform:scale(1); }
}

@media (max-width: 640px) {
    #chronos-hours-notice-wrapper {
        font-size:16px !important;
        line-height:1.35;
        max-width:calc(100vw - 20px) !important;
        padding:12px !important;
        -webkit-text-size-adjust:100%;
        text-size-adjust:100%;
    }

    .chronos-hours-notice-text-row {
        display:block;
    }

    #chronos-hours-notice-wrapper .chronos-hours-reopening-trigger {
        display:inline !important;
        margin-top:0 !important;
        min-height:0 !important;
        text-decoration:none !important;
        border:0 !important;
        background:transparent !important;
        color:inherit !important;
        font-weight:400 !important;
    }
    .chronos-hours-schedule-modal {
        width:auto !important;
        min-width:min(260px, calc(100vw - 28px)) !important;
        max-width:calc(100vw - 28px) !important;
        max-height:calc(100vh - 48px);
        max-height:calc(100dvh - 48px);
        padding:22px 18px 18px;
        border-radius:10px;
        font-size:15px;
        line-height:1.6;
    }

    .chronos-hours-schedule-content {
        width:100%;
        max-width:100%;
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
    }

    .chronos-hours-schedule-content ul,
    .chronos-hours-schedule-modal ul {
        width:max-content !important;
        max-width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }

    .chronos-hours-schedule-row {
        grid-template-columns:max-content max-content;
        column-gap:14px;
        margin-bottom:9px !important;
    }

    .chronos-hours-schedule-day {
        min-width:32px;
    }

    .chronos-hours-schedule-close {
        top:8px !important;
        right:8px !important;
        width:32px !important;
        height:32px !important;
        border:0 !important;
        background:transparent !important;
        background-color:transparent !important;
        font-size:0 !important;
    }
}

@media (max-width: 420px) {
    #chronos-hours-notice-wrapper {
        font-size:14px !important;
        line-height:1.3;
        max-width:calc(100vw - 16px) !important;
        padding:10px !important;
        -webkit-text-size-adjust:100%;
        text-size-adjust:100%;
    }

    .chronos-hours-schedule-modal {
        width:auto !important;
        min-width:min(250px, calc(100vw - 20px)) !important;
        max-width:calc(100vw - 20px) !important;
        padding:20px 14px 16px;
        font-size:14px;
    }

    .chronos-hours-schedule-row {
        grid-template-columns:max-content max-content;
        column-gap:10px;
        margin-bottom:8px !important;
    }

    .chronos-hours-schedule-day {
        min-width:28px;
    }

    .chronos-hours-schedule-separator {
        padding:0 5px;
    }
}

/* Compact auto-width notice: keep the message and reopening information as predictable lines. */
#chronos-hours-notice-wrapper.chronos-hours-wrapper-auto-width .chronos-hours-notice-text-row {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:2px;
    min-width:0;
}
#chronos-hours-notice-wrapper.chronos-hours-wrapper-auto-width .chronos-hours-closed-message,
#chronos-hours-notice-wrapper.chronos-hours-wrapper-auto-width .chronos-hours-reopening-trigger {
    max-width:100%;
    overflow-wrap:normal;
    word-break:normal;
}
