/* CIEBLab v201 — layout integrado para a plataforma e módulos vinculados */
:root{
  --cieb-navy:#073b8f;
  --cieb-navy-2:#052968;
  --cieb-blue:#0b5bd3;
  --cieb-blue-soft:#eaf2ff;
  --cieb-bg:#f4f7fb;
  --cieb-card:#ffffff;
  --cieb-text:#14213a;
  --cieb-muted:#66758d;
  --cieb-line:#dfe7f2;
  --cieb-yellow:#ffbd18;
  --cieb-coral:#ff5268;
  --cieb-green:#159a61;
  --cieb-red:#e63946;
  --cieb-radius:20px;
  --cieb-shadow:0 12px 34px rgba(17,45,92,.09);
  --cieb-shadow-lg:0 24px 70px rgba(17,45,92,.14);
}

html{background:var(--cieb-bg)}
body.cieb-main-app,
body.cieb-coordenacao-app,
body.cieb-conselho-app,
body.cieb-bncc-app{
  background:var(--cieb-bg)!important;
  color:var(--cieb-text);
}
body.cieb-main-app::after,
body.cieb-coordenacao-app::after,
body.cieb-conselho-app::after,
body.cieb-bncc-app::after{
  content:"v201 • gabaritos e leitura estabilizados";
  position:fixed;right:18px;bottom:14px;z-index:9998;
  padding:7px 11px;border-radius:999px;background:rgba(7,59,143,.92);color:#fff;
  font-size:11px;font-weight:800;box-shadow:0 8px 24px rgba(5,41,104,.2);pointer-events:none;
}

