body{background:#f5f3f1}.private-layout{min-height:100vh;display:flex}.admin-concerts-main{min-width:0;font-family:var(--fuente-minimalista);flex:1;padding:2.1rem clamp(1.25rem,3vw,3.5rem) 4rem}.private-page-header{justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:1.8rem;display:flex}.section-kicker{color:var(--color-acento);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:800}.private-page-header h1{color:var(--color-principal);margin:.2rem 0 .55rem;font-size:clamp(2rem,4vw,3.5rem)}.private-page-header p{color:#625c58;max-width:760px;margin:0}.account-card{background:#fff;border:1px solid #ded8d3;gap:.7rem;min-width:250px;padding:1rem 1.15rem;display:grid}.account-card span{gap:.18rem;display:grid}.account-card small{color:#77706b;text-transform:uppercase;font-size:.68rem;font-weight:700}.state-box,.toolbar,.concert-card{background:#fff;border:1px solid #ded8d3}.state-box{padding:1.35rem}.error-box{color:#8b2d36}.toolbar{justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1.25rem;padding:1rem 1.15rem;display:flex}.toolbar label{gap:.45rem;width:min(420px,100%);display:grid}.toolbar select,dialog input,dialog select{min-height:2.75rem;font:inherit;background:#fff;border:1px solid #d6cfca;padding:.55rem .7rem}.concert-list{gap:.8rem;display:grid}.concert-card{grid-template-columns:minmax(190px,1.1fr) minmax(260px,2fr) auto auto;align-items:center;gap:1.2rem;padding:1rem 1.15rem;display:grid}.concert-card small{color:#806f74;text-transform:uppercase;font-size:.7rem;font-weight:800;display:block}.concert-card h2{color:var(--color-principal);margin:0 0 .25rem;font-size:1rem}.concert-card p{color:#6f6561;margin:0;font-size:.88rem}.meta{color:#806f74;gap:.7rem;margin-top:.45rem;font-size:.78rem;display:flex}.state strong{color:#3f6c50;background:#edf4ef;border-radius:999px;padding:.32rem .55rem;font-size:.75rem;display:inline-flex}.actions{gap:.45rem;display:flex}.admin-concerts-main button{cursor:pointer;border-radius:4px;min-height:2.35rem;padding:.5rem .8rem;font-weight:800}.secondary{color:#4f333b;background:#fff;border:1px solid #cfc5c8}.primary{color:#fff;background:#5d142b;border:1px solid #5d142b}dialog{border:0;width:min(520px,100vw - 2rem);padding:0;box-shadow:0 18px 60px #00000038}dialog::backdrop{background:#231b1d73}dialog form{padding:1.25rem}dialog header,dialog footer{justify-content:space-between;align-items:center;gap:1rem;display:flex}dialog header{border-bottom:1px solid #e7e0dd;padding-bottom:1rem}dialog header h2{margin:0;font-size:1.15rem}dialog header button{background:0 0;border:0;min-height:auto;font-size:1.5rem}dialog label{gap:.4rem;margin:1rem 0;display:grid}dialog footer{border-top:1px solid #e7e0dd;justify-content:flex-end;padding-top:1rem}.dialog-status{color:#7f343d;min-height:1.4rem;font-size:.85rem}@media (width<=980px){.concert-card{grid-template-columns:1fr 1fr}}@media (width<=900px){.private-layout{display:block}.private-page-header,.toolbar{display:grid}.account-card{min-width:0}}@media (width<=620px){.admin-concerts-main{padding:1.15rem .9rem 2.5rem}.concert-card{grid-template-columns:1fr}.actions{flex-wrap:wrap}}.admin-concerts-main button{border-radius:0}.attendance-person{border-top:1px solid #eee;grid-template-columns:minmax(210px,1fr) auto;align-items:center;gap:.7rem;padding:.7rem;display:grid}.attendance-actions{flex-wrap:wrap;gap:.35rem;display:flex}.attendance-actions button{color:#4f333b;background:#fff;border:1px solid #cfc5c8}.attendance-actions button.is-selected{color:#fff;background:#3f6c50;border-color:#3f6c50}.attendance-actions button[data-attendance=non_asiste].is-selected{background:#8b2d36;border-color:#8b2d36}.attendance-actions button[data-attendance=xustificada].is-selected{background:#96651e;border-color:#96651e}.justification{grid-template-columns:210px 1fr;align-items:center;gap:.7rem;border:0!important;grid-column:1/-1!important;margin:0!important;padding:.5rem 0 0!important;display:grid!important}.justification[hidden]{display:none!important}.justification input{width:100%}.manage-footer{border-top:1px solid #ded8d3;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;display:flex}.manage-footer .dialog-status{flex:1;margin:0}@media (width<=700px){.attendance-person{grid-template-columns:1fr}.justification{grid-template-columns:1fr;grid-column:auto!important}.attendance-actions button{flex:150px}.manage-footer{flex-direction:column;align-items:stretch}.manage-footer button{width:100%}}.wide-dialog{width:min(1050px,100vw - 2rem);max-height:calc(100vh - 2rem);overflow:auto}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1rem;padding:1rem 0;display:grid}.form-grid label{margin:0}.form-grid .span-2{grid-column:1/-1}.form-grid textarea{font:inherit;border:1px solid #d6cfca;padding:.65rem}.form-grid .check{align-items:center;gap:.5rem;display:flex}.form-grid .check input{min-height:auto}.manage-shell{padding:1.25rem}.manage-shell>header{justify-content:space-between;align-items:center;display:flex}.manage-shell h2{color:var(--color-principal);margin:.15rem 0}.manage-tabs{border-bottom:1px solid #d8d0cc;margin:1rem 0;display:flex}.manage-tabs button{background:#fff;border:0}.manage-tabs button.is-active{background:var(--color-principal);color:#fff}.manage-panel{padding:.5rem 0}.add-work{gap:.6rem;margin-bottom:1rem;display:flex}.add-work select{flex:1;min-height:2.6rem}.program-row{border-top:1px solid #e2ddda;grid-template-columns:35px minmax(180px,1fr) minmax(100px,.7fr) minmax(120px,1fr) auto;align-items:center;gap:.5rem;padding:.6rem;display:grid}.program-row input{border:1px solid #ddd;min-width:0;padding:.5rem}.voice-checks{border:1px solid #ddd;margin-bottom:1rem}.voice-checks h3{color:var(--color-principal);background:#f5f1ef;justify-content:space-between;margin:0;padding:.65rem;display:flex}.voice-checks label{border-top:1px solid #eee;gap:.6rem;margin:0;padding:.45rem .7rem;display:flex}.voice-checks input{min-height:auto}.documents-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.documents-grid article{border:1px solid #ddd;padding:1rem}@media (width<=700px){.form-grid,.documents-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.program-row{grid-template-columns:28px 1fr}.program-row input,.program-row button{grid-column:2}}
