/* ==========================================================
   HAMCONTACT - LAYOUT OPERACIONAL PARA TABLET
   Somente layout. Não altera regras de negócio.
   ========================================================== */


/* ==========================================================
   ESTAÇÃO DO OPERADOR
   Rádio e antena ficam fora do formulário do contato.
   ========================================================== */

.estacao-operador-card {
    position: sticky;
    top: 78px;
    z-index: 880;

    border-color: #cbd8e6;

    box-shadow:
        0 4px 13px rgba(15, 23, 42, .09);
}

@media (min-width:621px) and (max-width:1400px) and (pointer:coarse){body.hc-tablet-compact #btnTabletAlternarObservacoes,body.hc-tablet-compact #tabletObservacoesResumo{display:none!important}body.hc-tablet-compact #observacoes{display:block!important}}


/* ==========================================================
   FORMULÁRIO COMPACTO — SOMENTE TABLET COM TOQUE
   Celular e desktop com mouse conservam o layout completo.
   ========================================================== */
@media (min-width:621px) and (max-width:1400px) and (pointer:coarse){

    body.hc-tablet-compact .form-contato{
        gap:10px !important;
    }

    body.hc-tablet-compact #dadosIndicativo{
        padding:10px 12px !important;
        margin-bottom:10px !important;
    }

    body.hc-tablet-compact #dadosIndicativo .indicativo-principal{
        font-size:1.05rem !important;
        line-height:1.15 !important;
    }

    body.hc-tablet-compact #dadosIndicativo .indicativo-nome,
    body.hc-tablet-compact #dadosIndicativo .indicativo-local,
    body.hc-tablet-compact #dadosIndicativo .ultimo-contato{
        line-height:1.2 !important;
        margin-top:3px !important;
    }

    body.hc-tablet-compact #dadosIndicativo .indicativo-email-row{
        margin-top:7px !important;
        padding-top:7px !important;
    }

    body.hc-tablet-compact .local-card{
        padding:11px 12px !important;
    }

    body.hc-tablet-compact .tablet-compact-section-title{
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:10px !important;
        margin-bottom:0 !important;
    }

    body.hc-tablet-compact .tablet-compact-toggle{
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        min-height:30px !important;
        padding:3px 10px !important;
        border:1px solid #94a3b8 !important;
        border-radius:8px !important;
        background:#fff !important;
        color:#0d6efd !important;
        font-size:.78rem !important;
        font-weight:700 !important;
        line-height:1 !important;
    }

    body.hc-tablet-compact .tablet-compact-summary{
        display:block;
        width:100%;
        margin-top:7px;
        padding:8px 10px;
        border:1px solid #d7e1ee;
        border-radius:8px;
        background:#f8fbff;
        color:#334155;
        font-size:.82rem;
        font-weight:650;
        line-height:1.25;
        text-align:left;
        cursor:pointer;
    }

    body.hc-tablet-compact .tablet-observacoes-section{
        margin-top:10px !important;
        padding:10px 12px !important;
        border:1px solid #dbe3ec;
        border-radius:10px;
        background:#fff;
    }

    body.hc-tablet-compact .tablet-observacoes-summary{
        border-style:dashed;
        color:#64748b;
        font-weight:600;
    }

    body.hc-tablet-compact #tabletLocalDetalhes{
        margin-top:10px;
    }
}

@media not all and (min-width:621px),
       not all and (max-width:1400px),
       not all and (pointer:coarse){
    .tablet-compact-toggle,
    .tablet-compact-summary{
        display:none !important;
    }
}


.estacao-operador-card .card-body {
    padding-top: 12px;
    padding-bottom: 12px;
}


.estacao-operador-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;

    margin-bottom: 8px;
}


.estacao-operador-title {
    margin: 0;

    font-size: .78rem;
    line-height: 1.1;

    font-weight: 800;

    color: #334155;

    letter-spacing: .04em;

    text-transform: uppercase;
}


.estacao-operador-help {
    color: #64748b;

    font-size: .68rem;

    white-space: nowrap;
}


.estacao-operador-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr);

    gap: 10px;
}


.estacao-operador-card .form-label {
    font-size: .74rem;
}


.estacao-operador-card .form-select {
    min-height: 40px;

    font-size: .9rem;
}


.estacao-operador-card .campo-observacao {
    min-height: 14px;

    margin-top: 2px;

    font-size: .68rem;
}


/* ==========================================================
   NOVO CONTATO
   ========================================================== */