/* Componentes compartilhados */
.cieb-shell-overlay{display:none;position:fixed;inset:0;background:rgba(8,20,43,.48);z-index:1490;backdrop-filter:blur(2px)}
.shell-menu-toggle,.module-menu-toggle{
  width:42px;height:42px;display:none;place-items:center;border-radius:13px!important;
  background:#fff!important;border:1px solid var(--cieb-line)!important;color:var(--cieb-navy)!important;
  box-shadow:none!important;font-size:1.25rem;padding:0!important;min-height:42px!important;
}
.cieb-top-kicker{margin:0 0 3px;color:var(--cieb-blue);font-size:.75rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.cieb-user-summary{display:flex;align-items:center;gap:12px;margin-left:auto}
.cieb-user-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#e7efff,#cfdcff);color:var(--cieb-navy);font-weight:900;border:1px solid #d7e2f6}
.cieb-user-copy strong{display:block;font-size:.9rem;color:var(--cieb-text)}
.cieb-user-copy span{display:block;font-size:.76rem;color:var(--cieb-muted);margin-top:2px}

/* =========================================================
   PLATAFORMA PRINCIPAL
   ========================================================= */
.cieb-main-app .app-shell{
  display:grid!important;grid-template-columns:288px minmax(0,1fr)!important;min-height:100vh!important;
  background:var(--cieb-bg)!important;
}
.cieb-main-app .sidebar{
  position:sticky!important;top:0!important;z-index:120!important;height:100vh!important;
  padding:22px 16px 18px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;
  gap:18px!important;color:#fff!important;background:linear-gradient(180deg,var(--cieb-navy-2),var(--cieb-navy))!important;
  border:0!important;border-radius:0!important;box-shadow:10px 0 32px rgba(5,41,104,.14)!important;overflow-y:auto!important;
}
.cieb-main-app .sidebar::after{display:none!important}
.cieb-main-app .sidebar .brand-lockup{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:10px!important;
  min-width:0!important;padding:2px 8px 14px!important;border-bottom:1px solid rgba(255,255,255,.14);
}
.cieb-main-app .sidebar .brand-logo-frame{
  width:100%!important;height:94px!important;padding:10px 12px!important;border-radius:20px!important;background:#fff!important;
  box-shadow:0 14px 32px rgba(0,0,0,.18)!important;
}
.cieb-main-app .sidebar .school-logo{width:100%!important;height:100%!important;object-fit:contain!important}
.cieb-main-app .sidebar strong{font-size:1.08rem!important;color:#fff!important;margin-left:4px}
.cieb-main-app .sidebar span{font-size:.8rem!important;color:rgba(255,255,255,.72)!important;margin:3px 0 0 4px!important}
.cieb-main-app .nav{
  display:grid!important;grid-template-columns:1fr!important;gap:5px!important;align-items:stretch!important;order:0!important;
}
.cieb-main-app .nav .btn{
  width:100%!important;min-height:44px!important;display:flex!important;justify-content:flex-start!important;align-items:center!important;
  padding:10px 12px!important;border-radius:13px!important;background:transparent!important;color:rgba(255,255,255,.86)!important;
  border:1px solid transparent!important;box-shadow:none!important;text-decoration:none!important;font-size:.86rem!important;font-weight:720!important;
}
.cieb-main-app .nav .btn:hover,
.cieb-main-app .nav .btn.active{
  background:#fff!important;color:var(--cieb-navy)!important;border-color:#fff!important;transform:none!important;
}
.cieb-main-app .nav .nav-icon{
  width:25px;height:25px;display:grid!important;place-items:center;margin:0 9px 0 0!important;border-radius:8px;
  background:rgba(255,255,255,.10);font-size:.95rem!important;color:inherit!important;
}
.cieb-main-app .nav .btn.active .nav-icon,.cieb-main-app .nav .btn:hover .nav-icon{background:var(--cieb-blue-soft)}
.cieb-main-app .cieb-conselho-nav{background:transparent!important;color:rgba(255,255,255,.86)!important;border-color:transparent!important}
.cieb-main-app .sidebar-foot{
  margin-top:auto!important;margin-left:0!important;display:grid!important;grid-template-columns:1fr!important;gap:10px!important;
  padding:14px 8px 0!important;border-top:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.7)!important;
}
.cieb-main-app .sidebar-foot #logoutBtn{
  width:100%;justify-content:center!important;background:rgba(255,255,255,.08)!important;color:#fff!important;
  border:1px solid rgba(255,255,255,.22)!important;min-height:42px!important;
}
.cieb-main-app .sidebar-rio,.cieb-main-app .sidebar-foot p:last-child{display:none!important}
.cieb-main-app .content{min-width:0!important;padding:18px 24px 54px!important;background:var(--cieb-bg)!important}
.cieb-main-app .topbar{
  min-height:72px!important;margin:0 0 18px!important;padding:12px 18px!important;display:flex!important;align-items:center!important;
  justify-content:flex-start!important;gap:14px!important;overflow:visible!important;border:1px solid var(--cieb-line)!important;
  border-radius:18px!important;background:rgba(255,255,255,.96)!important;color:var(--cieb-text)!important;box-shadow:var(--cieb-shadow)!important;
}
.cieb-main-app .topbar::before,.cieb-main-app .topbar::after,.cieb-main-app .topbar-strip{display:none!important}
.cieb-main-app .topbar-title-group{display:flex;align-items:center;gap:12px;min-width:0}
.cieb-main-app .topbar h1{margin:0!important;max-width:none!important;font-size:1.38rem!important;line-height:1.15!important;letter-spacing:-.025em!important;color:var(--cieb-navy)!important}
.cieb-main-app .topbar p{margin:3px 0 0!important;font-size:.8rem!important;color:var(--cieb-muted)!important;max-width:720px!important}
.cieb-main-app .mobile-nav{display:none!important}
.cieb-main-app .juazeiro-strip{display:none!important}
.cieb-main-app .section{scroll-margin-top:18px}
.cieb-main-app .section-title{
  margin-bottom:14px!important;padding:18px 20px!important;border:1px solid var(--cieb-line)!important;border-radius:18px!important;
  background:#fff!important;box-shadow:var(--cieb-shadow)!important;align-items:center!important;
}
.cieb-main-app #section-banco>.section-title.bank-hero{
  min-height:178px;margin-bottom:14px!important;padding:28px 30px!important;position:relative;overflow:hidden;
  display:flex!important;justify-content:space-between!important;gap:24px!important;
  background:linear-gradient(120deg,#fff 0%,#fff 66%,#f1f6ff 100%)!important;
}
.cieb-main-app #section-banco>.section-title.bank-hero::after{
  content:"";position:absolute;right:28px;bottom:-42px;width:210px;height:210px;border-radius:50%;
  background:radial-gradient(circle at 38% 38%,rgba(11,91,211,.18),rgba(11,91,211,.03) 58%,transparent 59%);pointer-events:none;
}
.cieb-main-app .bank-hero-copy{display:flex;align-items:center;gap:18px;position:relative;z-index:1}
.cieb-main-app .bank-hero-icon{width:74px;height:74px;flex:0 0 74px;border-radius:22px;display:grid;place-items:center;background:var(--cieb-blue-soft);color:var(--cieb-blue);font-size:2rem;border:1px solid #d9e7ff}
.cieb-main-app .bank-hero h2{font-size:2rem!important;margin:0 0 6px!important;color:var(--cieb-navy)!important;letter-spacing:-.045em!important}
.cieb-main-app .bank-hero p{max-width:620px!important;margin:0!important;font-size:.98rem!important;line-height:1.5!important}
.cieb-main-app .bank-hero .toolbar{position:relative;z-index:2;justify-content:flex-end}
.cieb-main-app .bank-hero .btn{min-height:46px!important;padding:11px 17px!important}
.cieb-main-app .bank-utility-bar{
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 14px;
  padding:11px 14px;border:1px solid var(--cieb-line);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(17,45,92,.06)
}
.cieb-main-app .bank-utility-bar .toolbar{gap:8px}
.cieb-main-app .btn{border-radius:12px!important;min-height:42px!important;font-weight:780!important;box-shadow:none!important}
.cieb-main-app .btn-primary{background:linear-gradient(135deg,var(--cieb-blue),var(--cieb-navy))!important;color:#fff!important;border:1px solid transparent!important}
.cieb-main-app .btn-primary:hover{filter:brightness(.98);transform:translateY(-1px)!important}
.cieb-main-app .btn-secondary{background:#fff!important;color:var(--cieb-navy)!important;border:1px solid #cbd9ec!important}
.cieb-main-app .btn-danger{background:#fff!important;color:var(--cieb-red)!important;border:1px solid #f3aab1!important}
.cieb-main-app .btn-accent{background:#fff8e6!important;color:#8b5b00!important;border:1px solid #f4d58b!important}
.cieb-main-app .chip{border-radius:999px!important;padding:7px 10px!important;font-size:.75rem!important;font-weight:800!important}
.cieb-main-app #statsGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;margin-bottom:14px!important}
.cieb-main-app .stat{
  min-height:106px!important;padding:18px 18px 16px 88px!important;border:1px solid var(--cieb-line)!important;border-radius:18px!important;
  background:#fff!important;box-shadow:var(--cieb-shadow)!important;display:flex!important;flex-direction:column!important;justify-content:center!important;position:relative!important;
}
.cieb-main-app .stat::before{
  position:absolute;left:18px;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:16px;display:grid;place-items:center;
  background:var(--cieb-blue-soft);color:var(--cieb-blue);font-size:1.55rem;line-height:1;
}
.cieb-main-app .stat:nth-child(1)::before{content:"▤"}
.cieb-main-app .stat:nth-child(2)::before{content:"◎";background:#fff4d5;color:#b97700}
.cieb-main-app .stat:nth-child(3)::before{content:"✓";background:#ffe8ec;color:#d93652}
.cieb-main-app .stat strong{font-size:2.05rem!important;line-height:1!important;color:var(--cieb-text)!important}
.cieb-main-app .stat span{margin-top:7px;color:var(--cieb-muted)!important;font-size:.82rem!important}
.cieb-main-app .filters{
  display:grid!important;grid-template-columns:.85fr 1fr 1.15fr 1.5fr!important;gap:12px!important;margin-bottom:14px!important;
  padding:16px!important;border:1px solid var(--cieb-line)!important;border-radius:18px!important;background:#fff!important;box-shadow:var(--cieb-shadow)!important;
}
.cieb-main-app .field label{font-size:.78rem!important;color:#53627b!important;font-weight:800!important}
.cieb-main-app .field input,.cieb-main-app .field select,.cieb-main-app .field textarea{
  min-height:44px!important;border-radius:12px!important;border:1px solid #ccd8e8!important;background:#fff!important;box-shadow:none!important;
}
.cieb-main-app .item-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
.cieb-main-app .item-card{
  min-height:245px!important;padding:16px!important;border:1px solid var(--cieb-line)!important;border-radius:18px!important;background:#fff!important;
  box-shadow:0 9px 26px rgba(17,45,92,.07)!important;display:flex!important;flex-direction:column!important;gap:10px!important;overflow:hidden!important;
}
.cieb-main-app .item-card::before{height:4px!important;background:var(--cieb-blue)!important}
.cieb-main-app .item-card:hover{transform:translateY(-2px)!important;box-shadow:0 16px 36px rgba(17,45,92,.12)!important}
.cieb-main-app .item-card.selected{box-shadow:0 14px 32px rgba(21,154,97,.14),inset 0 0 0 2px rgba(21,154,97,.28)!important}
.cieb-main-app .item-card-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important}
.cieb-main-app .item-card .chips{display:flex!important;gap:6px!important;flex-wrap:wrap!important}
.cieb-main-app .item-card .chip{background:#eef4ff!important;color:#244f91!important;border:0!important;padding:5px 8px!important}
.cieb-main-app .item-card .chip:nth-child(2){background:#e9f7ef!important;color:#217648!important}
.cieb-main-app .item-card h3{margin:0!important;font-size:1.02rem!important;color:var(--cieb-text)!important}
.cieb-main-app .item-text{margin:0!important;color:#43516a!important;font-size:.9rem!important;line-height:1.48!important;-webkit-line-clamp:4!important;flex:1!important}
.cieb-main-app .support-preview{max-height:132px!important;border-radius:12px!important}
.cieb-main-app .support-preview img{max-height:120px!important}
.cieb-main-app .item-check-wrap{font-size:.72rem!important;color:var(--cieb-muted)!important;display:flex!important;align-items:center!important;gap:5px!important;white-space:nowrap}
.cieb-main-app .item-check{width:18px!important;height:18px!important;accent-color:var(--cieb-blue)}
.cieb-main-app .card-actions{display:grid!important;grid-template-columns:1fr 1.12fr 1fr!important;gap:8px!important;margin-top:auto!important}
.cieb-main-app .card-actions .btn{min-height:39px!important;padding:8px 9px!important;font-size:.78rem!important;white-space:nowrap!important}
.cieb-main-app .cieb-conselho-floating{display:none!important}

/* =========================================================
   COORDENAÇÃO PEDAGÓGICA
   ========================================================= */
.cieb-coordenacao-app .shell{min-height:100vh!important;display:grid!important;grid-template-columns:288px minmax(0,1fr)!important;gap:0!important;padding:0!important;background:var(--cieb-bg)!important}
.cieb-coordenacao-app .sidebar{
  position:sticky!important;top:0!important;height:100vh!important;border-radius:0!important;padding:22px 16px 18px!important;
  background:linear-gradient(180deg,var(--cieb-navy-2),var(--cieb-navy))!important;box-shadow:10px 0 32px rgba(5,41,104,.14)!important;z-index:120!important;
}
.cieb-coordenacao-app .brand{padding:0 8px 16px!important;border-bottom:1px solid rgba(255,255,255,.14)!important;align-items:flex-start!important;flex-direction:column!important}
.cieb-coordenacao-app .brand img{width:100%!important;height:92px!important;object-fit:contain!important;background:#fff!important;border-radius:20px!important;padding:9px 12px!important;filter:none!important;box-shadow:0 14px 32px rgba(0,0,0,.18)!important}
.cieb-coordenacao-app .brand-copy strong{font-size:1.05rem!important;margin-left:4px}.cieb-coordenacao-app .brand-copy span{font-size:.8rem!important;margin-left:4px}
.cieb-coordenacao-app .nav{gap:5px!important}
.cieb-coordenacao-app .nav button,.cieb-coordenacao-app .navlink,.cieb-coordenacao-app .backlink{
  min-height:43px!important;padding:10px 12px!important;border-radius:13px!important;font-size:.84rem!important;font-weight:720!important;
}
.cieb-coordenacao-app .nav button.active,.cieb-coordenacao-app .nav button:hover,.cieb-coordenacao-app .navlink:hover,.cieb-coordenacao-app .backlink:hover{background:#fff!important;color:var(--cieb-navy)!important}
.cieb-coordenacao-app .divider{margin:4px 8px!important}.cieb-coordenacao-app .sidefoot{display:none!important}
.cieb-coordenacao-app .main{min-width:0!important;padding:18px 24px 54px!important}
.cieb-coordenacao-app .toolbar{margin:0 0 14px!important;padding:10px 14px;border:1px solid var(--cieb-line);border-radius:18px;background:#fff;box-shadow:var(--cieb-shadow)}
.cieb-coordenacao-app .toolbar-box{min-width:190px!important;border:0!important;border-right:1px solid var(--cieb-line)!important;border-radius:0!important;padding:7px 12px!important;box-shadow:none!important}
.cieb-coordenacao-app .toolbar-left .toolbar-box:last-child{border-right:0!important}
.cieb-coordenacao-app .notify{width:42px!important;height:42px!important;border-radius:13px!important;box-shadow:none!important}
.cieb-coordenacao-app .userbox{padding:5px 8px!important;border:0!important;box-shadow:none!important}.cieb-coordenacao-app .avatar{width:38px!important;height:38px!important}
.cieb-coordenacao-app .top{margin-bottom:14px!important;padding:0 2px!important;align-items:center!important}
.cieb-coordenacao-app .top h1{font-size:1.62rem!important;letter-spacing:-.035em!important}.cieb-coordenacao-app .subtitle{font-size:.9rem!important}
.cieb-coordenacao-app .panel,.cieb-coordenacao-app .metric,.cieb-coordenacao-app .quick-card{border-radius:18px!important;border-color:var(--cieb-line)!important;box-shadow:var(--cieb-shadow)!important}
.cieb-coordenacao-app .hero{padding:24px!important;min-height:190px!important;background:linear-gradient(120deg,#fff 0%,#fff 68%,#eef4ff 100%)!important}
.cieb-coordenacao-app .hero:after{border-color:rgba(11,91,211,.22) transparent transparent transparent!important}.cieb-coordenacao-app .hero-title{font-size:1.95rem!important}
.cieb-coordenacao-app .hero-logo-box{min-height:130px!important;border-radius:18px!important}.cieb-coordenacao-app .hero-logo{max-width:170px!important}
.cieb-coordenacao-app .stat-pill{border-radius:14px!important;padding:12px 14px!important}.cieb-coordenacao-app .stat-pill strong{font-size:1.5rem!important}
.cieb-coordenacao-app .quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}.cieb-coordenacao-app .quick-card{min-height:210px!important;padding:18px!important}
.cieb-coordenacao-app .quick-icon{width:58px!important;height:58px!important;border-radius:16px!important;font-size:1.5rem!important}.cieb-coordenacao-app .quick-card h3{font-size:1.18rem!important}
.cieb-coordenacao-app .btn,.cieb-coordenacao-app .card-link{border-radius:12px!important;min-height:40px!important}.cieb-coordenacao-app .btn.primary{background:linear-gradient(135deg,var(--cieb-blue),var(--cieb-navy))!important}
.cieb-coordenacao-app input,.cieb-coordenacao-app select,.cieb-coordenacao-app textarea{border-radius:12px!important;border-color:#ccd8e8!important}
.cieb-coordenacao-app .process-switch{background:#fff!important;border:1px solid var(--cieb-line)!important;border-radius:16px!important;padding:6px!important;box-shadow:var(--cieb-shadow)!important}
.cieb-coordenacao-app .process-switch button{border-radius:11px!important}.cieb-coordenacao-app .process-switch button.active{background:var(--cieb-navy)!important;color:#fff!important}

/* =========================================================
   CONSELHO DE CLASSE
   ========================================================= */
.cieb-conselho-app .cieb-module-shell{min-height:100vh;display:grid;grid-template-columns:288px minmax(0,1fr);background:var(--cieb-bg)}
.cieb-conselho-app .cieb-module-sidebar{
  position:sticky;top:0;height:100vh;padding:22px 16px 18px;overflow-y:auto;color:#fff;background:linear-gradient(180deg,var(--cieb-navy-2),var(--cieb-navy));box-shadow:10px 0 32px rgba(5,41,104,.14);z-index:120;
}
.cieb-conselho-app .cieb-module-brand{display:grid;gap:10px;padding:0 8px 16px;border-bottom:1px solid rgba(255,255,255,.14)}
.cieb-conselho-app .cieb-module-brand img{width:100%;height:92px;object-fit:contain;background:#fff;border-radius:20px;padding:9px 12px;box-shadow:0 14px 32px rgba(0,0,0,.18)}
.cieb-conselho-app .cieb-module-brand strong{font-size:1.05rem}.cieb-conselho-app .cieb-module-brand span{color:rgba(255,255,255,.72);font-size:.8rem}
.cieb-conselho-app .cieb-module-nav{display:grid;gap:6px;margin-top:18px}
.cieb-conselho-app .cieb-module-nav .btn{
  width:100%;min-height:43px;justify-content:flex-start;border-radius:13px!important;padding:10px 12px!important;background:transparent!important;color:rgba(255,255,255,.88)!important;border:1px solid transparent!important;box-shadow:none!important;font-size:.84rem!important;
}
.cieb-conselho-app .cieb-module-nav .btn:hover,.cieb-conselho-app .cieb-module-nav .btn.primary{background:#fff!important;color:var(--cieb-navy)!important}
.cieb-conselho-app .cieb-module-content{min-width:0;padding:18px 24px 54px}
.cieb-conselho-app .cieb-module-topbar{height:72px;display:flex;align-items:center;gap:12px;padding:12px 18px;margin-bottom:14px;background:#fff;border:1px solid var(--cieb-line);border-radius:18px;box-shadow:var(--cieb-shadow)}
.cieb-conselho-app .cieb-module-topbar h1{margin:0;font-size:1.38rem;color:var(--cieb-navy);letter-spacing:-.03em}.cieb-conselho-app .cieb-module-topbar p{margin:3px 0 0;color:var(--cieb-muted);font-size:.8rem}
.cieb-conselho-app .wrap{padding:0!important;max-width:none!important}
.cieb-conselho-app .hero{min-height:190px!important;padding:28px 30px!important;border:1px solid var(--cieb-line)!important;border-radius:18px!important;background:linear-gradient(120deg,#fff 0%,#fff 68%,#eef4ff 100%)!important;color:var(--cieb-text)!important;box-shadow:var(--cieb-shadow)!important}
.cieb-conselho-app .hero:after{content:"◎"!important;color:var(--cieb-blue)!important;opacity:.07!important;right:56px!important;bottom:8px!important}.cieb-conselho-app .hero h1{font-size:2.2rem!important;color:var(--cieb-navy)!important;max-width:none!important;line-height:1.05!important}.cieb-conselho-app .hero p{color:var(--cieb-muted)!important;max-width:760px!important}
.cieb-conselho-app .hero-logo-card{background:#fff!important;border:1px solid var(--cieb-line)!important;border-radius:18px!important}
.cieb-conselho-app .pill{background:var(--cieb-blue-soft)!important;color:var(--cieb-navy)!important}
.cieb-conselho-app .cards{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;margin:14px 0!important}.cieb-conselho-app .card{border-radius:18px!important;padding:16px!important;box-shadow:var(--cieb-shadow)!important}.cieb-conselho-app .card strong{font-size:1.9rem!important}
.cieb-conselho-app .panel{border-radius:18px!important;padding:18px!important;box-shadow:var(--cieb-shadow)!important}.cieb-conselho-app .filters{grid-template-columns:1.05fr 1fr 1fr 1fr auto!important}
.cieb-conselho-app .field input,.cieb-conselho-app .field select,.cieb-conselho-app .field textarea{border-radius:12px!important;border-color:#ccd8e8!important}
.cieb-conselho-app .btn{border-radius:12px!important;min-height:40px!important}.cieb-conselho-app .btn.primary{background:linear-gradient(135deg,var(--cieb-blue),var(--cieb-navy))!important}.cieb-conselho-app .btn.green{background:var(--cieb-green)!important}.cieb-conselho-app .btn.dark{background:var(--cieb-navy-2)!important}
.cieb-conselho-app .tablewrap{border-radius:14px!important}.cieb-conselho-app th{background:#f5f8fd!important;color:#56657c!important}

/* =========================================================
   BNCC COMPLETA
   ========================================================= */
.cieb-bncc-app .app-shell{grid-template-columns:288px minmax(0,1fr)!important;min-height:100vh!important;background:var(--cieb-bg)!important}
.cieb-bncc-app .sidebar{position:sticky!important;top:0!important;height:100vh!important;padding:22px 16px!important;background:linear-gradient(180deg,var(--cieb-navy-2),var(--cieb-navy))!important;box-shadow:10px 0 32px rgba(5,41,104,.14)!important}
.cieb-bncc-app .brand{display:grid!important;gap:10px!important;padding:0 8px 16px!important;border-bottom:1px solid rgba(255,255,255,.14)!important}
.cieb-bncc-app .brand img{width:100%;height:92px;object-fit:contain;background:#fff;border-radius:20px;padding:9px 12px;box-shadow:0 14px 32px rgba(0,0,0,.18)}
.cieb-bncc-app .brand strong{color:#fff!important;font-size:1.05rem!important}.cieb-bncc-app .brand small{color:rgba(255,255,255,.72)!important}
.cieb-bncc-app .sidebar nav{display:grid!important;gap:6px!important}.cieb-bncc-app .sidebar nav a{padding:11px 12px!important;border-radius:13px!important;color:rgba(255,255,255,.88)!important}.cieb-bncc-app .sidebar nav a.active,.cieb-bncc-app .sidebar nav a:hover{background:#fff!important;color:var(--cieb-navy)!important}
.cieb-bncc-app .content{padding:18px 24px 54px!important}.cieb-bncc-app .page-head{padding:28px 30px!important;border:1px solid var(--cieb-line)!important;border-radius:18px!important;background:linear-gradient(120deg,#fff 0%,#fff 68%,#eef4ff 100%)!important;box-shadow:var(--cieb-shadow)!important}.cieb-bncc-app .page-head h1{color:var(--cieb-navy)!important;font-size:2rem!important}
.cieb-bncc-app .metric-card,.cieb-bncc-app .panel{border-radius:18px!important;border-color:var(--cieb-line)!important;box-shadow:var(--cieb-shadow)!important}.cieb-bncc-app .metric-card span{color:var(--cieb-navy)!important}.cieb-bncc-app .btn.primary{background:linear-gradient(135deg,var(--cieb-blue),var(--cieb-navy))!important}.cieb-bncc-app input,.cieb-bncc-app select{border-radius:12px!important;border-color:#ccd8e8!important}

/* Login da plataforma principal e da coordenação */
.cieb-main-app .login-shell{background:linear-gradient(135deg,#f2f6fc,#e9f0fb)!important;padding:28px!important}
.cieb-main-app .login-shell::before,.cieb-main-app .login-shell::after{display:none!important}
.cieb-main-app .login-box{width:min(1040px,100%)!important;border-radius:26px!important;background:#fff!important;box-shadow:var(--cieb-shadow-lg)!important}
.cieb-main-app .login-intro{min-height:610px!important;background:linear-gradient(160deg,var(--cieb-navy-2),var(--cieb-navy))!important;padding:46px!important}
.cieb-main-app .login-intro::before,.cieb-main-app .login-intro::after{opacity:.16!important}
.cieb-main-app .login-intro .brand-logo-frame{width:100%!important;max-width:420px!important;min-height:112px!important}
.cieb-main-app .brand-title{font-size:3.2rem!important;max-width:13ch!important}.cieb-main-app .login-form{padding:48px!important;background:#fff!important}
.cieb-coordenacao-app .auth-gate{background:linear-gradient(135deg,#edf3fb,#e5eefb)!important}.cieb-coordenacao-app .auth-card{border-radius:26px!important;box-shadow:var(--cieb-shadow-lg)!important}.cieb-coordenacao-app .auth-brand{background:linear-gradient(160deg,var(--cieb-navy-2),var(--cieb-navy))!important}

/* Responsividade */
@media(max-width:1240px){
  .cieb-main-app .item-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .cieb-coordenacao-app .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .cieb-conselho-app .cards{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:980px){
  .shell-menu-toggle,.module-menu-toggle{display:grid!important}
  .cieb-main-app .app-shell,.cieb-coordenacao-app .shell,.cieb-conselho-app .cieb-module-shell,.cieb-bncc-app .app-shell{grid-template-columns:1fr!important}
  .cieb-main-app .sidebar,.cieb-coordenacao-app .sidebar,.cieb-conselho-app .cieb-module-sidebar,.cieb-bncc-app .sidebar{
    position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(320px,86vw)!important;height:100vh!important;
    transform:translateX(-105%);transition:transform .22s ease;z-index:1500!important;
  }
  body.cieb-sidebar-open .sidebar,body.cieb-sidebar-open .cieb-module-sidebar{transform:translateX(0)!important}
  body.cieb-sidebar-open .cieb-shell-overlay{display:block}
  .cieb-main-app .content,.cieb-coordenacao-app .main,.cieb-conselho-app .cieb-module-content,.cieb-bncc-app .content{padding:14px 14px 42px!important}
  .cieb-main-app .topbar,.cieb-conselho-app .cieb-module-topbar{position:sticky!important;top:8px!important;z-index:90!important}
  .cieb-main-app .filters{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .cieb-main-app #section-banco>.section-title.bank-hero{min-height:0!important;align-items:flex-start!important;flex-direction:column!important}
  .cieb-main-app .bank-hero .toolbar{justify-content:flex-start!important}
  .cieb-coordenacao-app .toolbar{position:sticky;top:8px;z-index:90}.cieb-coordenacao-app .toolbar-left{display:none!important}
  .cieb-conselho-app .filters{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cieb-conselho-app .charts{grid-template-columns:1fr!important}
}
@media(max-width:680px){
  body.cieb-main-app::after,body.cieb-coordenacao-app::after,body.cieb-conselho-app::after,body.cieb-bncc-app::after{display:none}
  .cieb-user-copy{display:none}
  .cieb-main-app .topbar{padding:10px 12px!important}.cieb-main-app .topbar h1{font-size:1.1rem!important}.cieb-main-app .topbar p{display:none!important}
  .cieb-main-app .bank-hero-copy{align-items:flex-start}.cieb-main-app .bank-hero-icon{width:52px;height:52px;flex-basis:52px;border-radius:15px;font-size:1.45rem}.cieb-main-app .bank-hero h2{font-size:1.55rem!important}
  .cieb-main-app #statsGrid,.cieb-main-app .filters,.cieb-main-app .item-list{grid-template-columns:1fr!important}
  .cieb-main-app .card-actions{grid-template-columns:1fr!important}
  .cieb-main-app .bank-utility-bar{align-items:flex-start;flex-direction:column}.cieb-main-app .bank-utility-bar .toolbar{width:100%}.cieb-main-app .bank-utility-bar .btn{flex:1}
  .cieb-coordenacao-app .quick-grid,.cieb-coordenacao-app .mini-grid,.cieb-coordenacao-app .twocol,.cieb-coordenacao-app .hero,.cieb-coordenacao-app .hero-stats{grid-template-columns:1fr!important}.cieb-coordenacao-app .hero-side{justify-items:start!important}.cieb-coordenacao-app .hero-logo-box{display:none!important}
  .cieb-conselho-app .cards,.cieb-conselho-app .filters{grid-template-columns:1fr!important}.cieb-conselho-app .hero{padding:22px!important}.cieb-conselho-app .hero h1{font-size:1.75rem!important}.cieb-conselho-app .hero-logo-card{display:none!important}
  .cieb-bncc-app .cards-grid,.cieb-bncc-app .filters,.cieb-bncc-app .two-col,.cieb-bncc-app .usage-grid{grid-template-columns:1fr!important}
}
@media print{
  body.cieb-main-app::after,body.cieb-coordenacao-app::after,body.cieb-conselho-app::after,body.cieb-bncc-app::after,
  .shell-menu-toggle,.module-menu-toggle,.cieb-shell-overlay{display:none!important}
}

/* Estados de visibilidade preservados após os overrides do tema */
body.cieb-main-app .hidden,
body.cieb-coordenacao-app .hidden,
body.cieb-conselho-app .hidden,
body.cieb-bncc-app .hidden{display:none!important}
.cieb-bncc-app>.module-menu-toggle,
.cieb-bncc-app .content>.module-menu-toggle{position:sticky;top:8px;z-index:90;margin:0 0 12px}
.cieb-main-app .filters .field.wide{grid-column:auto!important}
body.cieb-main-app::after,
body.cieb-coordenacao-app::after,
body.cieb-conselho-app::after,
body.cieb-bncc-app::after{content:"v201 • gabaritos e leitura estabilizados"!important;background:rgba(7,59,143,.92)!important}
.cieb-main-app .login-intro .brand-title,
.cieb-main-app .login-intro p,
.cieb-main-app .login-intro strong,
.cieb-main-app .login-intro span{color:#fff!important}
