.oak-btn-loading{
    display:none;
}

.htmx-request .oak-btn-default{
    display:none;
}

.htmx-request .oak-btn-loading{
    display:inline;
}

.htmx-request button{
    opacity:0.7;
    pointer-events:none;
}

.oak-weeklyoff-card{
    width:100%;
    max-width:720px;
    background:#fff;
    border:1px solid #ececec;
    border-radius:22px;
    padding:24px;
    box-shadow:0 8px 30px rgba(0,0,0,0.04);
}

.oak-weeklyoff-top{
    display:flex;
    align-items:flex-start;
    gap:18px;
}

.oak-weeklyoff-content{
    flex:1;
}

.oak-weeklyoff-title{
    font-size:18px;
    font-weight:600;
    color:#111;
}

.oak-weeklyoff-subtitle{
    font-size:13px;
    color:#777;
    margin-top:4px;
}

.oak-weeklyoff-state-area{
    margin-top:18px;
}

.oak-weeklyoff-form{
    display:flex;
    gap:12px;
    align-items:center;
    animation:oakFadeDown 0.3s ease;
}

.oak-weeklyoff-form select{
    border:1px solid #ddd;
    border-radius:12px;
    padding:12px 14px;
    min-width:220px;
    outline:none;
    font-size:14px;
}

.oak-weeklyoff-form button{
    border:none;
    background:#111;
    color:#fff;
    padding:12px 18px;
    border-radius:12px;
    font-weight:600;
    cursor:pointer;
}

.oak-weeklyoff-status{
    background:linear-gradient(135deg,#16a34a,#22c55e);
    color:#fff;
    padding:22px;
    border-radius:18px;
    box-shadow:0 0 30px rgba(34,197,94,0.22);
    animation:oakFadeDown 0.3s ease;
}
.oak-status-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    cursor:pointer;
}

.oak-status-badge{
    display:inline-block;
    padding:8px 14px;
    border-radius:999px;
    background:rgba(255,255,255,0.18);
    backdrop-filter:blur(8px);
    font-size:13px;
    font-weight:600;
    margin-bottom:16px;
}

/*new*/
.oak-weeklyoff-toggle{
    font-size:18px;
    transition:transform 0.25s ease;
    user-select:none;
}

.oak-weeklyoff-details{
    max-height:0;
    overflow:hidden;
    transition:max-height 0.3s ease, margin-top 0.3s ease;
}

.oak-weeklyoff-status.active .oak-weeklyoff-details{
    max-height:500px;
    margin-top:14px;
}

.oak-weeklyoff-status.active .oak-weeklyoff-toggle{
    transform:rotate(180deg);
}

.oak-status-text,
.oak-weeklyoff-effective-note{
    margin-bottom:10px;
    color:#fff;
    line-height:1.5;
}
/*ends*/


.oak-status-text{
    font-size:14px;
    line-height:1.7;
    margin-bottom:10px;
}

.oak-switch-wrapper{
    position:relative;
    width:52px;
    height:30px;
    flex-shrink:0;
}

.oak-switch-wrapper input{
    opacity:0;
    width:0;
    height:0;
}

.oak-switch-slider{
    position:absolute;
    inset:0;
    background:#d7d7d7;
    border-radius:999px;
    transition:0.3s ease;
    cursor:pointer;
}

.oak-switch-slider:before{
    content:'';
    position:absolute;
    width:22px;
    height:22px;
    left:4px;
    top:4px;
    background:#fff;
    border-radius:50%;
    transition:0.3s ease;
    box-shadow:0 2px 8px rgba(0,0,0,0.15);
}

.oak-switch-wrapper input:checked + .oak-switch-slider{
    background:#22c55e;
}

.oak-switch-wrapper input:checked + .oak-switch-slider:before{
    transform:translateX(22px);
}

@keyframes oakFadeDown{
    from{
        opacity:0;
        transform:translateY(-8px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}
@media(max-width:768px){

    .oak-weeklyoff-form{
        flex-wrap:wrap;
    }

   .oak-weeklyoff-form select, .oak-weeklyoff-form button{
        width:100%;
    }

}
.artcurator-weeklyoff-timezone-note{
    margin-top:4px;
    font-size:12px;
    line-height:1.6;
    color:#7a7a7a;
    padding:10px 14px;
}
.warn-container{
    margin-top:22px;
    background:linear-gradient(135deg,#fff7ed,#fffbeb);
    border:1px solid #fed7aa;
    border-left:5px solid #f97316;
    border-radius:20px;
    padding:22px;
    box-shadow:0 8px 24px rgba(249,115,22,0.08);
}

.warn-card-title{
    font-size:16px;
    font-weight:700;
    color:#9a3412;
    margin-bottom:16px;
}

.important-warn{
    position:relative;
    padding-left:18px;
    color:#7c2d12;
    font-size:14px;
    line-height:1.7;
    margin-bottom:12px;
}

.important-warn:last-child{
    margin-bottom:0;
}

.important-warn:before{
    content:'';
    position:absolute;
    left:0;
    top:10px;
    width:7px;
    height:7px;
    border-radius:50%;
    background:#f97316;
}
.oak-weeklyoff-effective-note{
    margin-top:18px;
    padding:12px 14px;
    background:#ecfdf3;
    border:1px solid #bbf7d0;
    border-radius:12px;
    color:#166534;
    font-size:13px;
    line-height:1.6;
}