.contato-card {
    /*
     * Necessário para o botão sticky funcionar corretamente.
     */
    overflow: visible;
}


.contato-datahora-prioritaria {
    margin-top: 12px;
    margin-bottom: 2px;

    padding:
        10px
        11px;

    border:
        1px solid #dce6ef;

    border-radius: 9px;

    background:
        #f8fafc;
}


.contato-datahora-prioritaria .form-label {
    color: #475569;

    font-size: .74rem;
}


/* ==========================================================
   SINAL RECEBIDO
   VU + Clareza + Sinal + RST no mesmo bloco.
   ========================================================== */

.signal-card.signal-card-integrado {
    padding:
        11px
        12px
        12px;
}


.signal-card-integrado .signal-title {
    margin-bottom: 9px;
}


.signal-workbench {
    display: grid;

    grid-template-columns:
        minmax(225px, .95fr)
        minmax(235px, 1.05fr);

    gap: 14px;

    align-items: center;
}


.signal-meter-pane {
    min-width: 0;
}


.signal-meter-pane .vu-card {
    margin-top: 0;
}


.signal-meter-pane .vu-card > .form-label {
    display: none;
}


.signal-meter-pane .px-meter {
    height: 112px;
}


.signal-controls-pane {
    display: flex;

    flex-direction: column;

    gap: 8px;

    min-width: 0;
}


.signal-control-row {
    display: grid;

    grid-template-columns:
        68px
        minmax(0, 1fr);

    align-items: center;

    gap: 8px;
}


.signal-control-row.signal-control-rst {
    grid-template-columns:
        68px
        minmax(0, 1fr)
        76px;
}


.signal-control-label {
    margin: 0;

    color: #475569;

    font-size: .76rem;

    font-weight: 700;
}


.signal-controls-pane .form-select {
    min-height: 40px;

    padding-top: .35rem;
    padding-bottom: .35rem;

    font-size: .9rem;
}


.signal-rst-box {
    min-height: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 3px;

    padding:
        4px
        8px;

    border:
        1px solid #bfdbfe;

    border-radius: 8px;

    background:
        #eff6ff;
}


.signal-rst-box .rst-label {
    font-size: .58rem;

    line-height: 1;

    color: #64748b;
}


.signal-rst-box .rst-number {
    margin: 0;

    font-size: 1.45rem;

    line-height: 1;

    color: #0d6efd;
}


/* ==========================================================
   BOTÃO REGISTRAR / SALVAR
   Sempre acessível enquanto o formulário está visível.
   ========================================================== */

.contato-actions-sticky {
    position: sticky;

    bottom: 8px;

    z-index: 870;

    margin-top: 16px;

    padding:
        7px;

    border:
        1px solid rgba(203, 213, 225, .88);

    border-radius: 11px;

    background:
        rgba(255, 255, 255, .94);

    box-shadow:
        0 5px 18px rgba(15, 23, 42, .16);

    backdrop-filter:
        blur(8px);
}


