
.sc-wrapper{margin:12px 0; clear: both;}
.sc-nav{
display:flex;
justify-content:center;
align-items:center;
gap:18px;
margin:8px 0 16px;
font-weight:600;
}
.sc-nav button{
padding:7px 12px;
border:1px solid #d69aaa;
background:#fff;
color:#c95d7c;
cursor:pointer;
border-radius:2px;
line-height:1.2;
}
.sc-period{min-width:140px;text-align:center;color:#444}

.sc-calendar{
display:grid;
grid-template-columns:repeat(6,minmax(0,1fr));
gap:10px;
}
.sc-month{
width:100%;
border-collapse:collapse;
table-layout:auto;
border:1px solid #9f9f9f;
font-size:12px;
background:#fff;
}
.sc-month-title{
background:#d3d3d3;
font-weight:700;
text-align:center;
padding:6px;
}
.sc-month td{
border:1px solid #bcbcbc;
padding:2px 6px;
height:22px;
vertical-align:middle;
}
.sc-day{
width:70px;
max-width:70px;
font-weight:700;
white-space:nowrap;
}
.sc-note{
width:auto;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
}
.sc-week-divider td{
border-top:2px solid #7a7a7a;
background:#f7f7f7 !important;
text-align:center;
font-weight:700;
height:18px;
}

@media(max-width:1400px){
.sc-calendar{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media(max-width:980px){
.sc-calendar{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
.sc-calendar{grid-template-columns:1fr;}
}


.sc-color-settings th,
.sc-color-settings td{
    padding:12px 14px;
}

.sc-legend{
    display:flex;
    gap:22px;
    margin:10px 0 18px;
    font-weight:600;
    flex-wrap:wrap;
}

.sc-legend-item{
    display:flex;
    align-items:center;
    gap:8px;
}

.sc-legend-item i{
    width:22px;
    height:14px;
    display:inline-block;
    border:1px solid #555;
    border-radius:3px;
    box-shadow:0 0 0 1px rgba(0,0,0,0.05) inset;
}

.sc-note[title]{
    cursor:help;
}


/* centered legend */
.sc-legend{
display:flex;
justify-content:center;
align-items:center;
gap:26px;
margin:14px auto 20px auto;
font-weight:600;
flex-wrap:wrap;
text-align:center;
}

.sc-legend-item{
display:flex;
align-items:center;
gap:8px;
}

.sc-legend-item i{
width:22px;
height:14px;
display:inline-block;
border:1px solid #555;
border-radius:3px;
}


.sc-editor-toolbar{
    display:flex;
    align-items:center;
    gap:12px;
    margin:12px 0 16px;
    flex-wrap:wrap;
}

.sc-legend-admin{
    margin-bottom:18px;
}

.sc-editor-calendar{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}

.sc-editor-row{
    cursor:pointer;
}

.sc-editor-row.sc-dragging td{
    outline:2px dashed #555;
}

.sc-editor-modal{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,0.35);
    z-index:9999;
}

.sc-editor-modal-inner{
    width:min(520px, calc(100vw - 40px));
    background:#fff;
    margin:8vh auto 0;
    padding:20px;
    border-radius:8px;
    box-shadow:0 18px 40px rgba(0,0,0,0.25);
}

.sc-editor-note{
    cursor:pointer;
}

@media(max-width:1200px){
    .sc-editor-calendar{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:900px){
    .sc-editor-calendar{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:600px){
    .sc-editor-calendar{grid-template-columns:1fr;}
}
