.availability-editor {border:1px solid #c9dfe7;border-radius:16px;overflow:hidden;background:#fff}
.availability-editor h3 {margin:0;padding:12px 16px;background:#edf7fa;font-size:1rem}
.availability-editor__row {display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,3fr);gap:14px;padding:14px 16px;border-top:1px solid #e0edf2;align-items:start}
.availability-editor__day {display:flex;gap:10px;align-items:center;min-height:40px;cursor:pointer;font-size:.9rem}
.availability-editor__day input,.availability-copy input {width:20px;height:20px;accent-color:#087cab;flex-shrink:0}
.availability-editor__off {color:#617f8e;align-self:center;font-size:.85rem}
.availability-editor__hours {display:grid;gap:10px;min-width:0}
.availability-editor__range {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:10px;align-items:end}
.availability-editor__range label {display:grid;gap:4px;font-size:.8rem}
.availability-editor__range input {width:100%;min-width:0;box-sizing:border-box;padding:8px 10px;min-height:42px;border:1px solid #a9cfde;border-radius:9px;background:#fff;color:#10466a;font:inherit;font-size:1rem}
.availability-editor__remove {width:36px;height:42px;border:0;background:transparent;color:#8a3a30;font-size:24px;cursor:pointer}
.availability-editor__actions,.availability-editor__quick {display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.availability-editor__actions .btn {padding:7px 12px;min-height:36px;font-size:.8rem}
.availability-editor__quick {font-size:.75rem;color:#577a8f}
.availability-editor__quick button {border:1px solid #c9dfe7;border-radius:8px;background:#f3f9fb;color:#10466a;padding:7px 9px;font:inherit;cursor:pointer}
.availability-editor__error {margin:0;color:#a72d21;font-size:.82rem}
.availability-editor__error:empty {display:none}
.availability-copy {max-width:520px;width:calc(100% - 40px);max-height:85vh;overflow:auto;padding:24px;border:1px solid #bad4df;border-radius:20px;color:#10466a;background:#fff}
.availability-copy::backdrop {background:rgba(7,48,68,.45)}
.availability-copy__days {display:grid;gap:8px;margin:16px 0}
.availability-copy__days label {display:flex;align-items:center;gap:12px;padding:5px;font-size:.9rem}
@media(max-width:600px){.availability-editor__row{grid-template-columns:1fr;gap:7px;padding:12px}.availability-editor__day{min-height:30px}.availability-editor__range{gap:6px}.availability-editor__actions .btn{font-size:.75rem}}
.availability-rule-form {display:grid;grid-template-columns:170px minmax(140px,1fr);gap:8px 16px;align-items:center;max-width:640px}
.availability-rule-form > label {margin:0}
.availability-rule-form > [hidden] {display:none!important}
.availability-rule-form > input,.availability-rule-form > select {margin:0;width:100%;box-sizing:border-box}
.availability-rule-form__presets,.availability-rule-form > .riga-azioni {grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.availability-rule-form__presets .bottone {padding:7px 10px;font-size:.8rem}
@media(max-width:500px){.availability-rule-form{grid-template-columns:1fr;gap:6px}.availability-rule-form input{margin-bottom:8px}}

.availability-editor__interval {display:grid;gap:7px;padding:8px 0;border-bottom:1px solid #e0edf2}
.availability-editor__interval select {width:100%;min-height:40px;border:1px solid #a9cfde;border-radius:9px;padding:7px 10px;background:white;color:#10466a;font:inherit;font-size:.88rem}
.availability-editor__interval small {color:#577a8f;font-size:.78rem}
.availability-editor__range input:disabled {background:#edf7fa;color:#426979;opacity:1}
.avviso--luce {border:1px solid #e0c86f;border-left:4px solid #e7be3d;border-radius:12px;padding:14px 18px;background:#fffbee;color:#173e52;margin:14px 0}
.avviso--luce p {margin:.4em 0;font-size:.9rem}

/* Indicazione discreta sotto il calendario del fotografo. */
.calendario__luce {display:flex;align-items:baseline;gap:.5rem;margin:1rem 0 .5rem;padding-top:.75rem;border-top:1px solid #e0edf2;color:#426979;font-size:.88rem;line-height:1.5}
.calendario__luce > [aria-hidden] {color:#a77516;flex:none;font-size:1.1rem}
.calendario__luce strong {color:#134967;white-space:nowrap}
