/* ==========================================================
   DX MAN
   Arquivo: style.css
   Estilo geral do sistema
   ========================================================== */

/* ==========================================================
   RESET E BASE
   ========================================================== */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    width: 100%;
    min-height: 100%;
}

body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    color: #f0f6fc;
    background:
        radial-gradient(
            circle at top,
            rgba(31, 111, 235, 0.10),
            transparent 34%
        ),
        #0d1117;
    font-family: "Segoe UI", Arial, Helvetica, sans-serif;
    font-size: 15px;
    line-height: 1.5;
}

img {
    max-width: 100%;
}

a {
    color: #58a6ff;
    text-decoration: none;
    transition:
        color 0.2s ease,
        background-color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

a:hover {
    color: #79c0ff;
    text-decoration: none;
}

button,
input,
select,
textarea {
    font: inherit;
}

/* ==========================================================
   LOGIN
   ========================================================== */

.login-box {
    width: calc(100% - 24px);
    max-width: 430px;
    margin: auto;
    padding: 40px;
    background: rgba(22, 27, 34, 0.96);
    border: 1px solid #30363d;
    border-radius: 14px;
    box-shadow:
        0 20px 60px rgba(0, 0, 0, 0.48),
        0 0 30px rgba(31, 111, 235, 0.08);
}

.login-box h1 {
    margin-bottom: 30px;
    color: #58a6ff;
    text-align: center;
    font-size: 40px;
    line-height: 1.1;
    letter-spacing: 1px;
}

.login-box form {
    width: 100%;
}

.login-box label {
    display: block;
    margin-top: 16px;
    margin-bottom: 7px;
    color: #c9d1d9;
    font-weight: 600;
}

.login-box input {
    width: 100%;
    min-height: 46px;
    padding: 12px 14px;
    color: #f0f6fc;
    background: #0d1117;
    border: 1px solid #30363d;
    border-radius: 7px;
    outline: none;
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

.login-box input:focus {
    border-color: #58a6ff;
    box-shadow: 0 0 0 3px rgba(88, 166, 255, 0.14);
}

.login-box input::placeholder {
    color: #6e7681;
}

.login-box button {
    width: 100%;
    min-height: 48px;
    margin-top: 26px;
    padding: 13px 20px;
    color: #ffffff;
    background: #238636;
    border: 1px solid #238636;
    border-radius: 7px;
    font-weight: 700;
    cursor: pointer;
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

.login-box button:hover {
    background: #2ea043;
    border-color: #2ea043;
    transform: translateY(-1px);
}

.login-box p {
    margin-top: 20px;
    text-align: center;
}

/* ==========================================================
   PÁGINAS DE FORMULÁRIO
   ========================================================== */

.pagina-formulario {
    width: 100%;
    flex: 1;
    padding: 40px 24px;
}

.formulario-painel {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 34px;
    background: rgba(22, 27, 34, 0.98);
    border: 1px solid #30363d;
    border-radius: 14px;
    box-shadow:
        0 18px 50px rgba(0, 0, 0, 0.35),
        0 0 30px rgba(31, 111, 235, 0.05);
}

.formulario-cabecalho {
    margin-bottom: 28px;
    padding-bottom: 20px;
    border-bottom: 1px solid #30363d;
}

.formulario-cabecalho h1 {
    margin: 0 0 7px;
    color: #58a6ff;
    font-size: 32px;
    line-height: 1.2;
}

.formulario-cabecalho p {
    margin: 0;
    color: #8b949e;
    font-size: 15px;
}

/* ==========================================================
   GRADE DE CAMPOS
   ========================================================== */

.formulario-grade {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 24px;
}

.campo {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.campo-duplo {
    grid-column: 1 / -1;
}

.campo label {
    margin: 0 0 7px;
    color: #c9d1d9;
    font-size: 14px;
    font-weight: 600;
}

.campo input,
.campo select,
.campo textarea {
    width: 100%;
    min-height: 44px;
    padding: 11px 13px;
    color: #f0f6fc;
    background: #0d1117;
    border: 1px solid #30363d;
    border-radius: 7px;
    outline: none;
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background-color 0.2s ease;
}

.campo textarea {
    min-height: 120px;
    resize: vertical;
}

.campo input:focus,
.campo select:focus,
.campo textarea:focus {
    border-color: #58a6ff;
    box-shadow: 0 0 0 3px rgba(88, 166, 255, 0.12);
}

.campo input::placeholder,
.campo textarea::placeholder {
    color: #6e7681;
}

.campo input:disabled,
.campo select:disabled,
.campo textarea:disabled {
    color: #8b949e;
    background: #161b22;
    cursor: not-allowed;
}

/* ==========================================================
   AÇÕES DOS FORMULÁRIOS
   ========================================================== */

.formulario-acoes {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 12px;
    padding-top: 10px;
}

.formulario-acoes button,
.botao-secundario {
    min-width: 145px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 20px;
    border-radius: 7px;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

.formulario-acoes button {
    margin: 0;
    color: #ffffff;
    background: #238636;
    border: 1px solid #238636;
}

.formulario-acoes button:hover {
    background: #2ea043;
    border-color: #2ea043;
    transform: translateY(-1px);
}

.botao-secundario {
    color: #c9d1d9;
    background: #21262d;
    border: 1px solid #30363d;
}

.botao-secundario:hover {
    color: #ffffff;
    background: #30363d;
    border-color: #58a6ff;
    transform: translateY(-1px);
}

/* ==========================================================
   BOTÕES GERAIS
   ========================================================== */

.botao {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 22px;
    color: #ffffff;
    border: 1px solid transparent;
    border-radius: 7px;
    font-weight: 700;
    cursor: pointer;
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

.botao:hover {
    color: #ffffff;
    transform: translateY(-1px);
}

.botao-verde {
    background: #238636;
    border-color: #238636;
}

.botao-verde:hover {
    background: #2ea043;
    border-color: #2ea043;
}

.botao-azul {
    background: #1f6feb;
    border-color: #1f6feb;
}

.botao-azul:hover {
    background: #388bfd;
    border-color: #388bfd;
}

.botao-vermelho {
    background: #da3633;
    border-color: #da3633;
}

.botao-vermelho:hover {
    background: #f85149;
    border-color: #f85149;
}

.botao-cinza {
    color: #c9d1d9;
    background: #21262d;
    border-color: #30363d;
}

.botao-cinza:hover {
    color: #ffffff;
    background: #30363d;
    border-color: #58a6ff;
}

/* ==========================================================
   CONFIRMAÇÃO DE CADASTRO
   ========================================================== */

.confirmacao-painel {
    width: 100%;
    max-width: 660px;
    margin: 20px auto;
    padding: 44px 38px;
    text-align: center;
    background: rgba(22, 27, 34, 0.98);
    border: 1px solid #30363d;
    border-radius: 16px;
    box-shadow:
        0 20px 60px rgba(0, 0, 0, 0.42),
        0 0 35px rgba(31, 111, 235, 0.06);
}

.confirmacao-icone {
    width: 82px;
    height: 82px;
    margin: 0 auto 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #238636;
    border: 4px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;
    font-size: 42px;
    font-weight: 800;
    box-shadow: 0 10px 25px rgba(35, 134, 54, 0.28);
}

.confirmacao-painel h1 {
    margin-bottom: 12px;
    color: #58a6ff;
    font-size: 32px;
    line-height: 1.25;
}

.confirmacao-texto {
    margin-bottom: 24px;
    color: #c9d1d9;
    font-size: 17px;
}

.confirmacao-registro {
    margin: 25px 0;
    padding: 22px;
    background: #0d1117;
    border: 1px solid #30363d;
    border-radius: 10px;
}

.confirmacao-registro span {
    display: block;
    margin-bottom: 8px;
    color: #8b949e;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.confirmacao-registro strong {
    display: block;
    color: #79c0ff;
    font-family: Consolas, "Courier New", monospace;
    font-size: 25px;
    letter-spacing: 1px;
    word-break: break-word;
}

.confirmacao-aviso {
    margin: 24px 0 0;
    color: #c9d1d9;
    line-height: 1.7;
}

.confirmacao-aviso strong {
    color: #e3b341;
}

.confirmacao-acoes {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-top: 30px;
}

/* ==========================================================
   MENSAGENS
   ========================================================== */

.mensagem {
    width: 100%;
    margin-bottom: 20px;
    padding: 14px 16px;
    border-radius: 7px;
    font-size: 14px;
}

.mensagem-sucesso {
    color: #aff5b4;
    background: rgba(35, 134, 54, 0.18);
    border: 1px solid #238636;
}

.mensagem-erro {
    color: #ffb3b0;
    background: rgba(218, 54, 51, 0.18);
    border: 1px solid #da3633;
}

.mensagem-aviso {
    color: #eac54f;
    background: rgba(158, 106, 3, 0.18);
    border: 1px solid #9e6a03;
}

/* ==========================================================
   TOPO E NAVEGAÇÃO
   ========================================================== */

.topbar {
    width: 100%;
    min-height: 62px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 30px;
    background: #161b22;
    border-bottom: 1px solid #30363d;
}

.logo {
    color: #58a6ff;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: 1px;
}

.topbar nav {
    display: flex;
    align-items: center;
    gap: 24px;
}

.topbar nav a {
    color: #c9d1d9;
    font-weight: 600;
}

.topbar nav a:hover {
    color: #58a6ff;
}

/* ==========================================================
   TABELAS
   ========================================================== */

.tabela-container {
    width: 100%;
    overflow-x: auto;
    background: #161b22;
    border: 1px solid #30363d;
    border-radius: 10px;
}

.tabela {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
}

.tabela th,
.tabela td {
    padding: 13px 14px;
    text-align: left;
    border-bottom: 1px solid #30363d;
}

.tabela th {
    color: #f0f6fc;
    background: #21262d;
    font-size: 14px;
}

.tabela td {
    color: #c9d1d9;
    background: #161b22;
}

.tabela tr:last-child td {
    border-bottom: 0;
}

.tabela tbody tr:hover td {
    background: #1c2128;
}

/* ==========================================================
   CARTÕES E PAINÉIS
   ========================================================== */

.painel {
    padding: 24px;
    background: #161b22;
    border: 1px solid #30363d;
    border-radius: 12px;
    box-shadow: 0 14px 38px rgba(0, 0, 0, 0.28);
}

.painel h2,
.painel h3 {
    margin-bottom: 14px;
    color: #58a6ff;
}

.grade-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.card {
    padding: 22px;
    background: #161b22;
    border: 1px solid #30363d;
    border-radius: 12px;
    transition:
        border-color 0.2s ease,
        transform 0.2s ease;
}

.card:hover {
    border-color: #58a6ff;
    transform: translateY(-2px);
}

/* ==========================================================
   RODAPÉ
   ========================================================== */

.footer {
    width: 100%;
    margin-top: auto;
    padding: 16px 20px;
    color: #8b949e;
    background: #161b22;
    border-top: 1px solid #30363d;
    text-align: center;
    font-size: 13px;
}

/* ==========================================================
   RESPONSIVIDADE
   ========================================================== */

@media (max-width: 900px) {
    .grade-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .pagina-formulario {
        padding: 20px 12px;
    }

    .formulario-painel {
        padding: 22px 18px;
        border-radius: 10px;
    }

    .formulario-cabecalho h1 {
        font-size: 26px;
    }

    .formulario-grade {
        grid-template-columns: 1fr;
    }

    .campo-duplo {
        grid-column: auto;
    }

    .formulario-acoes {
        flex-direction: column-reverse;
        align-items: stretch;
    }

    .formulario-acoes button,
    .botao-secundario {
        width: 100%;
    }

    .confirmacao-painel {
        margin: 0 auto;
        padding: 32px 22px;
    }

    .confirmacao-painel h1 {
        font-size: 26px;
    }

    .confirmacao-registro strong {
        font-size: 20px;
    }

    .confirmacao-acoes {
        flex-direction: column;
    }

    .confirmacao-acoes .botao {
        width: 100%;
    }

    .topbar {
        align-items: flex-start;
        flex-direction: column;
        gap: 14px;
        padding: 16px 20px;
    }

    .topbar nav {
        width: 100%;
        flex-wrap: wrap;
        gap: 14px;
    }

    .grade-cards {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .login-box {
        padding: 28px 20px;
    }

    .login-box h1 {
        font-size: 32px;
    }

    .formulario-painel {
        padding: 20px 15px;
    }

    .confirmacao-icone {
        width: 70px;
        height: 70px;
        font-size: 34px;
    }
}

/* ==========================================================
   HOME PÚBLICA / LOGIN HERO
   ========================================================== */
.home-body{display:block;overflow-x:hidden;background:#080c12}.home-hero{position:relative;min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:center;gap:clamp(30px,5vw,90px);padding:clamp(30px,5vw,76px);isolation:isolate;background-image:url('../images/dxman-radio-hero.png');background-position:center;background-size:cover;background-attachment:fixed}.home-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,9,14,.34),rgba(5,9,14,.36) 42%,rgba(5,9,14,.8) 74%,rgba(5,9,14,.92)),linear-gradient(0deg,rgba(5,9,14,.72),transparent 55%)}.home-story{max-width:720px;padding-top:20px;text-shadow:0 2px 18px rgba(0,0,0,.7)}.home-brand{margin-bottom:28px;color:#69b4ff;font-size:clamp(30px,4vw,46px);font-weight:900;letter-spacing:2px}.home-brand span{color:#fff}.home-kicker{margin:18px 0 8px;color:#79c0ff;font-size:11px;font-weight:800;letter-spacing:3px}.home-story h1{max-width:650px;margin:0 0 18px;color:#fff;font-size:clamp(38px,5.4vw,72px);line-height:1.02;letter-spacing:-2px}.home-lead{max-width:650px;color:#d0d7de;font-size:clamp(16px,1.5vw,20px);line-height:1.75}.cw-line{display:flex;gap:22px;color:#58a6ff;font-family:Consolas,monospace;font-size:17px;letter-spacing:8px;opacity:.8}.cw-line span{animation:cwPulse 4.8s ease-in-out infinite}.cw-line span:nth-child(2){animation-delay:.7s}.cw-line span:nth-child(3){animation-delay:1.4s}.cw-line span:nth-child(4){animation-delay:2.1s}.home-history{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:30px}.home-history article{padding:15px 16px;background:rgba(13,17,23,.57);border:1px solid rgba(88,166,255,.22);border-radius:9px;backdrop-filter:blur(6px)}.home-history strong,.home-history span{display:block}.home-history strong{margin-bottom:5px;color:#79c0ff;font-size:16px}.home-history span{color:#b7c1cc;font-size:12px;line-height:1.55}.home-tribute{margin-top:23px;color:#8b949e;font-size:12px;font-style:italic;letter-spacing:1px}.home-login{width:100%;max-width:470px;justify-self:end}.home-login-card{padding:clamp(26px,3vw,40px);background:rgba(17,22,29,.92);border:1px solid rgba(88,166,255,.25);border-radius:16px;box-shadow:0 28px 80px rgba(0,0,0,.58),0 0 45px rgba(31,111,235,.1);backdrop-filter:blur(16px)}.home-login-head{display:flex;align-items:center;gap:15px;margin-bottom:11px}.home-login-head small{color:#58a6ff;font-size:9px;font-weight:800;letter-spacing:2px}.home-login-head h2{margin-top:3px;color:#f0f6fc;font-size:27px}.home-login-card>p{margin-bottom:22px;color:#8b949e}.home-signal{width:48px;height:48px;display:flex;align-items:flex-end;justify-content:center;gap:4px;padding:11px;background:rgba(31,111,235,.13);border:1px solid rgba(88,166,255,.3);border-radius:50%}.home-signal i{width:4px;background:#58a6ff;border-radius:3px;animation:signalBars 1.3s ease-in-out infinite}.home-signal i:nth-child(1){height:9px}.home-signal i:nth-child(2){height:20px;animation-delay:.2s}.home-signal i:nth-child(3){height:14px;animation-delay:.4s}.home-login-card label{display:block;margin:14px 0 7px;color:#c9d1d9;font-size:13px;font-weight:700}.home-login-card input{width:100%;min-height:48px;padding:12px 14px;color:#f0f6fc;background:rgba(6,10,15,.78);border:1px solid #30363d;border-radius:8px;outline:none}.home-login-card input:focus{border-color:#58a6ff;box-shadow:0 0 0 3px rgba(88,166,255,.13)}.home-login-card button{width:100%;min-height:49px;margin-top:24px;color:#fff;background:#238636;border:1px solid #2ea043;border-radius:8px;font-weight:800;cursor:pointer}.home-login-card button:hover{background:#2ea043;transform:translateY(-1px)}.home-login-links{display:flex;justify-content:space-between;gap:18px;margin-top:20px;font-size:13px}.home-cw-status{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:25px;padding-top:18px;color:#6e7681;border-top:1px solid #30363d}.home-cw-status span{width:7px;height:7px;background:#3fb950;border-radius:50%;box-shadow:0 0 10px #3fb950;animation:cwBlink 1.5s steps(1) infinite}.home-cw-status code{font-size:10px;letter-spacing:2px}
@keyframes cwPulse{0%,100%{opacity:.25;transform:translateY(0)}45%{opacity:1;text-shadow:0 0 12px #58a6ff}55%{transform:translateY(-2px)}}@keyframes cwBlink{0%,62%{opacity:1}63%,100%{opacity:.2}}@keyframes signalBars{0%,100%{transform:scaleY(.45);opacity:.45}50%{transform:scaleY(1);opacity:1}}
@media(max-width:1000px){.home-hero{grid-template-columns:1fr;align-content:center;background-position:35% center;background-attachment:scroll}.home-shade{background:linear-gradient(rgba(5,9,14,.52),rgba(5,9,14,.9))}.home-story{max-width:820px}.home-login{max-width:560px;justify-self:start}.home-history{max-width:720px}}
@media(max-width:650px){.home-hero{padding:24px 15px 38px;background-position:28% center}.home-story h1{letter-spacing:-1px}.home-history{grid-template-columns:1fr}.home-history article:nth-child(2),.home-history article:nth-child(3){display:none}.home-login{max-width:none}.home-login-links{align-items:center;flex-direction:column}.cw-line{gap:8px;font-size:13px;letter-spacing:4px}.home-login-head h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){.cw-line span,.home-signal i,.home-cw-status span{animation:none}.home-hero{background-attachment:scroll}}

/* ==========================================================
   ADMINISTRAÇÃO DX MAN
   ========================================================== */
.admin-body{display:block;background:#0d1117;color:#f0f6fc}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:260px;display:flex;flex-direction:column;background:#11161d;border-right:1px solid #30363d;z-index:20}.admin-brand{padding:28px 25px 24px;color:#58a6ff;font-size:27px;font-weight:800;letter-spacing:1px;border-bottom:1px solid #21262d}.admin-brand span{color:#f0f6fc}.admin-brand small{display:block;margin-top:5px;color:#6e7681;font-size:10px;letter-spacing:2px}.admin-nav{padding:18px 12px;display:flex;flex-direction:column;gap:5px}.admin-nav a{min-height:44px;display:flex;align-items:center;gap:12px;padding:10px 13px;color:#9da7b3;border:1px solid transparent;border-radius:8px;font-weight:600}.admin-nav a:hover{color:#f0f6fc;background:#161b22}.admin-nav a.ativo{color:#fff;background:rgba(31,111,235,.16);border-color:rgba(88,166,255,.24)}.admin-nav-icone{width:22px;color:#58a6ff;text-align:center;font-size:18px}.admin-nav b{margin-left:auto;min-width:24px;padding:2px 7px;color:#fff;background:#da3633;border-radius:20px;text-align:center;font-size:11px}.admin-sidebar-footer{margin-top:auto;padding:20px 24px;border-top:1px solid #21262d}.admin-sidebar-footer span,.admin-sidebar-footer small{display:block}.admin-sidebar-footer span{font-weight:700}.admin-sidebar-footer small{margin:3px 0 12px;color:#6e7681;font-size:11px}.admin-sidebar-footer a{color:#f85149;font-size:13px}.admin-shell{min-height:100vh;margin-left:260px;display:flex;flex-direction:column}.admin-topbar{min-height:88px;display:flex;align-items:center;gap:18px;padding:18px 34px;background:rgba(22,27,34,.94);border-bottom:1px solid #30363d}.admin-topbar h1{margin:2px 0 0;color:#f0f6fc;font-size:24px;line-height:1.2}.admin-breadcrumb,.admin-eyebrow{color:#58a6ff;font-size:10px;font-weight:800;letter-spacing:1.6px}.admin-site-link{margin-left:auto;padding:9px 14px;color:#c9d1d9;background:#21262d;border:1px solid #30363d;border-radius:7px;font-size:13px;font-weight:600}.admin-content{width:100%;max-width:1500px;margin:0 auto;padding:30px 34px 45px}.admin-welcome{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:27px 30px;margin-bottom:22px;background:linear-gradient(110deg,rgba(31,111,235,.15),rgba(22,27,34,.96) 60%);border:1px solid #30363d;border-radius:13px}.admin-welcome h2{margin:5px 0;color:#f0f6fc;font-size:25px}.admin-welcome p{color:#8b949e}.admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.admin-stat{padding:21px;background:#161b22;border:1px solid #30363d;border-radius:11px}.admin-stat:hover{border-color:#58a6ff;transform:translateY(-2px)}.admin-stat.destaque{border-color:rgba(227,179,65,.55)}.admin-stat span,.admin-stat small{display:block;color:#8b949e}.admin-stat strong{display:block;margin:4px 0;color:#f0f6fc;font-size:30px}.admin-stat.destaque strong{color:#e3b341}.admin-panel{padding:24px;background:#161b22;border:1px solid #30363d;border-radius:12px;box-shadow:0 15px 40px rgba(0,0,0,.24)}.admin-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.admin-panel-head h2{margin-top:3px;font-size:20px}.admin-table td{vertical-align:middle}.admin-table td strong,.admin-table td small{display:block}.admin-table td small{margin-top:3px;color:#8b949e;font-size:12px;line-height:1.5}.status-badge{display:inline-flex;padding:4px 9px;border:1px solid;border-radius:20px;font-size:10px;font-weight:800;letter-spacing:.5px}.status-ativo{color:#7ee787;background:rgba(35,134,54,.15);border-color:#238636}.status-bloqueado{color:#ff7b72;background:rgba(218,54,51,.15);border-color:#da3633}.status-pendente{color:#e3b341;background:rgba(158,106,3,.16);border-color:#9e6a03}.status-email{color:#79c0ff;background:rgba(31,111,235,.15);border-color:#1f6feb}.admin-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px;padding:18px 20px;background:#161b22;border:1px solid #30363d;border-radius:10px}.admin-toolbar form{flex:1;max-width:650px}.admin-toolbar label{display:block;margin-bottom:7px;color:#8b949e;font-size:12px;font-weight:700}.admin-toolbar form div{display:flex}.admin-toolbar input{flex:1;min-height:43px;padding:10px 13px;color:#f0f6fc;background:#0d1117;border:1px solid #30363d;border-radius:7px 0 0 7px;outline:none}.admin-toolbar input:focus{border-color:#58a6ff}.admin-toolbar button{padding:10px 18px;color:#fff;background:#1f6feb;border:1px solid #1f6feb;border-radius:0 7px 7px 0;font-weight:700;cursor:pointer}.admin-toolbar>span{color:#8b949e;font-size:13px}.admin-row-actions{display:flex;flex-wrap:wrap;gap:7px}.admin-row-actions button{padding:7px 10px;border:1px solid;border-radius:6px;font-size:11px;font-weight:800;cursor:pointer}.acao-aprovar{color:#aff5b4;background:rgba(35,134,54,.14);border-color:#238636!important}.acao-bloquear{color:#ffb3b0;background:rgba(218,54,51,.14);border-color:#da3633!important}.acao-neutra{color:#c9d1d9;background:#21262d;border-color:#30363d!important}.admin-empty{padding:45px!important;color:#8b949e!important;text-align:center!important}.admin-alert{margin-bottom:18px;padding:13px 16px;border-radius:8px}.admin-alert.sucesso{color:#aff5b4;background:rgba(35,134,54,.16);border:1px solid #238636}.admin-footer{margin-top:auto;padding:17px 30px;color:#6e7681;border-top:1px solid #21262d;text-align:center;font-size:12px}.admin-menu-check,.admin-menu-button,.admin-overlay{display:none}

@media(max-width:1050px){.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-sidebar{transform:translateX(-100%);transition:transform .25s ease}.admin-shell{margin-left:0}.admin-menu-button{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;background:#21262d;border:1px solid #30363d;border-radius:8px;cursor:pointer;font-size:21px}.admin-menu-check:checked~.admin-sidebar{transform:translateX(0)}.admin-menu-check:checked~.admin-overlay{position:fixed;inset:0;display:block;background:rgba(0,0,0,.62);z-index:15}}
@media(max-width:720px){.admin-topbar{padding:15px 16px}.admin-topbar h1{font-size:19px}.admin-site-link{display:none}.admin-content{padding:20px 12px 35px}.admin-welcome{align-items:flex-start;flex-direction:column;padding:22px}.admin-welcome .botao{width:100%}.admin-stats{grid-template-columns:1fr 1fr;gap:10px}.admin-stat{padding:16px}.admin-stat strong{font-size:25px}.admin-panel{padding:14px}.admin-toolbar{align-items:stretch;flex-direction:column}.admin-toolbar form{width:100%}.admin-users{min-width:900px}}
@media(max-width:440px){.admin-stats{grid-template-columns:1fr}.admin-topbar .admin-breadcrumb{display:none}}

/* Logo oficial DX MAN */
.home-brand{margin-bottom:24px;color:inherit;font-size:0;letter-spacing:0}
.home-brand img{display:block;width:min(355px,68vw);height:auto;filter:drop-shadow(0 7px 18px rgba(0,0,0,.48))}
.admin-brand{padding:20px 22px 18px;color:inherit;font-size:0;letter-spacing:0}
.admin-brand img{display:block;width:150px;height:auto}
.admin-brand small{font-size:10px}

/* Controles administrativos */
.acao-editar{display:inline-flex;align-items:center;padding:7px 10px;color:#79c0ff;background:rgba(31,111,235,.12);border:1px solid #1f6feb;border-radius:6px;font-size:11px;font-weight:800}
.acao-excluir{color:#ffb3b0;background:transparent;border-color:#6e3030!important}
.acao-recuperar{color:#aff5b4;background:rgba(35,134,54,.14);border-color:#238636!important}
.acao-limpar{color:#fff;background:#b62324;border-color:#f85149!important;box-shadow:0 0 12px rgba(248,81,73,.16)}
.acao-limpar-bloqueada{color:#6e7681!important;background:#161b22!important;border-color:#30363d!important;cursor:not-allowed!important;opacity:.68}
.admin-cleanup-reason{flex:1 0 100%;max-width:290px;margin-top:0!important;color:#d29922!important;font-size:10px!important;line-height:1.35!important}
.admin-reconfirmar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:16px 20px;background:rgba(227,179,65,.08);border:1px solid rgba(227,179,65,.45);border-radius:9px}.admin-reconfirmar strong,.admin-reconfirmar small{display:block}.admin-reconfirmar strong{color:#f2cc60}.admin-reconfirmar small{margin-top:4px;color:#9da7b3}.admin-reconfirmar button{padding:11px 17px;color:#161b22;background:#e3b341;border:1px solid #f2cc60;border-radius:7px;font-weight:800;cursor:pointer}.admin-reconfirmar button:hover{background:#f2cc60}
.dxm-flag,.cadastro-dxcc-preview img{width:28px;height:21px;object-fit:cover;border:1px solid rgba(255,255,255,.25);border-radius:3px;box-shadow:0 2px 7px rgba(0,0,0,.25)}.cadastro-dxcc-preview{display:flex;align-items:center;gap:9px;margin-top:8px;color:#c9d1d9;font-size:13px}.cadastro-dxcc-preview[hidden]{display:none}
.call-com-bandeira{display:inline-flex!important;align-items:center;gap:7px}.call-com-bandeira .dxm-flag{flex:0 0 auto}
.dxm-state-flag{object-fit:contain;background:#fff;border-color:rgba(88,166,255,.7);box-shadow:0 0 8px rgba(88,166,255,.2)}.cadastro-estado-info{color:#aff5b4!important}.cadastro-estado-info img{object-fit:contain;background:#fff;border-color:rgba(63,185,80,.75)}
.grid-required form{display:grid;gap:10px;width:min(100%,430px);margin:22px auto}.grid-required label{color:#c9d1d9;font-weight:700;text-align:left}.grid-required input{min-height:48px;padding:11px 14px;color:#fff;background:#0d1117;border:1px solid #30363d;border-radius:7px;font-size:18px;letter-spacing:2px;text-transform:uppercase}.grid-required>.botao-secundario{display:inline-flex;margin-top:8px}
.cadastro-grid-info{display:flex;align-items:flex-start;gap:10px;margin-top:10px;padding:13px 15px;color:#aff5b4;background:rgba(35,134,54,.14);border:1px solid rgba(63,185,80,.65);border-radius:8px;box-shadow:0 0 18px rgba(46,160,67,.12)}.cadastro-grid-info:before{content:'✓';display:flex;flex:0 0 24px;height:24px;align-items:center;justify-content:center;color:#fff;background:#238636;border-radius:50%;box-shadow:0 0 10px rgba(63,185,80,.55);font-weight:900}.cadastro-grid-info strong,.cadastro-grid-info span{display:block}.cadastro-grid-info strong{white-space:nowrap}.cadastro-grid-info span{color:#9fe6aa;font-size:12px;line-height:1.5}@media(max-width:650px){.cadastro-grid-info{display:block}.cadastro-grid-info:before{margin-bottom:8px}.cadastro-grid-info strong{white-space:normal;margin-bottom:5px}}
.campo input.campo-imutavel[readonly]{color:#79c0ff;background:rgba(31,111,235,.08);border-color:rgba(88,166,255,.4);font-weight:800;letter-spacing:.5px;cursor:not-allowed}.campo small{color:#8b949e;font-size:11px}
.referencias-dxcc{max-height:540px;overflow:auto;border:1px solid #30363d;border-radius:9px}.referencias-dxcc table{margin:0}.referencias-dxcc thead th{position:sticky;top:0;z-index:2;background:#21262d}.referencias-dxcc .dxm-flag{width:25px;height:19px}
.admin-alert.erro{color:#ffb3b0;background:rgba(218,54,51,.16);border:1px solid #da3633}
.admin-edit{max-width:900px;margin:0 auto}
.admin-toolbar select{flex:1;min-height:43px;padding:10px 13px;color:#f0f6fc;background:#0d1117;border:1px solid #30363d;border-radius:7px 0 0 7px;outline:none}
.admin-edit>.formulario-grade{margin:18px 0 30px;padding:20px;background:#11161d;border:1px solid #30363d;border-radius:10px}
.admin-edit>.formulario-grade>button{align-self:end;min-height:44px;padding:10px 18px;color:#fff;background:#238636;border:1px solid #2ea043;border-radius:7px;font-weight:800;cursor:pointer}
.admin-edit>.formulario-grade>button:hover{background:#2ea043}
.ibge-panel{max-width:980px;margin:0 auto}.ibge-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}.ibge-summary article{padding:20px;background:#11161d;border:1px solid #30363d;border-radius:9px}.ibge-summary strong,.ibge-summary span{display:block}.ibge-summary strong{color:#58a6ff;font-size:24px}.ibge-summary span{margin-top:5px;color:#8b949e;font-size:12px}.ibge-local-info{margin:0 0 20px}.ibge-update-form{display:flex;align-items:center;gap:16px;padding-top:20px;border-top:1px solid #30363d}.ibge-update-form button{min-height:44px;padding:11px 18px;color:#fff;background:#1f6feb;border:1px solid #58a6ff;border-radius:7px;font-weight:800;cursor:pointer}.ibge-update-form button:hover{background:#388bfd}.ibge-update-form small{color:#8b949e}@media(max-width:720px){.ibge-summary{grid-template-columns:1fr}.ibge-update-form{align-items:flex-start;flex-direction:column}}
.admin-edit>h2{margin-top:26px;color:#58a6ff}
.admin-edit>h2:first-child{margin-top:0}
.admin-references{max-width:none}.reference-section{padding-top:4px;margin-bottom:38px;scroll-margin-top:18px}.reference-section+.reference-section{padding-top:30px;border-top:1px solid #30363d}.reference-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px}.reference-heading h2{margin:4px 0 0;color:#f0f6fc}.reference-heading>span{color:#8b949e;font-size:12px}.reference-form{margin-bottom:18px;padding:20px;background:#11161d;border:1px solid #30363d;border-radius:10px}.reference-form .formulario-acoes button{min-height:44px;padding:10px 18px;color:#fff;background:#238636;border:1px solid #2ea043;border-radius:7px;font-weight:800;cursor:pointer}.reference-checks{justify-content:flex-end;gap:9px}.reference-checks label{display:flex;align-items:center;gap:9px;margin:0}.reference-checks input{width:18px;height:18px;min-height:0;padding:0}.referencias-curtas{max-height:390px}.reference-back{display:inline-flex}.admin-table td>.status-badge{display:inline-flex}.admin-table td>a.acao-editar{white-space:nowrap}@media(max-width:720px){.reference-heading{align-items:flex-start;flex-direction:column;gap:5px}}
.clubes-admin{max-width:1440px;margin:0 auto}.clubes-heading{margin-bottom:18px}.clubes-toolbar{display:grid;grid-template-columns:minmax(330px,620px) 1fr;align-items:end;gap:22px;padding:18px;margin-bottom:14px;background:#11161d;border:1px solid #30363d;border-radius:10px}.clubes-localizar{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:end;gap:10px}.clubes-localizar .campo{margin:0}.clubes-localizar input{text-transform:uppercase;font-weight:800;letter-spacing:1px}.clubes-toolbar-acoes{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.clubes-acao{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid transparent;border-radius:7px;color:#fff;font:800 14px/1 inherit;text-decoration:none;cursor:pointer;transition:filter .18s ease,transform .18s ease,opacity .18s ease}.clubes-acao:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-1px)}.clubes-acao:disabled{opacity:.42;cursor:not-allowed}.clubes-posicionar,.clubes-alterar{background:#1f6feb;border-color:#388bfd}.clubes-incluir{background:#238636;border-color:#2ea043}.clubes-excluir{background:#8e2631;border-color:#f85149}.clubes-orientacao{margin-bottom:14px}.clubes-editor{padding-top:10px;margin-bottom:20px;scroll-margin-top:18px}.clubes-lista{max-height:545px;overflow-y:auto}.clubes-lista .clubes-coluna-marcar{width:72px;text-align:center}.clubes-lista tbody tr{cursor:pointer;transition:background .16s ease,box-shadow .16s ease}.clubes-lista tbody tr:hover td{background:#182334}.clubes-lista tbody tr.clube-selecionado td{background:#102b4d;box-shadow:inset 0 1px #2f81f7,inset 0 -1px #2f81f7}.clubes-lista tbody tr.clube-selecionado td:first-child{box-shadow:inset 3px 0 #58a6ff,inset 0 1px #2f81f7,inset 0 -1px #2f81f7}.clubes-lista input[type=radio]{width:18px;height:18px;min-height:0;accent-color:#2f81f7}.clubes-lista td{height:50px}.clube-descricao{display:block;max-width:430px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8b949e}.clubes-lista tbody tr:focus-visible{outline:2px solid #58a6ff;outline-offset:-2px}@media(max-width:900px){.clubes-toolbar{grid-template-columns:1fr}.clubes-toolbar-acoes{justify-content:flex-start}}@media(max-width:600px){.clubes-localizar{grid-template-columns:1fr}.clubes-toolbar-acoes{display:grid;grid-template-columns:1fr}.clubes-acao{width:100%}.clubes-lista{max-height:500px}}
.clubes-admin .clubes-lista{max-height:388px}.clubes-admin .clubes-lista tbody tr,.clubes-admin .clubes-lista tbody td{height:68px}.clubes-admin .clubes-lista tbody td{padding-top:7px;padding-bottom:7px}
.dxcc-admin{max-width:1540px;margin:0 auto}.dxcc-toolbar{grid-template-columns:minmax(360px,680px) 1fr}.dxcc-orientacao{margin-bottom:14px}.dxcc-lista{max-height:418px}.dxcc-lista table{min-width:920px}.dxcc-lista thead th{height:46px}.dxcc-lista tbody tr{height:56px}.dxcc-lista tbody td{height:56px;padding-top:6px;padding-bottom:6px;white-space:nowrap}.dxcc-lista .call-com-bandeira{display:inline-flex;align-items:center;gap:8px}.dxcc-lista td small{display:block;color:#8b949e}.dxcc-form input[name=iso2]{text-transform:uppercase;font-weight:800;letter-spacing:1px}@media(max-width:900px){.dxcc-toolbar{grid-template-columns:1fr}}
.club-declared{color:#79c0ff}.club-missing{color:#ff7b72}.admin-club-review{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:17px 20px;background:rgba(31,111,235,.09);border:1px solid rgba(88,166,255,.34);border-radius:9px}.admin-club-review strong,.admin-club-review small{display:block}.admin-club-review strong{margin:4px 0;color:#f0f6fc}.admin-club-review small{color:#9da7b3}.admin-club-review button{padding:8px 11px;border:1px solid;border-radius:6px;font-size:11px;font-weight:800;cursor:pointer}@media(max-width:760px){.admin-club-review{align-items:flex-start;flex-direction:column}}

/* Indicativo composto para estacoes de 11 metros */
.prefixo-11m-campo[hidden]{display:none}.prefixo-11m-partes{display:grid;grid-template-columns:minmax(80px,.7fr) auto minmax(110px,1fr) auto minmax(110px,1fr);align-items:end;gap:10px}.prefixo-11m-partes label{margin:0}.prefixo-11m-partes label span{display:block;margin-bottom:7px;color:#8b949e;font-size:12px;font-weight:700}.prefixo-11m-partes b{padding-bottom:13px;color:#58a6ff;font-size:20px;text-align:center}.prefixo-11m-partes input{text-align:center;text-transform:uppercase;font-size:18px;font-weight:800;letter-spacing:1.5px}.prefixo-11m-info{display:flex;align-items:flex-start;gap:14px;margin-top:11px;padding:13px 15px;color:#aff5b4;background:rgba(35,134,54,.13);border:1px solid rgba(63,185,80,.5);border-radius:8px}.prefixo-11m-info strong{flex:0 0 auto;color:#7ee787;letter-spacing:.6px}.prefixo-11m-info span{color:#9fe6aa;font-size:12px;line-height:1.5}@media(max-width:650px){.prefixo-11m-partes{grid-template-columns:1fr}.prefixo-11m-partes b{display:none}.prefixo-11m-info{display:block}.prefixo-11m-info strong{display:block;margin-bottom:6px}}

/* Área do operador */
.app-body{display:flex;min-height:100vh;background:#0d1117}.app-topbar{position:sticky;top:0;z-index:20;min-height:76px;display:flex;align-items:center;padding:12px clamp(18px,4vw,60px);background:rgba(17,22,29,.96);border-bottom:1px solid #30363d;backdrop-filter:blur(14px)}.app-logo img{display:block;width:145px;height:auto}.app-topbar nav{margin-left:auto;display:flex;align-items:center;gap:8px}.app-topbar nav a{padding:9px 13px;color:#9da7b3;border:1px solid transparent;border-radius:7px;font-size:13px;font-weight:700}.app-topbar nav a:hover,.app-topbar nav a.ativo{color:#fff;background:#21262d}.app-topbar .app-admin-link{color:#79c0ff;border-color:rgba(88,166,255,.3)}.app-main{width:100%;max-width:1500px;flex:1;margin:0 auto;padding:32px clamp(18px,4vw,60px) 55px}.app-hero{min-height:185px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:32px 35px;background:linear-gradient(105deg,rgba(31,111,235,.18),rgba(22,27,34,.93) 58%),url('../images/dxman-radio-hero.png') center 44%/cover;border:1px solid #30363d;border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.28)}.app-hero h1{margin:6px 0;color:#fff;font-size:clamp(28px,4vw,43px)}.app-hero p{color:#c9d1d9}.app-hero p strong{color:#79c0ff}.app-signal{display:flex;align-items:center;gap:12px;padding:14px 17px;background:rgba(13,17,23,.76);border:1px solid #30363d;border-radius:9px}.app-signal>span{width:9px;height:9px;background:#3fb950;border-radius:50%;box-shadow:0 0 12px #3fb950}.app-signal strong,.app-signal small{display:block}.app-signal strong{font-size:11px;letter-spacing:1px}.app-signal small{color:#8b949e;font-size:10px}.app-admin-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:18px 0;padding:17px 21px;background:rgba(31,111,235,.1);border:1px solid rgba(88,166,255,.32);border-radius:10px}.app-admin-banner span,.app-admin-banner strong{display:block}.app-admin-banner span{color:#58a6ff;font-size:9px;font-weight:800;letter-spacing:1.5px}.app-admin-banner a{padding:10px 14px;color:#fff;background:#1f6feb;border-radius:7px;font-weight:800}.app-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin:35px 0 16px}.app-section-head h2{margin-top:4px;font-size:25px}.app-section-head p{color:#8b949e}.app-modules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.app-module{position:relative;min-height:205px;padding:22px;display:flex;flex-direction:column;color:#c9d1d9;background:#161b22;border:1px solid #30363d;border-radius:12px}.app-module:hover{color:#fff;border-color:#58a6ff;transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.24)}.app-module-icon{width:43px;height:43px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;color:#79c0ff;background:rgba(31,111,235,.13);border:1px solid rgba(88,166,255,.28);border-radius:9px;font-size:22px}.app-module-phase{position:absolute;top:20px;right:20px;color:#6e7681;font-size:9px;font-weight:800;letter-spacing:1px}.app-module h3{margin-bottom:7px;color:#f0f6fc;font-size:18px}.app-module p{color:#8b949e;font-size:13px}.app-module b{margin-top:auto;padding-top:15px;color:#58a6ff;font-size:12px}.app-footer{padding:17px 25px;color:#6e7681;border-top:1px solid #21262d;text-align:center;font-size:12px}.app-placeholder{max-width:760px;margin:55px auto;padding:45px;background:#161b22;border:1px solid #30363d;border-radius:14px;text-align:center}.app-placeholder h1{margin:8px 0 14px;font-size:34px}.app-placeholder p{margin-bottom:28px;color:#8b949e}
@media(max-width:1100px){.app-modules{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.app-topbar{align-items:flex-start;flex-direction:column}.app-topbar nav{width:100%;margin:8px 0 0;overflow-x:auto}.app-topbar nav a{white-space:nowrap}.app-hero{align-items:flex-start;flex-direction:column;padding:25px 22px}.app-signal{width:100%}.app-admin-banner{align-items:flex-start;flex-direction:column}.app-admin-banner a{width:100%;text-align:center}.app-section-head{align-items:flex-start;flex-direction:column;gap:5px}.app-modules{grid-template-columns:1fr}.app-module{min-height:185px}}
.cluster-body{display:flex;flex-direction:column}.cluster-shell{max-width:1650px}.cluster-hero,.cluster-compose,.cluster-board{background:#161b22;border:1px solid #30363d;border-radius:13px}.cluster-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:16px;padding:23px 27px;background:linear-gradient(110deg,rgba(31,111,235,.16),#161b22 58%)}.cluster-hero h1{margin:4px 0;color:#f0f6fc;font-size:31px}.cluster-hero p{color:#8b949e}.cluster-online{display:flex;align-items:center;gap:11px;padding:12px 15px;background:#0d1117;border:1px solid #30363d;border-radius:9px}.cluster-online i{width:9px;height:9px;background:#3fb950;border-radius:50%;box-shadow:0 0 13px #3fb950}.cluster-online strong,.cluster-online small{display:block}.cluster-online strong{font-size:11px;letter-spacing:1px}.cluster-online small{margin-top:2px;color:#8b949e;font-size:10px}.cluster-compose,.cluster-board{margin-bottom:16px;padding:20px 23px}.cluster-section-title{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.cluster-section-title h2{margin-top:3px;color:#f0f6fc;font-size:21px}.cluster-spotter{color:#79c0ff;font-size:11px;font-weight:750}.cluster-spot-form{display:grid;grid-template-columns:1.25fr 1fr .65fr .55fr .65fr 1.8fr auto;align-items:end;gap:10px}.cluster-spot-form label>span{display:block;margin-bottom:6px;color:#c9d1d9;font-size:11px;font-weight:750}.cluster-spot-form input,.cluster-spot-form select,.cluster-filters input,.cluster-filters select{width:100%;min-height:42px;padding:9px 11px;color:#f0f6fc;background:#0d1117;border:1px solid #30363d;border-radius:7px}.cluster-spot-form input:focus,.cluster-spot-form select:focus,.cluster-filters input:focus,.cluster-filters select:focus{border-color:#58a6ff;box-shadow:0 0 0 2px rgba(88,166,255,.12);outline:0}.cluster-spot-form button{min-height:42px;padding:10px 17px;color:#fff;background:#1f6feb;border:1px solid #388bfd;border-radius:7px;font-weight:800;white-space:nowrap;cursor:pointer}.cluster-spot-form button:hover{background:#388bfd}.cluster-refresh{padding:8px 11px;color:#79c0ff;background:#0d1117;border:1px solid #30363d;border-radius:7px;font-size:11px;font-weight:750}.cluster-filters{display:grid;grid-template-columns:minmax(240px,1fr) 190px auto;align-items:center;gap:10px;margin-bottom:12px}.cluster-filters span{color:#6e7681;font-size:10px;text-align:right}.cluster-table-wrap{max-height:510px;overflow:auto;border:1px solid #30363d;border-radius:9px}.cluster-table{width:100%;border-collapse:collapse;min-width:1120px}.cluster-table th{position:sticky;top:0;z-index:2;padding:11px 13px;color:#c9d1d9;background:#21262d;border-bottom:1px solid #30363d;font-size:11px;text-align:left}.cluster-table td{padding:12px 13px;color:#c9d1d9;border-bottom:1px solid #30363d;font-size:12px;vertical-align:middle}.cluster-table tbody tr:hover{background:rgba(88,166,255,.055)}.cluster-table td strong,.cluster-table td small{display:block}.cluster-table td small{margin-top:3px;color:#6e7681;font-size:9px}.cluster-call{color:#79c0ff}.cluster-mode,.cluster-work{display:inline-flex;padding:4px 7px;border-radius:5px;font-size:9px;font-weight:900;letter-spacing:.5px}.cluster-mode{color:#79c0ff;background:rgba(31,111,235,.13);border:1px solid rgba(88,166,255,.3)}.cluster-work{color:#c9d1d9;background:#21262d;border:1px solid #30363d}.cluster-work-wrk{color:#7ee787;border-color:#238636;background:rgba(35,134,54,.13)}.cluster-work-qrt{color:#ff7b72;border-color:#da3633;background:rgba(218,54,51,.13)}.cluster-empty td{height:180px;text-align:center}.cluster-empty strong,.cluster-empty span{display:block}.cluster-empty strong{color:#c9d1d9;font-size:16px}.cluster-empty span{margin-top:6px;color:#6e7681}.cluster-toast{position:fixed;z-index:10000;top:50%;left:50%;width:min(520px,calc(100vw - 32px));padding:22px 28px;transform:translate(-50%,-50%);color:#b7f5c0;background:rgba(13,31,20,.97);border:1px solid #2ea043;border-radius:12px;box-shadow:0 24px 70px rgba(0,0,0,.62),0 0 28px rgba(46,160,67,.2);font-weight:800;text-align:center;animation:admin-toast-in .22s ease-out both}.cluster-toast::before{content:'✓';display:flex;align-items:center;justify-content:center;width:42px;height:42px;margin:0 auto 12px;color:#7ee787;background:rgba(46,160,67,.2);border:1px solid #3fb950;border-radius:50%;font-size:24px}.cluster-toast.closing{animation:admin-toast-out .28s ease-in both}
@media(max-width:1250px){.cluster-spot-form{grid-template-columns:repeat(4,minmax(0,1fr))}.cluster-comment{grid-column:span 3}.cluster-spot-form button{width:100%}}
@media(max-width:760px){.cluster-hero,.cluster-section-title{align-items:flex-start;flex-direction:column}.cluster-online{width:100%}.cluster-spot-form{grid-template-columns:1fr 1fr}.cluster-comment{grid-column:1/-1}.cluster-spot-form button{grid-column:1/-1}.cluster-filters{grid-template-columns:1fr}.cluster-filters span{text-align:left}}

/* Rede mundial animada da abertura */
.home-radio-network{position:absolute;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;overflow:visible;mix-blend-mode:screen}.home-story,.home-login{position:relative;z-index:1}.radio-links path{fill:none;stroke:rgba(88,166,255,.08);stroke-width:.75;stroke-dasharray:3 13}.radio-travellers circle{fill:#d8efff;opacity:.52;filter:drop-shadow(0 0 3px #58a6ff)}.radio-stations circle{fill:#9fd5ff;stroke:none;transform-box:fill-box;transform-origin:center;opacity:.04;animation:stationPulse 7.4s ease-in-out infinite}.radio-stations circle:nth-child(3n+1){animation-delay:-1.7s;animation-duration:8.3s}.radio-stations circle:nth-child(3n+2){animation-delay:-4.1s;animation-duration:10.2s}.radio-stations circle:nth-child(4n){animation-delay:-6.3s;animation-duration:9.4s}.radio-stations circle:nth-child(5n){animation-delay:-2.8s;animation-duration:11.1s}.radio-stations circle:nth-child(7n){fill:#d7efff}@keyframes stationPulse{0%,68%,100%{opacity:.03;transform:scale(.78)}78%{opacity:.62;transform:scale(1.12)}88%{opacity:.12;transform:scale(.92)}}
@media(prefers-reduced-motion:reduce){.radio-stations circle{animation:none}.radio-travellers{display:none}}

.home-story h1{font-size:clamp(34px,4.5vw,58px);line-height:1.06;letter-spacing:-1.5px}

/* Composição limpa da abertura */
.home-hero{align-items:stretch;padding-top:clamp(20px,3vw,38px);padding-bottom:clamp(22px,3vw,40px)}.home-shade{background:linear-gradient(90deg,rgba(5,9,14,.08),rgba(5,9,14,.2) 42%,rgba(5,9,14,.78) 72%,rgba(5,9,14,.93)),linear-gradient(0deg,rgba(5,9,14,.25),transparent 62%)}.home-story{align-self:stretch;display:flex;flex-direction:column;max-width:760px;padding-top:0}.home-brand-row{display:flex;align-items:center;gap:clamp(16px,2.2vw,34px)}.home-brand{flex:0 0 auto;margin-bottom:0}.home-kicker{margin:0;max-width:170px;line-height:1.6}.home-story .cw-line{margin-top:8px}.home-tribute{margin-top:auto;margin-bottom:0;padding-top:20px}.home-login{align-self:center;max-width:610px}.home-login-card{width:min(100%,470px);margin:0 auto}.home-login .home-history{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;margin-top:15px}.home-login .home-history article{padding:12px 13px;background:rgba(13,17,23,.7)}
@media(max-width:1000px){.home-story{min-height:260px}.home-tribute{margin-top:35px}.home-login{max-width:720px}.home-shade{background:linear-gradient(rgba(5,9,14,.25),rgba(5,9,14,.84))}}
@media(max-width:650px){.home-brand-row{align-items:flex-start;flex-direction:column;gap:8px}.home-kicker{max-width:none}.home-login .home-history{grid-template-columns:1fr}.home-login .home-history article:nth-child(2),.home-login .home-history article:nth-child(3){display:none}}

.home-brand-row{display:block}.home-brand-row .home-kicker{margin-top:-26px;padding-left:22px;max-width:none;white-space:nowrap;text-align:left}.home-login{max-width:470px}.home-login-card{width:100%}.home-login .home-history{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.home-login .home-history article{min-width:0;padding:10px 9px}.home-login .home-history strong{font-size:13px}.home-login .home-history span{font-size:10px;line-height:1.4}
@media(max-width:650px){.home-brand-row .home-kicker{white-space:normal}.home-login .home-history{grid-template-columns:1fr}.home-login .home-history article:nth-child(2),.home-login .home-history article:nth-child(3){display:block}}

.home-brand{position:relative}.logo-antenna-led{position:absolute;z-index:10;display:block;top:45.8%;left:77.8%;width:20px;height:20px;transform:translate(-50%,-50%);background:#fff4b8;border:3px solid #ff3b30;border-radius:50%;box-shadow:0 0 12px 5px rgba(255,59,48,.9);animation:logoAntennaBlink 3.2s ease-in-out infinite}@keyframes logoAntennaBlink{0%,58%,100%{opacity:.2;box-shadow:0 0 4px 1px #ff3b30}72%{opacity:1;box-shadow:0 0 22px 9px rgba(255,59,48,1)}84%{opacity:.48;box-shadow:0 0 10px 4px #ff3b30}}@media(prefers-reduced-motion:reduce){.logo-antenna-led{animation:none;opacity:.85}}

/* ==========================================================
   MINHA ESTAÇÃO
   ========================================================== */
.station-shell{max-width:1420px}
.station-profile-hero{min-height:160px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:27px 31px;margin-bottom:18px;background:linear-gradient(112deg,rgba(31,111,235,.2),rgba(22,27,34,.94) 58%),url('../images/dxman-radio-hero.png') center 43%/cover;border:1px solid #30363d;border-radius:14px;box-shadow:0 18px 45px rgba(0,0,0,.26)}
.station-call-line{display:flex;align-items:center;gap:9px;margin:5px 0 2px}
.station-call-line .dxm-flag{width:34px;height:25px}
.station-call-line h1{margin:0;color:#fff;font-size:clamp(30px,4vw,44px);line-height:1}
.station-profile-hero p{color:#c9d1d9}
.station-profile-status{display:flex;align-items:center;gap:12px;min-width:210px;padding:14px 16px;background:rgba(13,17,23,.78);border:1px solid #30363d;border-radius:10px}
.station-profile-status small,.station-profile-status strong{display:block}
.station-profile-status small{color:#6e7681;font-size:9px;font-weight:800;letter-spacing:1.2px}
.station-profile-status strong{margin-top:2px;color:#7ee787;font-size:13px}
.station-status-dot{width:10px;height:10px;flex:0 0 auto;background:#3fb950;border-radius:50%;box-shadow:0 0 13px rgba(63,185,80,.9)}
.station-alert{margin:0 0 16px;padding:14px 17px;border-radius:9px}
.station-alert.success{color:#aff5b4;background:rgba(35,134,54,.15);border:1px solid #238636}
.station-alert.error{color:#ffb3b0;background:rgba(218,54,51,.13);border:1px solid #da3633}
.station-alert ul{margin:7px 0 0 20px}
.station-alert.success.station-toast{position:fixed;z-index:10000;top:50%;left:50%;width:min(520px,calc(100vw - 32px));margin:0;padding:22px 28px;transform:translate(-50%,-50%);border:1px solid #2ea043;border-radius:12px;background:rgba(13,31,20,.97);color:#b7f5c0;box-shadow:0 24px 70px rgba(0,0,0,.62),0 0 28px rgba(46,160,67,.2);font-size:15px;font-weight:750;line-height:1.55;text-align:center;animation:admin-toast-in .22s ease-out both;pointer-events:none;backdrop-filter:blur(8px)}
.station-alert.success.station-toast::before{content:'✓';display:flex;align-items:center;justify-content:center;width:42px;height:42px;margin:0 auto 12px;border:1px solid #3fb950;border-radius:50%;background:rgba(46,160,67,.2);color:#7ee787;font-size:24px;font-weight:900;box-shadow:0 0 18px rgba(46,160,67,.25)}
.station-alert.success.station-toast.station-toast-closing{animation:admin-toast-out .28s ease-in both}
@media(prefers-reduced-motion:reduce){.station-alert.success.station-toast,.station-alert.success.station-toast.station-toast-closing{animation:none}}
.station-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px;padding:7px;background:#11161d;border:1px solid #30363d;border-radius:12px}
.station-tabs button{min-height:58px;display:flex;align-items:center;justify-content:center;gap:11px;padding:12px 16px;color:#8b949e;background:transparent;border:1px solid transparent;border-radius:8px;font-weight:800;cursor:pointer}
.station-tabs button span{display:flex;width:28px;height:28px;align-items:center;justify-content:center;color:#58a6ff;background:rgba(31,111,235,.12);border:1px solid rgba(88,166,255,.28);border-radius:50%;font-size:10px}
.station-tabs button:hover{color:#f0f6fc;background:#161b22}
.station-tabs button.is-active{color:#fff;background:rgba(31,111,235,.16);border-color:rgba(88,166,255,.4);box-shadow:0 8px 24px rgba(0,0,0,.2)}
.station-tab-panel{padding:28px;background:#161b22;border:1px solid #30363d;border-radius:13px;box-shadow:0 16px 42px rgba(0,0,0,.22)}
.station-tab-panel[hidden]{display:none}
.station-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.station-section-heading h2{margin-top:3px;color:#f0f6fc;font-size:23px}
.station-section-intro{margin:7px 0 21px;color:#8b949e;font-size:13px}
.station-lock-badge,.station-edit-badge{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid;border-radius:20px;font-size:10px;font-weight:800;letter-spacing:.4px}
.station-lock-badge{color:#e3b341;background:rgba(158,106,3,.12);border-color:rgba(227,179,65,.38)}
.station-edit-badge{color:#79c0ff;background:rgba(31,111,235,.13);border-color:rgba(88,166,255,.34)}
.station-readonly-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.station-readonly-grid article{min-height:108px;padding:17px;background:#11161d;border:1px solid #30363d;border-radius:10px}
.station-readonly-grid article>span,.station-readonly-grid article>strong,.station-readonly-grid article>small{display:block}
.station-readonly-grid article>span{margin-bottom:8px;color:#6e7681;font-size:10px;font-weight:800;letter-spacing:.7px;text-transform:uppercase}
.station-readonly-grid article>strong{color:#f0f6fc;font-size:15px;overflow-wrap:anywhere}
.station-readonly-grid article>small{margin-top:5px;color:#6e7681;font-size:11px}
.station-readonly-grid .call-com-bandeira{display:flex!important}
.station-location-heading{margin-top:29px}
.station-location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:13px}
.station-location-card{min-height:105px;display:flex;align-items:center;gap:15px;padding:17px;background:linear-gradient(135deg,rgba(31,111,235,.08),#11161d 62%);border:1px solid #30363d;border-radius:10px}
.station-location-card .dxm-flag{width:42px;height:30px;flex:0 0 auto}
.station-location-card span,.station-location-card strong,.station-location-card small{display:block}
.station-location-card div>span{color:#6e7681;font-size:10px;font-weight:800;letter-spacing:.7px;text-transform:uppercase}
.station-location-card strong{margin-top:3px;color:#f0f6fc}
.station-location-card small{margin-top:3px;color:#79c0ff;font-size:11px}
.station-city-icon{width:42px;height:42px;display:flex!important;align-items:center;justify-content:center;flex:0 0 auto;color:#79c0ff;background:rgba(31,111,235,.13);border:1px solid rgba(88,166,255,.3);border-radius:50%;font-size:23px}
.station-form{margin-top:29px;padding-top:27px;border-top:1px solid #30363d}
.station-form-main{margin-top:0;padding-top:0;border-top:0}
.station-form-block{margin-top:18px;padding:20px;background:#11161d;border:1px solid #30363d;border-radius:11px}
.station-form-block h3{margin:0 0 17px;color:#79c0ff;font-size:16px}
.station-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.station-form-grid label{display:flex;min-width:0;flex-direction:column}
.station-form-grid label>span{margin-bottom:7px;color:#c9d1d9;font-size:12px;font-weight:700}
.station-form-grid label>small{margin-top:5px;color:#6e7681;font-size:10px}
.station-form-grid input,.station-form-grid textarea{width:100%;min-height:44px;padding:11px 12px;color:#f0f6fc;background:#0d1117;border:1px solid #30363d;border-radius:7px;outline:none}
.station-form-grid textarea{min-height:115px;resize:vertical}
.station-form-grid input:focus,.station-form-grid textarea:focus{border-color:#58a6ff;box-shadow:0 0 0 3px rgba(88,166,255,.12)}
.station-form-grid .station-grid-status{min-height:28px;line-height:1.4;transition:color .2s ease}
.station-form-grid .station-grid-status.is-valid{color:#7ee787}
.station-form-grid .station-grid-status.is-invalid{color:#ff7b72}
.station-coordinate-field input[readonly]{color:#7ee787;background:rgba(35,134,54,.1);border-color:rgba(63,185,80,.45);box-shadow:inset 0 0 18px rgba(63,185,80,.05)}
.station-coordinate-field input[readonly]:focus{border-color:rgba(63,185,80,.65);box-shadow:0 0 0 3px rgba(63,185,80,.1)}
.station-eirp-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px 18px;background:linear-gradient(135deg,rgba(35,134,54,.14),rgba(13,17,23,.88));border:1px solid rgba(63,185,80,.48);border-radius:9px;box-shadow:inset 0 0 24px rgba(63,185,80,.04)}
.station-eirp-summary>div{min-width:0;padding-right:14px;border-right:1px solid rgba(63,185,80,.22)}
.station-eirp-summary>div:nth-child(2){padding-right:0;border-right:0}
.station-eirp-summary span,.station-eirp-summary strong{display:block}
.station-eirp-summary span{margin-bottom:5px;color:#8b949e;font-size:10px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}
.station-eirp-summary strong{color:#7ee787;font-size:20px;line-height:1.25}
.station-eirp-summary strong{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
.station-eirp-summary>small{grid-column:1/-1;color:#9ccfa3;font-size:10px;line-height:1.45}
.station-eirp-summary.is-eirp-red{background:linear-gradient(135deg,rgba(218,54,51,.15),rgba(13,17,23,.9));border-color:rgba(248,81,73,.58);box-shadow:inset 0 0 24px rgba(248,81,73,.05)}
.station-eirp-summary.is-eirp-red>div{border-color:rgba(248,81,73,.24)}
.station-eirp-summary.is-eirp-red strong{color:#ff7b72}
.station-eirp-summary.is-eirp-red>small{color:#dca09c}
.station-eirp-summary.is-eirp-yellow{background:linear-gradient(135deg,rgba(187,128,9,.17),rgba(13,17,23,.9));border-color:rgba(227,179,65,.6);box-shadow:inset 0 0 24px rgba(227,179,65,.05)}
.station-eirp-summary.is-eirp-yellow>div{border-color:rgba(227,179,65,.25)}
.station-eirp-summary.is-eirp-yellow strong{color:#e3b341}
.station-eirp-summary.is-eirp-yellow>small{color:#d6bf84}
.station-eirp-summary.is-eirp-invalid{background:linear-gradient(135deg,rgba(218,54,51,.16),rgba(13,17,23,.92));border-color:rgba(248,81,73,.68);box-shadow:inset 0 0 24px rgba(248,81,73,.06)}
.station-eirp-summary.is-eirp-invalid>div{border-color:rgba(248,81,73,.28)}
.station-eirp-summary.is-eirp-invalid strong,.station-eirp-summary.is-eirp-invalid>small{color:#ff7b72}
.station-form input[aria-invalid=true]{border-color:#f85149!important;box-shadow:0 0 0 2px rgba(248,81,73,.14)!important}
.station-field-error{color:#ff7b72!important;font-weight:750}
.station-field-wide{grid-column:span 2}
.station-form-actions{display:flex;justify-content:flex-end;margin-top:18px}
.station-form-actions button{min-height:46px;padding:11px 20px;color:#fff;background:#238636;border:1px solid #2ea043;border-radius:8px;font-weight:800;cursor:pointer}
.station-form-actions button:hover{background:#2ea043;transform:translateY(-1px)}
.dxcc-ranking-panel{margin-top:26px;padding-top:26px;border-top:1px solid #30363d}
.dxcc-band-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.dxcc-band-grid.single-band{grid-template-columns:minmax(0,760px)}
.dxcc-band-card{padding:18px;background:#11161d;border:1px solid #30363d;border-radius:11px}
.dxcc-band-card header{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:14px}
.dxcc-band-card header span{color:#f85149;font-size:9px;font-weight:900;letter-spacing:1.5px}
.dxcc-band-card h3{margin-top:1px;color:#f0f6fc;font-size:18px;text-transform:uppercase}
.dxcc-band-card header>strong{color:#f85149;font-size:29px;line-height:1}
.dxcc-band-card header>strong small{margin-left:4px;color:#6e7681;font-size:11px}
.dxcc-segments{display:grid;grid-template-columns:repeat(50,minmax(0,1fr));gap:2px;padding:10px;background:#0d1117;border:1px solid #21262d;border-radius:7px}
.dxcc-segments i{display:block;height:4px;background:#30363d;border-radius:2px}
.dxcc-segments i.is-confirmed{background:#f85149;box-shadow:0 0 5px rgba(248,81,73,.85)}
.dxcc-band-card footer{display:flex;justify-content:space-between;gap:12px;margin-top:9px;color:#6e7681;font-size:10px}
.dxcc-band-card footer span:first-child{color:#ff7b72;font-weight:800}

@media(max-width:1050px){
    .station-readonly-grid,.station-location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .station-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .dxcc-band-grid{grid-template-columns:1fr}
}
@media(max-width:720px){
    .station-shell{padding-left:12px;padding-right:12px}
    .station-profile-hero{align-items:flex-start;flex-direction:column;padding:22px}
    .station-profile-status{width:100%}
    .station-tabs{grid-template-columns:1fr}
    .station-tabs button{justify-content:flex-start}
    .station-tab-panel{padding:18px 14px}
    .station-section-heading{align-items:flex-start;flex-direction:column;gap:9px}
    .station-readonly-grid,.station-location-grid,.station-form-grid{grid-template-columns:1fr}
    .station-field-wide{grid-column:auto}
    .station-location-card{min-height:92px}
    .dxcc-segments{grid-template-columns:repeat(35,minmax(0,1fr))}
    .dxcc-band-card footer{align-items:flex-start;flex-direction:column}
    .station-form-actions button{width:100%}
}

/* Atalhos da visão geral administrativa */
.admin-modules-section{margin:0 0 22px}
.admin-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:5px 0 15px}
.admin-section-head h2{margin-top:4px;color:#f0f6fc;font-size:21px}
.admin-section-head p{color:#8b949e;font-size:13px}
.admin-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.admin-module-card{--module-color:#58a6ff;min-height:188px;display:flex;flex-direction:column;padding:19px;color:#c9d1d9;background:linear-gradient(145deg,color-mix(in srgb,var(--module-color) 9%,#161b22),#161b22 58%);border:1px solid color-mix(in srgb,var(--module-color) 38%,#30363d);border-radius:11px;box-shadow:0 10px 28px rgba(0,0,0,.17)}
.admin-module-card:hover{color:#fff;border-color:var(--module-color);transform:translateY(-3px);box-shadow:0 16px 35px rgba(0,0,0,.28),0 0 24px color-mix(in srgb,var(--module-color) 10%,transparent)}
.admin-module-card header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.admin-module-icon{width:39px;height:39px;display:flex;align-items:center;justify-content:center;color:var(--module-color);background:color-mix(in srgb,var(--module-color) 13%,transparent);border:1px solid color-mix(in srgb,var(--module-color) 38%,transparent);border-radius:9px;font-size:20px;font-weight:800}
.admin-module-group{color:var(--module-color);font-size:9px;font-weight:900;letter-spacing:1.15px;text-align:right}
.admin-module-card h3{margin:16px 0 6px;color:#f0f6fc;font-size:17px}
.admin-module-card p{color:#8b949e;font-size:12px;line-height:1.5}
.admin-module-card footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px}
.admin-module-card footer strong{color:var(--module-color);font-size:12px}
.admin-module-card footer span{color:#c9d1d9;font-size:11px;font-weight:800}
.admin-module-card.modulo-verde{--module-color:#3fb950}
.admin-module-card.modulo-amarelo{--module-color:#e3b341}
.admin-module-card.modulo-azul{--module-color:#58a6ff}
.admin-module-card.modulo-vermelho{--module-color:#f85149}
.admin-module-card.modulo-violeta{--module-color:#bc8cff}
.admin-module-card.modulo-ciano{--module-color:#39c5cf}
.admin-module-card.modulo-laranja{--module-color:#f0883e}

@media(max-width:1250px){.admin-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1050px){.admin-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
    .admin-section-head{align-items:flex-start;flex-direction:column;gap:4px}
    .admin-module-grid{grid-template-columns:1fr}
    .admin-module-card{min-height:165px}
}

/* Menu horizontal da administração de usuários */
.admin-users-welcome{margin-bottom:14px}
.admin-user-menu{display:grid;grid-template-columns:repeat(7,minmax(116px,1fr));gap:10px;margin:0 0 14px;padding:1px 0 5px;overflow-x:auto;scrollbar-color:#30363d transparent}
.admin-user-menu-item{--module-color:#58a6ff;min-width:116px;min-height:124px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;padding:14px 8px;color:#c9d1d9;background:linear-gradient(145deg,color-mix(in srgb,var(--module-color) 8%,#161b22),#161b22 64%);border:1px solid color-mix(in srgb,var(--module-color) 32%,#30363d);border-radius:11px;text-align:center}
.admin-user-menu-item:hover{color:#fff;border-color:var(--module-color);transform:translateY(-2px)}
.admin-user-menu-item.ativo{color:#fff;border-color:var(--module-color);box-shadow:inset 0 0 0 1px var(--module-color),0 0 20px color-mix(in srgb,var(--module-color) 13%,transparent)}
.admin-user-menu-icon{width:37px;height:37px;display:flex;align-items:center;justify-content:center;color:var(--module-color);background:color-mix(in srgb,var(--module-color) 14%,transparent);border:1px solid color-mix(in srgb,var(--module-color) 40%,transparent);border-radius:9px;font-size:19px;font-weight:900}
.admin-user-menu-item strong{color:#f0f6fc;font-size:12px;line-height:1.25}
.admin-user-menu-item small{color:var(--module-color);font-size:10px;font-weight:800}
.admin-user-menu-item.modulo-verde{--module-color:#3fb950}
.admin-user-menu-item.modulo-amarelo{--module-color:#e3b341}
.admin-user-menu-item.modulo-azul{--module-color:#58a6ff}
.admin-user-menu-item.modulo-vermelho{--module-color:#f85149}
.admin-user-menu-item.modulo-violeta{--module-color:#bc8cff}
.admin-user-menu-item.modulo-ciano{--module-color:#39c5cf}
.admin-operators-panel{padding-top:20px}
.admin-operators-top{display:grid;grid-template-columns:minmax(230px,.72fr) minmax(420px,1.28fr);align-items:end;gap:28px;margin-bottom:18px}
.admin-operators-top h2{margin-top:4px;color:#f0f6fc;font-size:21px}
.admin-operators-search{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'label result' 'control control';align-items:end;gap:7px 15px}
.admin-operators-search>label{grid-area:label;color:#8b949e;font-size:11px;font-weight:700}
.admin-operators-search>small{grid-area:result;color:#8b949e;font-size:11px;text-align:right}
.admin-operators-search>div{grid-area:control;display:flex;min-width:0}
.admin-operators-search input[type=text],.admin-operators-search input:not([type]){flex:1;min-width:0;min-height:42px;padding:10px 13px;color:#f0f6fc;background:#0d1117;border:1px solid #30363d;border-radius:7px 0 0 7px;outline:none}
.admin-operators-search input:focus{border-color:#58a6ff}
.admin-operators-search button{min-height:42px;padding:10px 20px;color:#fff;background:#1f6feb;border:1px solid #1f6feb;border-radius:0 7px 7px 0;font-weight:800;cursor:pointer}
.admin-operators-list{max-height:350px;overflow-y:auto;border:1px solid #30363d;border-radius:9px;scrollbar-color:#484f58 #161b22}
.admin-operators-list table{margin:0}
.admin-operators-list thead th{position:sticky;top:0;z-index:3;background:#21262d}
.admin-audit-list{max-height:510px;overflow:auto;border:1px solid #30363d;border-radius:9px;scrollbar-color:#484f58 #161b22}
.admin-audit-list table{min-width:1050px;margin:0}
.admin-audit-list thead th{position:sticky;top:0;z-index:3;background:#21262d}
.admin-audit-list td{white-space:nowrap}
.admin-audit-list td:last-child small{display:block;max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media(max-width:720px){
    .admin-users-welcome{padding-bottom:20px}
    .admin-user-menu{grid-template-columns:repeat(7,minmax(122px,1fr))}
    .admin-user-menu-item{min-width:122px;min-height:116px}
    .admin-operators-top{grid-template-columns:1fr;gap:14px}
}

.iota-welcome{background:linear-gradient(110deg,rgba(227,179,65,.13),rgba(22,27,34,.96) 62%)}
.iota-admin{max-width:1540px;margin:0 auto}
.iota-toolbar{display:grid;grid-template-columns:minmax(320px,1fr) 180px auto auto;align-items:end;gap:12px;padding:18px;margin-bottom:16px;background:#11161d;border:1px solid #30363d;border-radius:10px}
.iota-toolbar .campo{margin:0}
.iota-toolbar button,.iota-toolbar a{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:7px;font-weight:800}
.iota-toolbar button{color:#11161d;background:#e3b341;border:1px solid #f2cc60;cursor:pointer}
.iota-toolbar a{color:#c9d1d9;background:#21262d;border:1px solid #30363d}
.iota-lista{max-height:540px;overflow:auto}
.iota-lista table{min-width:1020px}
.iota-lista thead th{position:sticky;top:0;z-index:2;background:#21262d}
.iota-lista tbody tr,.iota-lista tbody td{height:54px}
.iota-lista tbody td{padding-top:6px;padding-bottom:6px}
.iota-paginacao{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;color:#8b949e;font-size:13px}
.iota-paginacao div{display:flex;gap:9px}
.iota-paginacao a{display:inline-flex;padding:8px 13px;color:#e3b341;background:rgba(227,179,65,.08);border:1px solid rgba(227,179,65,.38);border-radius:7px;font-weight:800}

@media(max-width:900px){
    .iota-toolbar{grid-template-columns:1fr 160px}
    .iota-toolbar button,.iota-toolbar a{width:100%}
}

@media(max-width:600px){
    .iota-toolbar{grid-template-columns:1fr}
    .iota-stats{grid-template-columns:1fr 1fr}
    .iota-paginacao{align-items:flex-start;flex-direction:column}
}

/* Cadastro com identificação automática HAM / 11 metros */
.cadastro-form [hidden]{display:none!important}
.cadastro-painel{max-width:980px}
.cadastro-retorno-erro{display:grid;gap:5px}
.cadastro-retorno-erro strong{font-size:15px}
.cadastro-retorno-erro span{line-height:1.45}
.cadastro-retorno-erro small{color:#c9a2a0}
.cadastro-tipo-operador{padding-bottom:4px}
.cadastro-identificacao{padding:18px;background:#11161d;border:1px solid #30363d;border-radius:10px}
.cadastro-identificacao>label{font-size:15px}
.cadastro-etapa{display:block;margin-bottom:8px;color:#58a6ff;font-size:10px;font-weight:900;letter-spacing:1.6px}
.cadastro-identificacao>input{font-size:20px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase}
.cadastro-exemplo{margin-top:12px}
.cadastro-exemplo b{color:#f0f6fc}
.cadastro-clube-detectado{margin-top:11px;padding:10px 13px;color:#8b949e;background:#0d1117;border:1px solid #30363d;border-radius:7px;font-size:12px;line-height:1.45}
.cadastro-clube-detectado.encontrado{color:#aff5b4;border-color:rgba(63,185,80,.5)}
.cadastro-clube-detectado.nao-cadastrado{color:#e3b341;border-color:rgba(227,179,65,.5)}
.cadastro-identificacao-status{display:flex;align-items:center;gap:13px;padding:14px 16px;background:#11161d;border:1px solid #30363d;border-radius:9px}
.cadastro-identificacao-status .cadastro-status-luz{width:12px;height:12px;flex:0 0 auto;border-radius:50%;background:#8b949e;box-shadow:0 0 10px rgba(139,148,158,.35)}
.cadastro-identificacao-status>div{min-width:0}
.cadastro-identificacao-status>div>strong,.cadastro-identificacao-status>div>small{display:block}
.cadastro-identificacao-status>div>strong{color:#c9d1d9}
.cadastro-identificacao-status>div>small{margin-top:3px;color:#8b949e;line-height:1.4}
.cadastro-identificacao-status .cadastro-dxcc-preview{margin:0 0 0 auto;flex:0 0 auto}
.cadastro-identificacao-status.valido{background:rgba(35,134,54,.11);border-color:rgba(63,185,80,.52)}
.cadastro-identificacao-status.valido .cadastro-status-luz{background:#3fb950;box-shadow:0 0 14px rgba(63,185,80,.8)}
.cadastro-identificacao-status.valido>div>strong{color:#7ee787}
.cadastro-identificacao-status.erro{background:rgba(218,54,51,.1);border-color:rgba(248,81,73,.55)}
.cadastro-identificacao-status.erro .cadastro-status-luz{background:#f85149;box-shadow:0 0 14px rgba(248,81,73,.7)}
.cadastro-identificacao-status.erro>div>strong{color:#ff7b72}
.cadastro-dados-fieldset{min-width:0;margin:0;padding:20px;background:#11161d;border:1px solid #30363d;border-radius:10px;transition:opacity .2s ease,border-color .2s ease}
.cadastro-dados-fieldset legend{padding:0 9px;color:#58a6ff;font-size:12px;font-weight:900;letter-spacing:.7px}
.cadastro-dados-fieldset:disabled{opacity:.4;border-style:dashed}
.cadastro-dados-fieldset:not(:disabled){border-color:rgba(88,166,255,.4)}
.cadastro-dados-fieldset>.formulario-grade{gap:20px 24px}
.cadastro-processando{overflow:hidden}
.cadastro-gravando[hidden]{display:none}
.cadastro-gravando{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(3,8,15,.82);backdrop-filter:blur(5px)}
.cadastro-gravando-cartao{width:min(480px,100%);padding:30px 28px;text-align:center;background:linear-gradient(145deg,#182331,#11161d);border:1px solid rgba(88,166,255,.48);border-radius:14px;box-shadow:0 24px 70px rgba(0,0,0,.55),0 0 35px rgba(31,111,235,.12)}
.cadastro-gravando-cartao strong,.cadastro-gravando-cartao span{display:block}
.cadastro-gravando-cartao strong{color:#f0f6fc;font-size:20px;line-height:1.4}
.cadastro-gravando-cartao span{margin-top:7px;color:#8b949e;font-size:13px}
.cadastro-relogio{position:relative;width:46px;height:46px;margin:24px auto 0;border:3px solid #58a6ff;border-radius:50%;box-shadow:0 0 18px rgba(88,166,255,.42);animation:cadastro-relogio-pulso 1.2s ease-in-out infinite}
.cadastro-relogio::before{content:"";position:absolute;left:50%;top:7px;width:2px;height:16px;background:#f0f6fc;border-radius:2px;transform-origin:50% 16px;animation:cadastro-ponteiro 1s linear infinite}
.cadastro-relogio::after{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;background:#e3b341;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 8px rgba(227,179,65,.8)}
@keyframes cadastro-ponteiro{to{transform:rotate(360deg)}}
@keyframes cadastro-relogio-pulso{0%,100%{transform:scale(1);opacity:.82}50%{transform:scale(1.06);opacity:1}}
@media(prefers-reduced-motion:reduce){.cadastro-relogio,.cadastro-relogio::before{animation-duration:2.5s}}

@media(max-width:650px){
    .cadastro-identificacao-status{align-items:flex-start;flex-wrap:wrap}
    .cadastro-identificacao-status .cadastro-dxcc-preview{width:100%;margin-left:25px}
    .cadastro-dados-fieldset{padding:15px}
    .station-eirp-summary{grid-template-columns:1fr}
    .station-eirp-summary>div{padding:0 0 12px;border-right:0;border-bottom:1px solid rgba(63,185,80,.22)}
    .station-eirp-summary>div:nth-child(2){padding:0;border-bottom:0}
}

/* Perfis administrativos */
.admin-role-badge{display:inline-flex;align-items:center;justify-content:center;min-width:104px;padding:7px 11px;border:1px solid;border-radius:7px;font-size:12px;font-weight:900;letter-spacing:.45px;line-height:1;text-align:center}
.admin-role-badge.role-usuario{color:#ff7b72;background:rgba(248,81,73,.12);border-color:#f85149;box-shadow:inset 0 0 12px rgba(248,81,73,.05)}
.admin-role-badge.role-moderador{color:#d2a8ff;background:rgba(163,113,247,.13);border-color:#a371f7;box-shadow:inset 0 0 12px rgba(163,113,247,.06)}
.admin-role-badge.role-supervisor{color:#79c0ff;background:rgba(56,139,253,.13);border-color:#388bfd;box-shadow:inset 0 0 12px rgba(56,139,253,.06)}
.admin-role-badge.role-administrador{color:#7ee787;background:rgba(46,160,67,.13);border-color:#2ea043;box-shadow:inset 0 0 12px rgba(46,160,67,.06)}
.admin-role-actions{gap:8px;flex-wrap:nowrap}
.admin-role-choice{min-height:34px;padding:7px 12px;border:1px solid rgba(255,255,255,.33);border-radius:6px;background:rgba(255,255,255,.11);color:#f4f7fb;font-size:12px;font-weight:850;line-height:1;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.08);transition:background .16s ease,border-color .16s ease,transform .16s ease}
.admin-role-choice:hover:not(:disabled){background:rgba(255,255,255,.19);border-color:rgba(255,255,255,.58);transform:translateY(-1px)}
.admin-role-choice:disabled{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.12);color:rgba(255,255,255,.38);cursor:default;box-shadow:none}
.admin-table tbody tr.admin-role-updated td{background:rgba(46,160,67,.095);box-shadow:inset 0 1px rgba(63,185,80,.35),inset 0 -1px rgba(63,185,80,.35)}
.admin-table tbody tr.admin-role-updated td:first-child{box-shadow:inset 3px 0 #3fb950,inset 0 1px rgba(63,185,80,.35),inset 0 -1px rgba(63,185,80,.35)}
@media(max-width:900px){.admin-role-actions{flex-wrap:wrap}.admin-role-choice{flex:1 1 auto}}

/* Mensagens administrativas flutuantes */
.admin-body .admin-alert.sucesso.admin-toast-message{position:fixed;z-index:10000;top:50%;left:50%;width:min(520px,calc(100vw - 32px));margin:0;padding:22px 28px;transform:translate(-50%,-50%);border:1px solid #2ea043;border-radius:12px;background:rgba(13,31,20,.97);color:#b7f5c0;box-shadow:0 24px 70px rgba(0,0,0,.62),0 0 28px rgba(46,160,67,.2);font-size:15px;font-weight:750;line-height:1.55;text-align:center;animation:admin-toast-in .22s ease-out both;pointer-events:none;backdrop-filter:blur(8px)}
.admin-body .admin-alert.sucesso.admin-toast-message::before{content:'✓';display:flex;align-items:center;justify-content:center;width:42px;height:42px;margin:0 auto 12px;border:1px solid #3fb950;border-radius:50%;background:rgba(46,160,67,.2);color:#7ee787;font-size:24px;font-weight:900;box-shadow:0 0 18px rgba(46,160,67,.25)}
.admin-body .admin-alert.sucesso.admin-toast-message.admin-toast-closing{animation:admin-toast-out .28s ease-in both}
@keyframes admin-toast-in{from{opacity:0;transform:translate(-50%,-46%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes admin-toast-out{from{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-54%) scale(.96)}}
@media(prefers-reduced-motion:reduce){.admin-body .admin-alert.sucesso.admin-toast-message,.admin-body .admin-alert.sucesso.admin-toast-message.admin-toast-closing{animation:none}}

/* Console operacional do DX Cluster 11 metros */
.cluster-shell{width:min(100%,1680px);padding-top:18px}
.cluster-hero{margin-bottom:10px;padding:14px 20px;border-radius:10px}
.cluster-hero h1{font-size:24px}
.cluster-hero p{font-size:12px}
.cluster-online-stack{display:flex;align-items:stretch;gap:8px}
.cluster-online-stack .cluster-online{min-width:175px}
.cluster-crx-state.is-waiting i{background:#e3b341;box-shadow:0 0 13px #e3b341}
.cluster-crx-state.is-error{border-color:rgba(248,81,73,.5)}
.cluster-crx-state.is-error i{background:#f85149;box-shadow:0 0 13px #f85149}
.cluster-crx-state.is-online i{background:#3fb950;box-shadow:0 0 13px #3fb950}
.cluster-console{margin-bottom:10px;padding:12px;background:linear-gradient(145deg,#13223a,#101725 58%,#161429);border:1px solid rgba(88,166,255,.38);border-radius:12px;box-shadow:inset 0 0 0 6px rgba(6,13,24,.42),0 12px 28px rgba(0,0,0,.25)}
.cluster-console-searches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cluster-console-searches label{position:relative;display:block}
.cluster-console-searches label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.cluster-console-searches label::after{content:'⌕';position:absolute;top:50%;right:7px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;transform:translateY(-50%);color:#fff;background:linear-gradient(180deg,#70b7ff,#276df0);border:1px solid #7ec4ff;border-radius:9px;box-shadow:0 0 13px rgba(63,139,253,.5);font-size:23px;font-weight:900;pointer-events:none}
.cluster-console-searches input{width:100%;height:45px;padding:10px 52px 10px 14px;color:#e6edf3;background:rgba(8,17,31,.86);border:1px solid rgba(57,197,207,.45);border-radius:10px;outline:none;font-size:13px;font-style:italic}
.cluster-console-searches label:nth-child(2) input{border-color:rgba(188,140,255,.48)}
.cluster-console-searches input:focus{border-color:#58a6ff;box-shadow:0 0 0 2px rgba(88,166,255,.16)}
.cluster-console-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;margin-top:9px}
.cluster-console-actions button{min-height:38px;padding:8px 17px;color:#f0f6fc;background:#111923;border:1px solid #8b9db5;border-radius:8px;font-size:11px;font-weight:900;cursor:pointer}
.cluster-console-actions #cluster_new_spot{color:#fff;background:linear-gradient(90deg,#238636,#176c35);border-color:#2ea043;letter-spacing:.3px}
.cluster-console-actions #cluster_new_spot:hover{background:#2ea043}
.cluster-console-actions #cluster_filters_toggle{border-color:#39c5cf;box-shadow:inset -2px 0 #a371f7}
.cluster-radar{display:flex;align-items:center;gap:10px;min-height:42px;margin-top:9px;padding:9px 13px;color:#8b9db5;background:rgba(6,13,24,.68);border:1px dashed rgba(88,166,255,.24);border-radius:9px;font-size:11px}
.cluster-radar i{width:8px;height:8px;flex:0 0 auto;background:#3fb950;border-radius:50%;box-shadow:0 0 10px #3fb950;animation:cwBlink 2s steps(1) infinite}
.cluster-compose{padding:16px 18px;border-radius:10px}
.cluster-compose[hidden],.cluster-filters[hidden]{display:none!important}
.cluster-spot-form{grid-template-columns:1.15fr .9fr .9fr .7fr .55fr .7fr 1.45fr auto}
.cluster-board{padding:12px 14px 14px;border-radius:10px;background:#131920}
.cluster-board>.cluster-section-title{margin:0 0 10px;padding:0 3px}
.cluster-board>.cluster-section-title h2{font-size:17px}
.cluster-filters{grid-template-columns:minmax(180px,240px) minmax(180px,240px) 1fr;padding:9px;margin-bottom:9px;background:#0d1117;border:1px solid #30363d;border-radius:8px}
.cluster-table-wrap{height:clamp(330px,52vh,620px);max-height:none;background:#1b2025;border-color:#3a4149;border-radius:6px;scrollbar-color:#626a73 #161b22}
.cluster-table-operational{min-width:1440px;table-layout:auto}
.cluster-table-operational th{height:39px;padding:8px 9px;color:#f0f6fc;background:#101418;border-right:1px solid #252b31;border-bottom-color:#000;font-size:10px;font-weight:900;letter-spacing:1.2px;text-transform:uppercase;white-space:nowrap}
.cluster-table-operational td{height:45px;padding:6px 9px;color:#c5ccd4;border-right:1px solid #30363d;border-bottom-color:#30363d;font-size:11px;white-space:nowrap}
.cluster-table-operational tbody tr:nth-child(odd){background:#2c3136}
.cluster-table-operational tbody tr:nth-child(even){background:#22272b}
.cluster-table-operational tbody tr:hover{background:#343b43}
.cluster-table-operational th:nth-child(1){width:105px}.cluster-table-operational th:nth-child(2){width:155px}.cluster-table-operational th:nth-child(3){width:150px}.cluster-table-operational th:nth-child(4){width:78px}.cluster-table-operational th:nth-child(5){width:95px}.cluster-table-operational th:nth-child(6){width:62px}.cluster-table-operational th:nth-child(7){width:70px}.cluster-table-operational th:nth-child(8){width:70px}.cluster-table-operational th:nth-child(9){width:70px}.cluster-table-operational th:nth-child(10){min-width:230px}.cluster-table-operational th:nth-child(11){width:100px}.cluster-table-operational th:nth-child(12){width:72px}
.cluster-table-operational td:nth-child(10){max-width:300px;overflow:hidden;text-overflow:ellipsis}
.cluster-table-operational .dxm-flag{width:20px;height:14px;border-radius:1px;vertical-align:-2px}
.cluster-call,.cluster-spotter-call{display:inline-flex!important;align-items:center;gap:6px;color:#35df83!important;text-shadow:0 0 8px rgba(53,223,131,.12)}
.cluster-qrg,.cluster-rst,.cluster-mode,.cluster-path,.cluster-work,.cluster-distance{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:3px 7px;border:1px solid;border-radius:6px;font-size:10px;font-weight:900;line-height:1}
.cluster-qrg,.cluster-distance{color:#f0f6fc;background:linear-gradient(180deg,#3b4248,#252a2e);border-color:#4d555c;box-shadow:0 2px 5px rgba(0,0,0,.3)}
.cluster-rst{color:#07131a;background:#19c4df;border-color:#35d8ef}
.cluster-mode{color:#a7f3d0;background:rgba(35,134,54,.32);border-color:#2e8b57}
.cluster-path{color:#b7d9ff;background:rgba(31,111,235,.22);border-color:#345f84}
.cluster-work{color:#ffe58f;background:rgba(158,106,3,.19);border-color:#9e7c03}
.cluster-work-wrk{color:#87edca;background:rgba(24,126,92,.22);border-color:#247e65}
.cluster-work-swl{color:#ffe58f;background:rgba(158,106,3,.19);border-color:#9e7c03}
.cluster-work-qrt{color:#ff9d98;background:rgba(218,54,51,.18);border-color:#a83b38}
.cluster-refresh{padding:6px 10px}
.cluster-empty td{height:260px!important;background:#171c21!important}

@media(max-width:1250px){.cluster-spot-form{grid-template-columns:repeat(4,minmax(0,1fr))}.cluster-comment{grid-column:span 3}}
@media(max-width:900px){.cluster-online-stack{width:100%;flex-wrap:wrap}.cluster-online-stack .cluster-online{flex:1 1 190px}}
@media(max-width:760px){.cluster-shell{padding-top:10px}.cluster-console-searches{grid-template-columns:1fr}.cluster-console-actions{grid-template-columns:1fr 1fr}.cluster-console-actions #cluster_new_spot{grid-column:1/-1}.cluster-table-wrap{height:52vh}.cluster-hero{align-items:flex-start}.cluster-filters{grid-template-columns:1fr}}

/* Registro integrado: DX MAN Logbook + Spot */
.cluster-modal-open{overflow:hidden}
.cluster-log-modal[hidden],.cluster-log-more[hidden]{display:none!important}
.cluster-log-modal{position:fixed;inset:0;z-index:12000;display:flex;align-items:center;justify-content:center;padding:24px}
.cluster-log-backdrop{position:absolute;inset:0;background:rgba(2,7,14,.78);backdrop-filter:blur(5px)}
.cluster-log-dialog{position:relative;width:min(820px,100%);max-height:calc(100vh - 42px);overflow:auto;color:#e6edf3;background:linear-gradient(155deg,#1d2b43,#141b25 58%);border:1px solid rgba(126,166,216,.34);border-radius:16px;box-shadow:0 30px 90px rgba(0,0,0,.72),0 0 36px rgba(31,111,235,.14)}
.cluster-log-header{min-height:65px;display:flex;align-items:center;gap:18px;padding:14px 17px;border-bottom:1px solid rgba(126,166,216,.25)}
.cluster-log-header>div:first-child{margin-right:auto}.cluster-log-header h2{margin:0;color:#f0f6fc;font-size:21px}.cluster-log-header small{display:block;margin-top:2px;color:#8b949e;font-size:10px}
.cluster-quick-check{display:flex;align-items:center;gap:8px;color:#d6deea;font-size:12px}.cluster-quick-check input{width:16px;height:16px;accent-color:#58a6ff}
.cluster-log-close{width:34px;height:34px;display:flex;align-items:center;justify-content:center;padding:0;color:#e6edf3;background:transparent;border:0;border-radius:7px;font-size:30px;font-weight:300;cursor:pointer}.cluster-log-close:hover{color:#fff;background:rgba(255,255,255,.08)}
.cluster-log-form{padding:16px}
.cluster-log-form label>span{display:block;margin-bottom:7px;color:#79c0ff;font-size:11px;font-weight:750}
.cluster-log-form input,.cluster-log-form select{width:100%;min-height:42px;padding:9px 12px;color:#f0f6fc;background:#111923;border:1px solid #3c4b5f;border-radius:7px;outline:0}
.cluster-log-form input:focus,.cluster-log-form select:focus{border-color:#58a6ff;box-shadow:0 0 0 2px rgba(88,166,255,.15)}
.cluster-log-form input::placeholder{color:#6e7681}
.cluster-log-primary{display:grid;grid-template-columns:1.05fr .9fr .9fr;gap:14px;padding:14px;background:rgba(35,50,73,.5);border:1px solid rgba(126,166,216,.26);border-radius:9px}
.cluster-log-primary input[name=spotted_call]{font-weight:900;letter-spacing:.7px;text-transform:uppercase}
.cluster-log-primary input[name=contact_grid]{text-transform:uppercase}
.cluster-log-frequency-row,.cluster-log-rst-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:15px}
.cluster-frequency-control{display:grid;grid-template-columns:68px minmax(0,1fr)}
.cluster-frequency-control select{position:relative;z-index:1;color:#e3b341;background:#17202c;border-radius:7px 0 0 7px}
.cluster-frequency-control input{border-left:0;border-radius:0 7px 7px 0;font-size:15px;letter-spacing:1px}
.cluster-log-frequency-row label>small{display:block;margin:6px 0 0 12px;color:#6e7681;font-size:9px}
.cluster-more-toggle{display:block;min-height:28px;margin:18px auto 10px;padding:5px 24px;color:#06141b;background:#19c4df;border:1px solid #35d8ef;border-radius:18px;font-size:10px;font-weight:900;cursor:pointer}
.cluster-log-more{display:grid;grid-template-columns:150px 150px minmax(0,1fr);gap:12px;margin:10px 0;padding:13px;background:rgba(8,15,24,.48);border:1px solid #30363d;border-radius:8px}
.cluster-log-fixed{margin-top:13px;padding:9px 12px;color:#8b9db5;background:rgba(8,15,24,.52);border:1px solid #30363d;border-radius:7px;font-size:10px}.cluster-log-fixed strong{color:#79c0ff}
.cluster-log-error{margin-bottom:13px}
.cluster-log-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:15px;padding:14px 0 0;border-top:1px solid #30363d}
.cluster-log-actions>div{display:flex;gap:9px}
.cluster-log-actions button{min-height:38px;padding:8px 18px;border:1px solid;border-radius:7px;font-size:11px;font-weight:900;cursor:pointer}
.cluster-action-close{color:#e6edf3;background:transparent;border-color:#8b9db5!important}
.cluster-action-log{color:#17130a;background:#e3b341;border-color:#f2cc60!important}
.cluster-action-log:hover{background:#f2cc60}
.cluster-action-spot{color:#fff;background:#238636;border-color:#2ea043!important}
.cluster-action-spot:hover{background:#2ea043}

@media(max-width:680px){.cluster-log-modal{padding:8px}.cluster-log-dialog{max-height:calc(100vh - 16px);border-radius:11px}.cluster-log-header{flex-wrap:wrap}.cluster-quick-check{margin-left:auto}.cluster-log-primary{grid-template-columns:1fr}.cluster-log-frequency-row,.cluster-log-rst-row{grid-template-columns:1fr}.cluster-log-more{grid-template-columns:1fr}.cluster-log-actions{align-items:stretch;flex-direction:column-reverse}.cluster-log-actions>div{display:grid;grid-template-columns:1fr 1fr}.cluster-log-actions button{width:100%}}