.contato-actions-sticky .btn-registrar {
    width: 100%;

    min-height: 47px;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media (max-width: 1180px) {

    .estacao-operador-card {
        top: 72px;
    }


    .signal-workbench {
        grid-template-columns:
            minmax(200px, .9fr)
            minmax(215px, 1.1fr);

        gap: 10px;
    }


    .signal-meter-pane .px-meter {
        height: 106px;
    }


    .signal-control-row {
        grid-template-columns:
            61px
            minmax(0, 1fr);
    }


    .signal-control-row.signal-control-rst {
        grid-template-columns:
            61px
            minmax(0, 1fr)
            68px;
    }

}


/* ==========================================================
   TABLET PORTRAIT / CELULAR
   ========================================================== */

@media (max-width: 849px) {

    /*
     * Em portrait mantemos o card próximo do topo,
     * mas evitamos ocupar permanentemente uma área grande.
     */
    .estacao-operador-card {
        position: relative;
        top: auto;
        z-index: auto;
    }


    .signal-workbench {
        grid-template-columns:
            1fr;
    }


    .signal-meter-pane .px-meter {
        height: 110px;
    }


    .signal-controls-pane {
        display: grid;

        grid-template-columns:
            minmax(0, 1fr)
            minmax(0, 1fr);

        gap: 8px;
    }


    .signal-control-row {
        grid-template-columns:
            58px
            minmax(0, 1fr);
    }


    .signal-control-row.signal-control-rst {
        grid-column:
            1 / -1;

        grid-template-columns:
            58px
            minmax(0, 1fr)
            72px;
    }


    .contato-actions-sticky {
        bottom: 6px;
    }

}


/* ==========================================================
   TELAS PEQUENAS
   ========================================================== */

@media (max-width: 560px) {

    .estacao-operador-grid {
        grid-template-columns:
            1fr;
    }


    .estacao-operador-help {
        display: none;
    }


    .signal-controls-pane {
        grid-template-columns:
            1fr;
    }


    .signal-control-row.signal-control-rst {
        grid-column: auto;
    }


    .signal-control-row,
    .signal-control-row.signal-control-rst {
        grid-template-columns:
            56px
            minmax(0, 1fr)
            auto;
    }


    .signal-control-row:not(.signal-control-rst) .signal-rst-box {
        display: none;
    }


    .contato-datahora-prioritaria {
        padding:
            9px;
    }


    .contato-actions-sticky {
        margin-left: -4px;
        margin-right: -4px;

        border-radius: 9px;
    }

}


/* ==========================================================
   SINAL RECEBIDO - VISOR LED
   Clareza + Sinal
   ========================================================== */

.signal-led-panel {
    overflow: hidden;
}


.signal-workbench-led {
    display: grid;

    grid-template-columns:
        minmax(225px, .9fr)
        minmax(270px, 1.25fr)
        74px;

    gap: 14px;

    align-items: center;
}


.signal-led-controls {
    min-width: 0;

    display: flex;
    flex-direction: column;

    gap: 18px;
}


.signal-led-row {
    min-width: 0;

    display: grid;

    grid-template-columns:
        72px
        minmax(0, 1fr);

    gap: 10px;

    align-items: center;
}


.signal-led-label {
    color: #334155;

    font-size: .8rem;
    font-weight: 750;

    white-space: nowrap;
}


/*
 * Selects continuam existindo para manter toda a lógica atual.
 * Apenas ficam invisíveis.
 */
.signal-native-select {
    position: absolute !important;

    width: 1px !important;
    height: 1px !important;

    opacity: 0 !important;

    pointer-events: none !important;
}


/* ==========================================================
   FUNDO DO VISOR DE LED
   ========================================================== */

.signal-led-strip {
    width: 100%;

    min-width: 0;

    display: grid;

    gap: 7px;

    align-items: center;

    padding:
        8px
        10px;

    border:
        1px solid #202a32;

    border-radius: 8px;

    background:
        linear-gradient(
            180deg,
            #11171b,
            #080c0f
        );

    box-shadow:
        inset 0 1px 2px rgba(255,255,255,.05),
        inset 0 -2px 4px rgba(0,0,0,.35),
        0 1px 3px rgba(15,23,42,.12);
}


.signal-led-strip-5 {
    grid-template-columns:
        repeat(5, minmax(0, 1fr));
}


.signal-led-strip-9 {
    grid-template-columns:
        repeat(9, minmax(0, 1fr));
}


/* ==========================================================
   LED
   Sem números. Todos com mesmo tamanho.
   ========================================================== */

.signal-led {
    width: 100%;
    min-width: 0;

    height: 13px;

    padding: 0;

    border: 0;

    border-radius: 999px;

    opacity: .18;

    cursor: pointer;

    box-shadow:
        inset 0 1px 2px rgba(255,255,255,.35);

    transition:
        opacity .10s ease,
        filter .10s ease,
        box-shadow .10s ease,
        transform .06s ease;
}


.signal-led:active {
    transform:
        translateY(1px);
}


/* Cores fixas por posição */

.signal-led.signal-red {
    background:
        linear-gradient(
            180deg,
            #ff6868,
            #ec2f32
        );
}


.signal-led.signal-yellow {
    background:
        linear-gradient(
            180deg,
            #ffd85a,
            #f0ae17
        );
}


.signal-led.signal-green {
    background:
        linear-gradient(
            180deg,
            #72ec8a,
            #24ba59
        );
}


/* Até o valor escolhido, os LEDs acendem */

.signal-led.is-on {
    opacity: 1;

    filter:
        saturate(1.12)
        brightness(1.05);
}


.signal-led.signal-red.is-on {
    box-shadow:
        inset 0 1px 2px rgba(255,255,255,.48),
        0 0 7px rgba(245,55,59,.68);
}


.signal-led.signal-yellow.is-on {
    box-shadow:
        inset 0 1px 2px rgba(255,255,255,.48),
        0 0 7px rgba(245,184,34,.62);
}


.signal-led.signal-green.is-on {
    box-shadow:
        inset 0 1px 2px rgba(255,255,255,.48),
        0 0 7px rgba(43,202,98,.58);
}


/*
 * O ponto atual recebe só um brilho um pouco maior.
 * Não muda largura/altura, então não desloca os demais LEDs.
 */
.signal-led.is-current {
    filter:
        saturate(1.15)
        brightness(1.18);
}


/* ==========================================================
   RST
   Faz parte da grid e nunca fica por cima do Sinal.
   ========================================================== */

.signal-rst-led {
    width: 74px;
    min-width: 74px;

    min-height: 82px;

    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: 4px;

    margin: 0;

    padding:
        8px
        5px;

    border:
        1px solid #cbd5e1;

    border-radius: 9px;

    background:
        #ffffff;

    box-shadow:
        0 1px 3px rgba(15,23,42,.06);
}


.signal-rst-led .rst-label {
    color: #64748b;

    font-size: .65rem;
    line-height: 1;

    font-weight: 750;
}


.signal-rst-led .rst-number {
    margin: 0;

    color: #16a05d;

    font-size: 1.8rem;
    line-height: 1;

    font-weight: 850;
}


/* ==========================================================
   TABLET LANDSCAPE
   ========================================================== */

@media (max-width: 1180px) {

    .signal-workbench-led {
        grid-template-columns:
            minmax(205px, .88fr)
            minmax(245px, 1.12fr)
            66px;

        gap: 10px;
    }


    .signal-led-row {
        grid-template-columns:
            60px
            minmax(0, 1fr);

        gap: 7px;
    }


    .signal-led-strip {
        gap: 5px;

        padding:
            7px
            8px;
    }


    .signal-led {
        height: 12px;
    }


    .signal-rst-led {
        width: 66px;
        min-width: 66px;

        min-height: 72px;
    }


    .signal-rst-led .rst-number {
        font-size: 1.55rem;
    }

}


/* ==========================================================
   TABLET PORTRAIT
   ========================================================== */

@media (max-width: 849px) {

    .signal-workbench-led {
        grid-template-columns:
            minmax(205px, .9fr)
            minmax(250px, 1.1fr);

        grid-template-areas:
            "meter controls"
            "meter rst";

        gap: 10px;
    }


    .signal-workbench-led .signal-meter-pane {
        grid-area: meter;
    }


    .signal-workbench-led .signal-led-controls {
        grid-area: controls;
    }


    .signal-workbench-led .signal-rst-led {
        grid-area: rst;

        justify-self: end;

        width: 72px;
        min-width: 72px;

        min-height: 45px;

        flex-direction: row;

        gap: 5px;
    }


    .signal-rst-led .rst-number {
        font-size: 1.4rem;
    }

}


/* ==========================================================
   CELULAR
   ========================================================== */

@media (max-width: 620px) {

    .signal-workbench-led {
        grid-template-columns:
            1fr;

        grid-template-areas:
            "meter"
            "controls"
            "rst";

        gap: 12px;
    }


    .signal-workbench-led .signal-rst-led {
        justify-self: stretch;

        width: 100%;
        min-width: 0;

        min-height: 38px;

        flex-direction: row;

        justify-content: flex-end;

        padding:
            4px
            8px;

        border: 0;

        background: transparent;

        box-shadow: none;
    }


    .signal-led-row {
        grid-template-columns:
            55px
            minmax(0, 1fr);

        gap: 7px;
    }


    .signal-led-strip {
        gap: 4px;

        padding:
            7px;
    }


    .signal-led {
        height: 15px;
    }

}


/* ==========================================================
   CELULAR MUITO PEQUENO
   ========================================================== */

@media (max-width: 390px) {

    .signal-led-row {
        grid-template-columns:
            48px
            minmax(0, 1fr);

        gap: 5px;
    }


    .signal-led-label {
        font-size: .7rem;
    }


    .signal-led-strip {
        gap: 3px;

        padding:
            6px;
    }


    .signal-led {
        height: 14px;
    }

}


/* ==========================================================
   AJUSTE FINAL - BLOCO SINAL RECEBIDO
   Aproxima Clareza/Sinal do S-Meter, elimina cortes e mantém
   o RST dentro da mesma área visual.
   ========================================================== */

.signal-led-panel {
    overflow: visible !important;
}


.signal-workbench-led {
    display: grid !important;

    grid-template-columns:
        minmax(220px, 238px)
        minmax(250px, 1fr)
        64px !important;

    gap: 8px !important;

    align-items: center !important;

    width: 100% !important;

    min-width: 0 !important;
}


.signal-meter-pane {
    min-width: 0 !important;
}


.signal-led-controls {
    min-width: 0 !important;

    display: flex !important;

    flex-direction: column !important;

    gap: 10px !important;

    justify-content: center !important;
}


.signal-led-row {
    display: grid !important;

    grid-template-columns:
        58px
        minmax(0, 1fr) !important;

    gap: 6px !important;

    align-items: center !important;

    min-width: 0 !important;

    margin: 0 !important;
}


.signal-led-label {
    margin: 0 !important;

    font-size: .75rem !important;

    font-weight: 750 !important;

    line-height: 1 !important;

    color: #334155 !important;

    white-space: nowrap !important;
}


.signal-led-strip {
    width: 100% !important;

    min-width: 0 !important;

    display: grid !important;

    align-items: center !important;

    gap: 5px !important;

    padding:
        6px
        7px !important;

    border-radius: 7px !important;

    overflow: hidden !important;

    box-sizing: border-box !important;
}


.signal-led-strip-5 {
    grid-template-columns:
        repeat(5, minmax(0, 1fr)) !important;
}


.signal-led-strip-9 {
    grid-template-columns:
        repeat(9, minmax(0, 1fr)) !important;
}


.signal-led {
    display: block !important;

    width: 100% !important;

    min-width: 0 !important;

    height: 12px !important;

    margin: 0 !important;

    padding: 0 !important;

    border-radius: 999px !important;

    box-sizing: border-box !important;
}


.signal-rst-led {
    width: 64px !important;

    min-width: 64px !important;

    min-height: 66px !important;

    margin: 0 !important;

    padding:
        6px
        4px !important;

    align-self: center !important;

    justify-self: stretch !important;

    box-sizing: border-box !important;

    overflow: hidden !important;
}


.signal-rst-led .rst-label {
    font-size: .58rem !important;
}


.signal-rst-led .rst-number {
    font-size: 1.48rem !important;

    line-height: 1 !important;
}


/* Deixa o S-Meter mais compacto para sobrar área útil */
.signal-led-panel .px-meter {
    height: 104px !important;
}


/* ==========================================================
   TABLET LANDSCAPE
   ========================================================== */

@media (max-width: 1180px) {

    .signal-workbench-led {
        grid-template-columns:
            minmax(200px, 220px)
            minmax(230px, 1fr)
            60px !important;

        gap: 7px !important;
    }


    .signal-led-row {
        grid-template-columns:
            54px
            minmax(0, 1fr) !important;

        gap: 5px !important;
    }


    .signal-led-strip {
        gap: 4px !important;

        padding:
            5px
            6px !important;
    }


    .signal-led {
        height: 11px !important;
    }


    .signal-rst-led {
        width: 60px !important;
        min-width: 60px !important;

        min-height: 62px !important;
    }

}


/* ==========================================================
   TABLET PORTRAIT
   Mantém medidor e LEDs lado a lado quando houver espaço.
   ========================================================== */

@media (max-width: 849px) and (min-width: 621px) {

    .signal-workbench-led {
        grid-template-columns:
            minmax(190px, 215px)
            minmax(220px, 1fr) !important;

        grid-template-areas:
            "meter controls"
            "meter rst" !important;

        column-gap: 8px !important;
        row-gap: 6px !important;
    }


    .signal-workbench-led .signal-meter-pane {
        grid-area: meter !important;
    }


    .signal-workbench-led .signal-led-controls {
        grid-area: controls !important;
    }


    .signal-workbench-led .signal-rst-led {
        grid-area: rst !important;

        justify-self: end !important;

        width: 62px !important;
        min-width: 62px !important;

        min-height: 38px !important;

        flex-direction: row !important;

        gap: 4px !important;
    }

}


/* ==========================================================
   CELULAR
   Nada fica cortado: empilha com pouco espaço vertical.
   ========================================================== */

@media (max-width: 620px) {

    .signal-workbench-led {
        grid-template-columns:
            1fr !important;

        grid-template-areas:
            "meter"
            "controls"
            "rst" !important;

        gap: 8px !important;
    }


    .signal-workbench-led .signal-meter-pane {
        grid-area: meter !important;
    }


    .signal-workbench-led .signal-led-controls {
        grid-area: controls !important;

        gap: 8px !important;
    }


    .signal-workbench-led .signal-rst-led {
        grid-area: rst !important;

        width: 100% !important;
        min-width: 0 !important;

        min-height: 32px !important;

        flex-direction: row !important;

        justify-content: flex-end !important;

        gap: 5px !important;

        padding:
            3px
            6px !important;

        border: 0 !important;

        background: transparent !important;

        box-shadow: none !important;
    }


    .signal-led-row {
        grid-template-columns:
            50px
            minmax(0, 1fr) !important;

        gap: 5px !important;
    }


    .signal-led-strip {
        gap: 3px !important;

        padding:
            5px !important;
    }


    .signal-led {
        height: 14px !important;
    }

}


/* ==========================================================
   AÇÕES DO CONTATO - SALVAR + APAGAR
   ========================================================== */

.contato-actions-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto;

    gap: 8px;

    align-items: stretch;
}


