*{box-sizing:border-box}:root{--dark:#003d3b;--green:#00b96d;--bg:#f4faf7;--line:#dce9e5;--muted:#667c77}body{margin:0;font-family:Inter,system-ui,sans-serif;color:#143732;background:var(--bg)}aside{position:fixed;inset:0 auto 0 0;width:240px;padding:24px;background:var(--dark)}aside img{width:190px;background:#fff;padding:8px;border-radius:14px}nav{display:grid;margin-top:25px;gap:5px}nav a{color:#d9eee9;text-decoration:none;padding:12px;border-radius:9px}nav a:hover{background:#07544f}main{margin-left:240px;padding:32px;max-width:1500px}header,.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}header h1{margin:3px 0}header small{color:var(--green);font-weight:900}.card,.stats article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 8px 25px #003d3b0b}.card{display:grid;gap:14px}.card h2{margin:0 0 8px}.cols{display:grid;grid-template-columns:390px 1fr;gap:20px}.three,.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:20px}.stats strong{display:block;font-size:2rem;color:var(--green)}.stats span,small{display:block;color:var(--muted)}label{display:grid;gap:6px;font-weight:650}input,select,textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff}textarea{min-height:80px}button,.button{border:0;border-radius:10px;padding:12px 15px;background:var(--green);color:#fff;font-weight:800;text-decoration:none;text-align:center;cursor:pointer}.secondary{background:#fff;color:var(--dark);border:1px solid var(--line)}.small{padding:8px 10px}.check{display:flex;align-items:center}.check input{width:auto;margin-right:8px}.card article{display:flex;justify-content:space-between;gap:10px;padding:14px;border:1px solid var(--line);border-radius:11px}.card>a{text-decoration:none;color:inherit}.flash{padding:13px;background:#e7faef;color:#087346;border-radius:10px;margin-bottom:18px}.flash.error{background:#fff0ee;color:#a52a20}.actions{display:flex;gap:10px}.auth{min-height:100vh;display:grid;place-items:center;background:linear-gradient(145deg,#003d3b,#00795b)}.auth>section{width:min(900px,94vw);display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:22px;overflow:hidden}.auth-brand{padding:45px;background:#f1fbf6}.auth-brand img{width:100%;background:#fff}.auth-brand h1{font-size:2.5rem}.auth form{padding:42px;display:grid;gap:14px}.auth form h2{font-size:2rem;margin:0}.auth form>a{text-align:center;color:#006b4d}.auth form>.button{color:#003d3b}.toolbar form{margin:0}@media(max-width:950px){.cols,.three{grid-template-columns:1fr}.stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){aside{position:static;width:auto}aside nav{grid-template-columns:repeat(2,1fr)}main{margin:0;padding:20px}.auth>section{grid-template-columns:1fr}.auth-brand{display:none}.stats{grid-template-columns:1fr}.toolbar{align-items:flex-start;gap:12px}}
.schedule-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.helper{margin:0;color:var(--muted);line-height:1.5}button:disabled{opacity:.55;cursor:not-allowed}@media(max-width:950px){.schedule-grid{grid-template-columns:1fr}}
/* logo-mobile-proporcional-final */
.logo-mobile-index{display:none!important}
@media (max-width:820px){
  body.auth{position:relative!important}
  .logo-mobile-index{
    display:flex!important;
    position:absolute!important;
    top:clamp(38px,7vh,72px)!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:clamp(118px,28vw,156px)!important;
    height:auto!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:5!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    pointer-events:none!important;
  }
  .logo-mobile-index img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:156px!important;
    max-height:82px!important;
    object-fit:contain!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
}
@media (min-width:821px){
  .logo-mobile-index{display:none!important}
}
/* visual-publico-unificado */
.logo-publica-mobile{display:none!important}
@media(max-width:820px){
  body.auth{
    position:relative!important;
    background:#eef8f4!important;
    background-color:#eef8f4!important;
  }
  .logo-mobile-index{display:none!important}
  .logo-publica-mobile{
    display:flex!important;
    position:absolute!important;
    top:clamp(34px,6vh,64px)!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:clamp(120px,29vw,158px)!important;
    height:84px!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:10!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    pointer-events:none!important;
  }
  .logo-publica-mobile img{
    display:block!important;
    width:100%!important;
    max-width:158px!important;
    max-height:84px!important;
    height:auto!important;
    object-fit:contain!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
}
@media(min-width:821px){.logo-publica-mobile{display:none!important}}

/* NOSSAESCALA_ESCALAS_LAYOUT_REPARADO_INICIO */
html,body{max-width:100%;overflow-x:hidden}
.cols,.cols>.card,.scale-list,.scale-row,.scale-info,.scale-actions,.edit-panel,.edit-panel form{min-width:0;max-width:100%;box-sizing:border-box}
.scale-list{display:grid;gap:14px}
.scale-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;overflow:hidden}
.scale-info{flex:1 1 260px;overflow-wrap:anywhere}
.scale-actions{flex:0 1 auto;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.scale-actions form{margin:0}
.edit-panel{display:none!important;flex:1 0 100%;width:100%;padding-top:16px;border-top:1px solid var(--line);overflow:hidden}
.edit-panel.open{display:block!important}
.edit-panel form{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:100%!important}
.edit-panel label{display:block;width:100%;min-width:0;margin:0}
.edit-panel label:not(.check) input{display:block;width:100%;max-width:100%;box-sizing:border-box}
.edit-panel .check{display:flex!important;align-items:center;gap:9px;width:auto!important;white-space:normal;padding:3px 0}
.edit-panel .check input{width:auto!important;flex:0 0 auto;margin:0}
.edit-panel button{display:block;width:100%;max-width:100%;box-sizing:border-box;margin:0;white-space:normal}
@media(max-width:720px){
 .scale-row{align-items:flex-start;flex-direction:column}
 .scale-info,.scale-actions,.edit-panel{width:100%}
 .scale-actions{justify-content:flex-start}
 .scale-actions form,.scale-actions button,.scale-actions .button{flex:1 1 125px}
}
/* NOSSAESCALA_ESCALAS_LAYOUT_REPARADO_FIM */


/* NOSSAESCALA_MOBILE_EDICAO_ESCALAS_INICIO */
@media (max-width: 900px) {
    html, body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden !important;
    }

    main, main > *, .cols, .cols > .card,
    .scale-list, .scale-row, .scale-info,
    .scale-actions, .edit-panel, .edit-panel form {
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .cols {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        gap: 16px !important;
    }

    .cols > .card {
        width: 100% !important;
        overflow: hidden !important;
    }

    .scale-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        overflow: hidden !important;
    }

    .scale-info,
    .scale-actions,
    .edit-panel {
        flex: none !important;
        width: 100% !important;
    }

    .scale-info {
        overflow-wrap: anywhere !important;
    }

    .scale-actions {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .scale-actions form,
    .scale-actions .button,
    .scale-actions button {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        margin: 0 !important;
    }

    .edit-panel {
        display: none !important;
        padding-top: 14px !important;
        overflow: hidden !important;
    }

    .edit-panel.open {
        display: block !important;
    }

    .edit-panel form {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        gap: 12px !important;
    }

    .edit-panel label,
    .edit-panel input,
    .edit-panel button {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .edit-panel .check {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        width: 100% !important;
        white-space: normal !important;
        gap: 9px !important;
    }

    .edit-panel .check input[type="checkbox"] {
        width: auto !important;
        min-width: auto !important;
        flex: 0 0 auto !important;
    }
}

@media (max-width: 430px) {
    .scale-actions {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}
/* NOSSAESCALA_MOBILE_EDICAO_ESCALAS_FIM */

/* NOSSAESCALA_TODOS_HORARIOS_MOBILE_V1 */
.all-schedules-card,
.all-schedules-list,
.all-schedule-item {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
}

.all-schedules-card {
    overflow: hidden;
}

.all-schedule-item > * {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
}

.all-schedule-item span {
    width: fit-content !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    box-sizing: border-box !important;
}

@media (max-width: 640px) {
    .all-schedules-card {
        width: 100% !important;
        padding: 18px !important;
    }

    .all-schedules-list {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        gap: 12px !important;
    }

    .all-schedule-item {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        width: 100% !important;
        gap: 6px !important;
        padding: 14px !important;
        overflow: hidden !important;
    }

    .all-schedule-item b,
    .all-schedule-item small,
    .all-schedule-item span {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        text-align: left !important;
    }

    .all-schedule-item small {
        line-height: 1.4 !important;
        white-space: normal !important;
    }

    .all-schedule-item span {
        width: fit-content !important;
        padding: 6px 10px !important;
        margin-top: 4px !important;
    }
}