.trabajo-admin{max-width:1100px;margin:auto;padding:24px}
.trabajo-admin [hidden],#casos [hidden]{display:none!important}
.trabajo-admin form{margin:24px 0}
.trabajo-admin label{display:block;margin:15px 0}
.trabajo-admin input:not([type=checkbox]),.trabajo-admin textarea,
.trabajo-admin select{display:block;width:100%;box-sizing:border-box;padding:12px;border:1px solid #cdbb94;border-radius:8px;font:inherit}
.trabajo-admin .trabajo-check{display:flex;align-items:center;gap:10px}
.trabajo-check input{width:auto}.trabajo-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}
.trabajo-admin button,
.trabajo-controles button{cursor:pointer;padding:11px 18px;border:1px solid #ac8b43;border-radius:9px;background:#20201d;color:#f6e4b8;font:inherit}
.trabajo-admin button:disabled{opacity:.5;cursor:wait}
.trabajo-admin .ms-card{margin-bottom:18px;padding:22px}
.trabajo-admin article p{overflow-wrap:anywhere}
.trabajo-admin #estado{position:sticky;top:0;background:#fff8e8;color:#473820;z-index:2;padding:12px;border-radius:8px}
.trabajo-admin #estado:empty{display:none}#previewTrabajo{width:100%;max-width:420px;max-height:300px;object-fit:contain;border-radius:12px}
.trabajo-caso-admin{border-top:1px solid #ddd2ba;padding:14px 0}
.trabajo-publica{max-width:1150px;margin:30px auto;text-align:left}
.trabajo-publica>section{margin:36px 0}.trabajo-publica h3{color:#b39652}
.trabajo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.trabajo-grid article{background:#191a18;border:1px solid #70603a;border-radius:16px;overflow:hidden;color:#fff;padding-bottom:20px}
.trabajo-grid img{width:100%; height:auto; max-height:420px; object-fit:contain; object-position:center; display:block; margin:0 auto; background:#111;}
.trabajo-grid h4,
.trabajo-grid p{margin:16px 20px;overflow-wrap:anywhere}
.trabajo-grid small{display:block;margin:16px 20px;color:#e1c992}
.trabajo-controles{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:16px}
.trabajo-controles span{color:inherit}
.trabajo-admin a{color:#826325}
.ms-sidebar .ms-nav.ms-subnav{font-size:13px;padding-left:35px}

@media(max-width:650px){.trabajo-grid{grid-template-columns:1fr}.trabajo-admin{padding:16px}.trabajo-grid img{height:auto;max-height:360px;}}

.trabajo-admin .ms-hero a{color:#ead5a5}

/* Public gallery only: shared alignment, full images, readable copy. */
#casos.casos{box-sizing:border-box;padding:72px max(24px,calc((100% - 1150px)/2));background:#faf9f6;text-align:center}
#casos>.subtitulo{margin:0 0 14px;color:#9b782c}
#casos>h2{margin:0 auto 18px;max-width:850px;font-size:clamp(28px,3vw,40px);line-height:1.2}
#casos>.texto-casos{max-width:720px;margin:0 auto;color:#625e55;line-height:1.7}
#casos .trabajo-publica{max-width:none;margin:40px 0 0;text-align:left;min-width:0}
#casos .trabajo-publica>section{margin:0;padding:32px 0;border-top:1px solid #ded5c1}
#casos .trabajo-publica h3{margin:0 0 12px;color:#876524;font-size:clamp(21px,2vw,26px);line-height:1.3}
#casos .trabajo-publica>section>p{max-width:850px;margin:0 0 24px;line-height:1.75;color:#56534b}
#casos .trabajo-grid{grid-template-columns:minmax(0,1fr);gap:24px}
#casos .trabajo-grid article{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:0;background:#fff;color:#292720;border:1px solid #d9cbae;border-radius:18px;box-shadow:0 8px 25px #372f1610;min-width:0;align-items:center}
#casos .trabajo-grid img{width:100%;height:340px;max-height:none;object-fit:contain;background:#f1eee7;margin:0;min-width:0}
#casos .trabajo-detalle{padding:30px;min-width:0}
#casos .trabajo-detalle h4{margin:0 0 16px;font-size:23px;line-height:1.3;color:#28251e}
#casos .trabajo-detalle p{margin:0 0 20px;line-height:1.75;color:#5c574d}
#casos .trabajo-detalle small{margin:0;color:#7b602e;font-size:12px;line-height:1.6;border-top:1px solid #e7ddc9;padding-top:15px}
#casos .trabajo-controles{margin-top:20px;gap:10px}
#casos .trabajo-controles button:focus-visible{outline:3px solid #ad812b;outline-offset:3px}
@media(max-width:700px){
 #casos.casos{padding:42px 18px}
 #casos .trabajo-publica{margin-top:28px}
 #casos .trabajo-publica>section{padding:26px 0}
 #casos .trabajo-grid article{grid-template-columns:minmax(0,1fr)}
 #casos .trabajo-grid img{height:auto;max-height:320px}
 #casos .trabajo-detalle{padding:22px}
 #casos .trabajo-detalle h4{font-size:21px}
 #casos .trabajo-controles button{padding:10px 12px;font-size:13px}
}


/* Marco editorial dorado y ampliación accesible para las fotos de tratamientos. */
#casos .trabajo-grid article {
    border: 1px solid #c6a453;
    box-shadow: 0 12px 32px rgba(45, 36, 16, .11);
}

#casos .trabajo-imagen-marco {
    box-sizing: border-box;
    align-self: stretch;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 340px;
    padding: 14px;
    border: 0;
    border-right: 1px solid #e5d9bd;
    background: #fbf9f3;
    cursor: zoom-in;
}

#casos .trabajo-imagen-marco img {
    box-sizing: border-box;
    width: 100%;
    height: 310px;
    max-height: none;
    padding: 5px;
    border: 1px solid #c3a04a;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 20px rgba(45, 36, 16, .13);
    object-fit: contain;
}

#casos .trabajo-imagen-marco:focus-visible {
    outline: 3px solid #a57d28;
    outline-offset: -5px;
}

.trabajo-lightbox {
    position: relative;
    box-sizing: border-box;
    width: min(1100px, calc(100vw - 32px));
    max-width: 1100px;
    max-height: calc(100vh - 32px);
    padding: 54px 20px 20px;
    border: 1px solid #c6a453;
    border-radius: 16px;
    background: #fffdf8;
    color: #292720;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .35);
}

.trabajo-lightbox::backdrop {
    background: rgba(12, 12, 11, .82);
    backdrop-filter: blur(3px);
}

.trabajo-lightbox > img {
    display: block;
    max-width: 100%;
    max-height: calc(100vh - 145px);
    margin: 0 auto;
    padding: 6px;
    border: 1px solid #c6a453;
    border-radius: 12px;
    background: #fff;
    object-fit: contain;
}

.trabajo-lightbox-cerrar {
    position: absolute;
    top: 12px;
    right: 12px;
    padding: 8px 14px;
    border: 1px solid #b08a35;
    border-radius: 8px;
    background: #1f201d;
    color: #fff2d2;
    font: inherit;
    cursor: pointer;
}

.trabajo-lightbox-cerrar:focus-visible {
    outline: 3px solid #a57d28;
    outline-offset: 3px;
}

.trabajo-lightbox-titulo {
    margin: 14px 0 0;
    color: #584621;
    text-align: center;
    font-weight: 600;
}

@media (max-width: 700px) {
    #casos .trabajo-imagen-marco {
        min-height: 290px;
        border-right: 0;
        border-bottom: 1px solid #e5d9bd;
    }
    #casos .trabajo-imagen-marco img { height: 260px; }
    .trabajo-lightbox { padding: 54px 12px 14px; }
    .trabajo-lightbox > img { max-height: calc(100vh - 135px); }
}