.btn-excluir-contato {
    min-width: 112px;

    font-weight: 750;

    white-space: nowrap;
}


.btn-excluir-contato:disabled {
    opacity: .38;

    cursor: not-allowed;

    background: #f8fafc;

    border-color: #cbd5e1;

    color: #94a3b8;
}


/*
 * O botão só ganha destaque de perigo
 * quando existe contato selecionado.
 */
.btn-excluir-contato:not(:disabled) {
    background: #fff;

    border-color: #dc3545;

    color: #dc3545;
}


.btn-excluir-contato:not(:disabled):hover,
.btn-excluir-contato:not(:disabled):focus-visible {
    background: #dc3545;

    border-color: #dc3545;

    color: #fff;
}


/* ==========================================================
   TABLET / CELULAR
   ========================================================== */

@media (max-width: 620px) {

    .contato-actions-grid {
        grid-template-columns:
            minmax(0, 1fr)
            96px;

        gap: 6px;
    }


    .btn-excluir-contato {
        min-width: 0;

        padding-left: 8px;
        padding-right: 8px;

        font-size: .78rem;
    }

}


@media (max-width: 390px) {

    .contato-actions-grid {
        grid-template-columns:
            1fr;
    }


    /*
     * No celular muito pequeno o botão apagado continua visível,
     * mas compacto e abaixo do botão principal.
     */
    .btn-excluir-contato {
        min-height: 38px;
    }

}


