
/*GATE120*/
:root{--brand-purple:#0077ff;--brand-blue:#2563eb;--bg1:#eef2ff;--bg2:#e0e7ff;--card-bg:rgba(255,255,255,.92);--card-stroke:rgba(0,0,0,.08);--text-1:#0f172a;--text-2:#475569;--radius:16px;--shadow:0 24px 48px rgba(2,6,23,.12);

  --brand-purple:#0077ff; --brand-blue:#2563eb; --brand-sky:#93c5fd; --brand-white:#fff;
    --bg-grad-1:#eef2ff; --bg-grad-2:#e0e7ff;
    --card-bg:rgba(255,255,255,.78); --card-border:rgba(255,255,255,.6);
    --text-1:#0f172a; --text-2:#475569;
    --accent:var(--brand-purple); --accent-strong:#5b4bf0; --accent-soft:rgba(108,92,231,.15);
    --radius-xl:12px; --radius-md:14px; --radius-sm:12px;
    --shadow-lg:0 20px 40px rgba(31,41,55,.15); --shadow-md:0 10px 24px rgba(31,41,55,.12);
    --gap:16px; --font:"Inter",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
    --segunda-cor: #ffe600; --terceira_cor: #05a500;


    --quarta-cor: #ffae00;
}
   

*{box-sizing:border-box}
    html,body{height:100%}
    body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Arial;background:radial-gradient(1200px 700px at 10% -10%,var(--bg1),transparent),radial-gradient(1000px 600px at 90% 10%,var(--bg2),transparent),linear-gradient(180deg,#f8fafc,#eef2ff);display:flex;flex-direction:column;min-height:100vh;color:var(--text-1)}
    .wrap{max-width:1100px;margin:40px auto 24px;padding:0 16px;flex:1;animation: opac 2s}


    @keyframes opac{

    0%{
       opacity: 0;
    }
    100%{
        opacity: 1;
    }
  }



    /* ====== Header ====== */
    .header-evento,
    .navigation_header{
      font-family: var(--font);
      display: flex;
      flex-direction: row;
      align-items: center;
      z-index: 10;
    }

    /*
    .header-evento{
            background-image: linear-gradient(to bottom, var(--brand-purple),
            var(--bg-grad-1), var(--brand-purple));
            justify-content: space-between;
            padding: 5px 10%;
            width: 100%;
            height: 130px;
            color: #FFF;
            }
            */

            .header-evento{
                background-image: url("/img/header.png");
                background-size: cover;
                background-position: center;
                background-repeat: no-repeat;

                justify-content: space-between;
                padding: 5px 10%;
                width: 100%;
                height: 130px;
                color: #FFF;
            }

    .header-evento .log{
        width: 30%;
    }

    .esquerda header{
    font-family: var(--font);
}

    .btn_icon_header{
        display: none;
        background-color: transparent;
        border: none;
        color: var(--text-1);
        cursor: pointer;
    }

    .logo-header{
        display: flex;
        flex-direction: row;
        gap: 20px;
        padding: 20px;
        align-items: center;
    }

    .navigation_header a{
      font-family: var(--font);
      text-decoration: none;
      color: var(--text-1);
      transition: 0.5s;
      /*text-shadow: 1px 1px 2px #000;*/
    }
    .navigation_header a:hover{

        background-color: var(--brand-purple);
        padding: 10px;
        border-radius: 6px;
        color: var(--text-1);
        /*text-shadow: 2px 2px 2px #000;*/   
    }

    .txt-menu{
      background-color: #e0e7ff;
      padding: 6px;
      font-weight: bold;
      border-radius: 6px;
    }
    /* ====== Header ====== */




    header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
    .brand{display:flex;gap:12px;align-items:center}
    .logo{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#6c5ce7,#2563eb)}
    .title{font-weight:800}
    .subtitle{color:var(--text-2)}
    .card{background:var(--card-bg);border:1px solid var(--card-stroke);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px}
    .card .head{display:flex;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid var(--card-stroke)}
    .grid{display:grid;gap:14px;padding:18px}
    @media(min-width:860px){.grid{grid-template-columns:repeat(12,1fr)}.col-12{grid-column:span 12}.col-6{grid-column:span 6}.col-4{grid-column:span 4}.col-3{grid-column:span 3}}
    .field{display:flex;flex-direction:column;gap:6px}
    .label{font-weight:700;font-size:.9rem}
    .hint{color:var(--text-2);font-size:.85rem}
    .input,select{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;min-height:42px;outline:none;transition:.2s}
    .input:focus,select:focus{border-color:#c7d2fe;box-shadow:0 0 0 4px rgba(99,102,241,.15)}
    .switch{display:flex;align-items:center;gap:10px;padding:6px 10px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;min-height:42px}
    .btn{appearance:none;border:none;border-radius:12px;padding:10px 14px;font-weight:700;cursor:pointer;transition:.2s}
    .btn.primary{background:linear-gradient(135deg,#6c5ce7,#2563eb);color:#fff}
    .btn:disabled{opacity:.6;cursor:default}
    .footer{display:flex;justify-content:flex-end;gap:10px;padding:18px;border-top:1px solid var(--card-stroke)}
    .status{margin-top:14px;padding:12px 14px;border-radius:12px;display:none}
    .status.ok{display:block;background:rgba(22,163,74,.08);color:#166534;border:1px solid rgba(22,163,74,.25)}
    .status.warn{display:block;background:rgba(234,179,8,.12);color:#92400e;border:1px solid rgba(234,179,8,.35)}
    .status.err{display:block;background:rgba(220,38,38,.08);color:#991b1b;border:1px solid rgba(220,38,38,.3)}
    .site-footer{margin-top:auto;background:#0b1220;color:#e2e8f0}
    .site-footer .inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:18px 16px}
    .site-footer img{width:36px;height:36px;border-radius:10px}
    .small{font-size:.85rem;color:var(--text-2)}
    
    .chip{display:inline-flex;align-items:center;gap:8px;background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;padding:6px 10px;font-weight:700;color:#3730a3}
    
    .toast{position:fixed;right:18px;bottom:18px;background:#0b1220;color:#e2e8f0;padding:12px 14px;border-radius:12px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.25s}
    .toast.show{opacity:1;transform:translateY(0)}
    .toast[data-variant="error"]{background:#7f1d1d}
    .toast[data-variant="ok"]{background:#0b1220}


    /* Rodapé */
    footer{
      background:linear-gradient(180deg, rgba(37,99,235,.08), rgba(108,92,231,.08));
      color:#0b1020;
      border-top:3px solid; border-image:linear-gradient(90deg, var(--brand-purple), var(--brand-blue), var(--brand-sky)) 1;
    }
    .footer-content{
      max-width:1100px; margin:0 auto; padding:28px 20px 8px;
      display:flex; align-items:center; justify-content:center; gap:24px; flex-wrap:wrap;
    }
    .footer-content .titulo_logo img{ display:block; height:auto; max-width:220px; filter:drop-shadow(0 4px 10px rgba(37,99,235,.18)); }
    .footer-bottom{ text-align:center; padding:8px 20px 24px; }
    .footer-bottom p{ margin:0 0 8px; font-size:13px; color:#1f2a44; }
    .footer-bottom a{ color:#0b3bff; text-decoration:none; font-size:13px; }
    .footer-bottom a:hover{ text-decoration:underline; }




/* SPINNER */
/* SPINNER */
/* SPINNER */
/* SPINNER */
/* SPINNER */
:root{
  --ld-accent: #2563eb;
  --ld-text: #0f172a;
}

.ld-modal{
  position: fixed; inset: 0;
  display: none;            /* escondido por padrão */
  align-items: center; justify-content: center;
  z-index: 9999;
}

.ld-modal.is-open{ display: flex; }

.ld-backdrop{
  position: absolute; inset: 0;
  background: rgba(0,0,0,.55);   /* sem blur = mais leve */
}

.ld-card{
  position: relative;
  width: min(360px, 92vw);
  padding: 20px 18px 18px;
  border-radius: 16px;
  background: #fff;              /* sem sombra pesada */
  text-align: center;
  opacity: 0; transform: translateY(6px) scale(.98);
  transition: transform .18s ease-out, opacity .18s ease-out; /* leve */
}

.is-open .ld-card{ opacity: 1; transform: translateY(0) scale(1); }

.ld-logo{
  width: 170px; height: 50px; object-fit: contain;
  margin: 0 auto 12px;
}

.ld-text{
  margin-top: 10px;
  font: 600 1rem/1.3 system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
  color: var(--ld-text);
}

/* Spinner leve: só border + rotate (GPU) */
.ld-spinner{
  --size: 56px;
  width: var(--size); height: var(--size);
  margin: 0 auto;
  border-radius: 50%;
  border: 4px solid transparent;
  border-top-color: var(--ld-accent);
  border-left-color: var(--ld-accent);
  animation: ld-rot .7s linear infinite;
  will-change: transform; /* ok aqui */
}

@keyframes ld-rot { to { transform: rotate(360deg); } }

/* acessibilidade */
@media (prefers-reduced-motion: reduce){
  .ld-card, .ld-spinner{ animation: none; transition: none; }
}
.no-scroll{ overflow: hidden; touch-action: none; }
/* SPINNER */
/* SPINNER */
/* SPINNER */
/* SPINNER */
/* SPINNER */


.menu-header{display: flex; gap: 30px;}