/* ========================================================================== 
   TERREIRO CAPOEIRA ANGOLA V7.0 — IDENTIDADE TERRITORIAL + REDE INTERNACIONAL
   Angola: vermelho, preto e amarelo. O azul do logótipo deixa de dominar a UI.
   ========================================================================== */
:root{
  --angola-red:#CE1126;
  --angola-red-dark:#99101e;
  --angola-black:#0B0B0C;
  --angola-black-soft:#171719;
  --angola-yellow:#F7D117;
  --angola-cream:#F7F4ED;
  --blue:#CE1126;
  --blue2:#111113;
  --yellow:#F7D117;
  --gold:#B81727;
}
[data-theme=light]{--bg:#F5F3EF;--surface:#FFFFFF;--card:#FFFFFF;--text:#151516;--muted:#61616A;--line:#DDD9D0;--shadow:0 18px 44px rgba(26,15,15,.10)}
[data-theme=dark]{--bg:#0A0A0B;--surface:#111113;--card:#18181B;--text:#F8F7F3;--muted:#C4C0B8;--line:#343035;--shadow:0 22px 58px rgba(0,0,0,.38)}

/* Dropdown internacional: sem JavaScript, acessível e reutilizável. */
.tca-country-switcher{position:relative;display:inline-block;z-index:1500;color:var(--text,#fff);font-family:Inter,Arial,sans-serif}
.tca-country-switcher summary{list-style:none;min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 11px;border:1px solid var(--line,rgba(255,255,255,.22));background:var(--card,#151515);color:var(--text,#fff);cursor:pointer;user-select:none;font-size:12px;font-weight:850;white-space:nowrap}
.tca-country-switcher summary::-webkit-details-marker{display:none}.tca-country-switcher summary::marker{display:none}
.tca-country-switcher[open] summary,.tca-country-switcher summary:hover,.tca-country-switcher summary:focus-visible{outline:0;border-color:var(--angola-yellow);box-shadow:0 0 0 2px rgba(247,209,23,.14)}
.tca-country-flag{font-size:20px;line-height:1;filter:saturate(.98)}
.tca-country-switcher summary>i{font-size:9px;transition:transform .18s}.tca-country-switcher[open] summary>i{transform:rotate(180deg)}
.tca-country-menu{position:absolute;right:0;top:calc(100% + 8px);width:250px;padding:8px;background:#111113;border:1px solid #383238;box-shadow:0 24px 60px rgba(0,0,0,.38);color:#fff}
.tca-country-menu-title{padding:8px 10px;color:var(--angola-yellow);font-size:9px;font-weight:950;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #302b2f}
.tca-country-menu a{display:grid!important;grid-template-columns:30px minmax(0,1fr) auto!important;align-items:center!important;gap:9px!important;min-height:44px!important;padding:8px 10px!important;margin:0!important;border:0!important;border-bottom:1px solid #2b272b!important;background:transparent!important;color:#f8f7f3!important;text-decoration:none!important;font-size:12px!important;font-weight:800!important;text-transform:none!important;clip-path:none!important}
.tca-country-menu a:last-child{border-bottom:0!important}.tca-country-menu a:hover{background:#211719!important;color:var(--angola-yellow)!important}.tca-country-menu a.active{background:rgba(206,17,38,.18)!important;color:#fff!important;border-left:3px solid var(--angola-red)!important}
.tca-country-menu a small{color:var(--angola-yellow)!important;font-size:9px!important}.tca-country-menu a>i{font-size:9px!important;color:#a9a3a4!important}

/* Administração: base Angola sem mexer na estrutura funcional. */
.admin-body .sidebar{background:linear-gradient(180deg,#080809 0%,#151315 58%,#241216 100%)!important;border-right-color:#3b272c!important}
.admin-body .brand span,.admin-body .sidebar-version span,.admin-body .nav-group-title{color:var(--angola-yellow)!important}
.admin-body .sidebar a.active,.admin-body .sidebar a:hover{background:rgba(206,17,38,.27)!important;border-color:rgba(247,209,23,.42)!important}
.admin-body .sidebar a.active{box-shadow:inset 4px 0 0 var(--angola-yellow)}
.admin-body .topbar{border-bottom:2px solid rgba(206,17,38,.42)!important}
.admin-body .btn-primary,.admin-body button.btn-primary{background:var(--angola-red)!important;color:#fff!important}
.admin-body .btn-outline{border-color:var(--angola-yellow)!important;color:var(--text)!important}
.admin-body .kpis i,.admin-body .stats-grid .stat i{color:var(--angola-yellow)!important}
.admin-body input:focus,.admin-body select:focus,.admin-body textarea:focus{outline-color:var(--angola-red)!important;border-color:var(--angola-red)!important}

/* Formulários em todas as áreas: foco visível e hierarquia consistente. */
input,select,textarea{transition:border-color .18s,box-shadow .18s,background .18s}
input:focus,select:focus,textarea:focus{outline:0!important;border-color:var(--angola-red)!important;box-shadow:0 0 0 3px rgba(206,17,38,.12)}

/* Brevemente — identidade específica por país sem criar websites falsos. */
.country-coming{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(145deg,#070708,#18171a);color:#fff;position:relative;overflow:hidden}
.country-coming:before{content:"";position:fixed;inset:0;background:linear-gradient(120deg,color-mix(in srgb,var(--country-a) 38%,transparent),transparent 42%),linear-gradient(300deg,color-mix(in srgb,var(--country-b) 30%,transparent),transparent 48%);pointer-events:none}
.country-coming-head{position:relative;z-index:2;min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px clamp(20px,6vw,90px);border-bottom:1px solid rgba(255,255,255,.16);background:rgba(8,8,9,.78);backdrop-filter:blur(16px)}
.country-coming-head>a{display:flex;align-items:center;gap:13px;color:#fff;text-decoration:none;font-weight:950;letter-spacing:.055em}.country-coming-head>a img{width:54px;height:54px;object-fit:contain;background:#fff;padding:3px}.country-coming main{position:relative;z-index:1;flex:1;width:min(1040px,calc(100% - 40px));margin:auto;padding:70px 0;display:flex;flex-direction:column;justify-content:center}.country-coming-flag{font-size:74px}.country-coming-kicker{margin-top:26px;color:var(--country-c);font-weight:950;letter-spacing:.16em;font-size:12px}.country-coming h1{margin:12px 0 0;font-family:Impact,"Arial Black",sans-serif;font-size:clamp(76px,13vw,180px);line-height:.82;text-transform:uppercase;letter-spacing:.015em}.country-coming h2{margin:24px 0 0;color:var(--country-c);font-size:clamp(28px,4vw,54px)}.country-coming p{max-width:720px;font-size:18px;line-height:1.7;color:#d6d2d1}.country-coming-button{width:max-content;margin-top:25px;padding:16px 20px;background:var(--country-c);color:#111;text-decoration:none;font-weight:950;text-transform:uppercase}.country-coming footer{position:relative;z-index:1;padding:22px clamp(20px,6vw,90px);border-top:1px solid rgba(255,255,255,.16);color:#bfb9b9;font-size:12px}
@media(max-width:700px){.tca-country-current{display:none}.tca-country-switcher summary{width:44px;padding:0}.tca-country-menu{width:min(270px,calc(100vw - 24px))}.country-coming-head>a span{display:none}.country-coming h1{font-size:clamp(64px,20vw,108px)}}

/* Identidade e seletor também nos ecrãs de entrada. */
.login-wrap{position:relative}.login-country-bar{position:absolute;top:18px;right:18px;display:flex;align-items:center;gap:10px;z-index:20}.login-country-bar>span,.login-angola-label{color:var(--angola-red);font-size:10px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.login-country-bar>span{padding:10px 12px;background:var(--card);border:1px solid var(--line)}.login-card{border-top:4px solid var(--angola-red)!important}.login-card .btn-primary{background:var(--angola-red)!important;color:#fff!important}.login-card .show-pass{background:#171719!important;color:#fff!important}.login-card .text-link{color:var(--angola-red)!important}.cms-login-country{position:fixed;z-index:20;right:24px;top:20px;display:flex;align-items:center;gap:10px}.cms-login-country>span{color:#F7D117;font-size:10px;font-weight:950;letter-spacing:.12em}.cms-login-country .tca-country-switcher summary{background:#171719;color:#fff;border-color:#51454a}
@media(max-width:600px){.login-wrap{padding-top:86px!important}.login-country-bar{top:12px;right:12px}.login-country-bar>span{display:none}.cms-login-country{right:12px;top:12px}.cms-login-country>span{display:none}}

/* V7.0 — bandeiras reais, consistentes também no Windows */
.tca-country-flag{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.tca-country-flag img{display:block;width:24px;height:16px;object-fit:cover;border:1px solid rgba(255,255,255,.28);box-shadow:0 1px 2px rgba(0,0,0,.18)}
.tca-country-menu .tca-country-flag img{width:28px;height:18px;border-color:rgba(11,11,12,.16)}