/* ==========================================================
   ESTAÇÃO DO OPERADOR - POTÊNCIA
   ========================================================== */

.estacao-operador-grid {
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr)
        minmax(115px, .42fr);
}


.estacao-potencia .form-control {
    min-height: 40px;

    font-size: .9rem;
}


@media (max-width: 849px) {

    .estacao-operador-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }


    .estacao-potencia {
        grid-column:
            1 / -1;
    }

}


@media (max-width: 560px) {

    .estacao-operador-grid {
        grid-template-columns:
            1fr;
    }


    .estacao-potencia {
        grid-column:
            auto;
    }

}


/* ==========================================================
   TABLET EM PAISAGEM DENTRO DO LAYOUT DE DUAS COLUNAS

   A largura da coluna esquerda é menor que a viewport. Por
   isso o S-Meter ocupa a primeira linha, e os controles/RST
   dividem a segunda sem ultrapassar o card.
   Este bloco permanece por último para prevalecer sobre os
   ajustes antigos de tablet existentes acima.
   ========================================================== */
@media (min-width:850px) and (max-width:1400px) and (pointer:coarse){

    .signal-card.signal-card-integrado{
        overflow:hidden !important;
    }

    .signal-workbench-led{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) 60px !important;
        grid-template-areas:
            "meter meter"
            "controls rst" !important;

        gap:8px !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
    }

    .signal-workbench-led .signal-meter-pane{
        grid-area:meter !important;
        width:100% !important;
        min-width:0 !important;
    }

    .signal-workbench-led .signal-led-controls{
        grid-area:controls !important;
        width:100% !important;
        min-width:0 !important;
        gap:7px !important;
    }

    .signal-workbench-led .signal-rst-led{
        grid-area:rst !important;
        align-self:stretch !important;
        justify-self:stretch !important;
        width:60px !important;
        min-width:60px !important;
        max-width:60px !important;
    }

    .signal-led-row{
        grid-template-columns:52px minmax(0,1fr) !important;
        width:100% !important;
        min-width:0 !important;
    }

    .signal-led-strip{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
    }
}
