
:root{
  --bg:#f3f6fb;
  --card:#ffffff;
  --text:#132238;
  --muted:#708097;
  --line:#dfe6ef;
  --primary:#0a73d9;
  --primary2:#0554a3;
  --success:#14804a;
  --danger:#c62828;
  --warning:#b26a00;
  --shadow:0 14px 38px rgba(24,50,82,.08);
  --shadow-lg:0 24px 60px rgba(24,50,82,.14);
  --radius:18px;
  --radius-sm:12px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  background:var(--bg);
  color:var(--text);
  -webkit-font-smoothing:antialiased
}
a{text-decoration:none;color:inherit}
img{max-width:100%}
button,input,textarea,select{font:inherit}
.wrap{max-width:1220px;margin:auto;padding:0 22px}

/* topo público */
.topbar{
  position:sticky;top:0;z-index:100;
  background:linear-gradient(135deg,var(--primary2),var(--primary));
  color:#fff;
  box-shadow:0 10px 28px rgba(10,60,110,.18)
}
.topbar .wrap{
  min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px
}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;min-width:0}
.brand span{font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand img{
  width:52px;height:52px;object-fit:contain;border-radius:14px;
  background:#fff;padding:4px;border:1px solid rgba(255,255,255,.35)
}
.nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.nav a{
  display:flex;align-items:center;gap:7px;
  padding:10px 12px;border-radius:12px;font-weight:750;font-size:14px;
  transition:.2s ease
}
.nav a:hover{background:rgba(255,255,255,.14);transform:translateY(-1px)}
.mobile-menu-btn{
  display:none;border:0;background:rgba(255,255,255,.14);color:#fff;
  width:44px;height:44px;border-radius:13px;font-size:20px;cursor:pointer
}

/* hero */
.hero{
  padding:72px 0 60px;
  background:
    radial-gradient(circle at 82% 12%,rgba(10,115,217,.14),transparent 34%),
    linear-gradient(180deg,#eef7ff 0%,#f7faff 100%)
}
.hero-grid{display:grid;grid-template-columns:1.14fr .86fr;gap:38px;align-items:center}
.hero h1{
  font-size:clamp(38px,5vw,58px);line-height:1.02;margin:0 0 18px;
  letter-spacing:-1.6px
}
.hero p{font-size:18px;color:#52657d;line-height:1.72;margin-bottom:24px}
.hero-card,.card{
  background:var(--card);border:1px solid var(--line);
  border-radius:var(--radius);box-shadow:var(--shadow)
}
.hero-card{padding:16px}.hero-card img{border-radius:14px;display:block}
.banner{height:360px;overflow:hidden;border-radius:14px}
.banner img{width:100%;height:100%;object-fit:cover}

.section{padding:58px 0;position:relative}
.section:nth-of-type(even){background:rgba(255,255,255,.46)}
.section-divider{height:8px;background:linear-gradient(90deg,var(--primary),rgba(10,115,217,.20),transparent)}
.section-heading{display:flex;align-items:center;gap:16px;margin-bottom:24px}
.section-heading h2{font-size:34px;margin:0;letter-spacing:-.5px}
.section-icon{
  width:58px;height:58px;display:grid;place-items:center;border-radius:16px;
  background:linear-gradient(135deg,var(--primary),var(--primary2));
  color:#fff;font-size:23px;box-shadow:0 10px 24px rgba(10,115,217,.20)
}
.section-media{border-radius:22px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:24px}
.section-media img{width:100%;height:390px;object-fit:cover;display:block}
.section-fallback{
  height:190px;display:grid;place-items:center;margin-bottom:24px;
  border:1px dashed #cbd8e7;border-radius:22px;
  background:linear-gradient(135deg,#fff,#eef6ff);color:var(--primary);font-size:58px
}

.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.card{padding:22px;transition:.2s ease}
.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.muted{color:var(--muted)}
.badge{
  display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;
  background:#e8f3ff;color:#0b67b9;font-size:12px;font-weight:900
}
.prose{line-height:1.85;color:#364b63}
.director{display:flex;flex-direction:column;gap:5px}
.director:before{
  content:"\f2bd";font-family:"Font Awesome 6 Free";font-weight:900;
  color:var(--primary);font-size:23px;margin-bottom:6px
}
.news-card h3{margin:12px 0}
.law-list{display:grid;gap:14px}
.law{
  padding:20px;border:1px solid var(--line);border-radius:17px;background:#fff;
  box-shadow:0 8px 24px rgba(25,50,84,.05)
}
.law a{color:var(--primary);font-weight:800}
footer{background:#0d2944;color:#dbe8f5;padding:42px 0}
.footer-grid{display:grid;grid-template-columns:2fr 1fr;gap:30px}

/* botões */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border:1px solid transparent;border-radius:12px;padding:12px 16px;
  font-weight:800;cursor:pointer;transition:.2s ease;
  background:#edf4fb;color:#0b5da8
}
.btn:hover{transform:translateY(-1px);filter:brightness(.99)}
.btn.primary{
  background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff;
  box-shadow:0 8px 18px rgba(10,115,217,.20)
}
.btn.danger{background:#fff0f0;color:var(--danger);border-color:#ffd5d5}
.btn.dark{background:#16324f;color:#fff}

/* painel */
.admin-shell{display:grid;grid-template-columns:286px minmax(0,1fr);min-height:100vh}
.sidebar{
  position:sticky;top:0;height:100vh;overflow:auto;z-index:150;
  background:linear-gradient(180deg,#0c2946 0%,#123c63 100%);
  color:#fff;padding:20px 15px;border-right:1px solid rgba(255,255,255,.05)
}
.sidebar .brand{
  margin-bottom:18px;padding:5px 8px 14px;border-bottom:1px solid rgba(255,255,255,.09)
}
.sidebar .brand img{width:46px;height:46px}
.sidebar-search{
  position:relative;margin:0 5px 16px
}
.sidebar-search i{
  position:absolute;left:13px;top:50%;transform:translateY(-50%);
  color:#9fb9d2;font-size:14px
}
.sidebar-search input{
  width:100%;height:43px;border-radius:12px;border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.08);color:#fff;padding:0 12px 0 38px;outline:none;
  transition:.2s ease
}
.sidebar-search input::placeholder{color:#b8cadb}
.sidebar-search input:focus{
  background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.26);
  box-shadow:0 0 0 3px rgba(255,255,255,.05)
}
.sidebar a{
  display:flex;align-items:center;gap:10px;padding:12px 13px;margin:4px 0;border-radius:11px;
  color:#dce8f4;font-weight:720;transition:.18s ease
}
.sidebar a:before{
  content:"\f105";font-family:"Font Awesome 6 Free";font-weight:900;opacity:.55
}
.sidebar a:hover,.sidebar a.active{
  background:linear-gradient(90deg,rgba(255,255,255,.14),rgba(255,255,255,.08));
  color:#fff;transform:translateX(2px)
}
.content{padding:30px;min-width:0}
.toolbar{
  display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px
}
.toolbar h1{margin:0;font-size:30px;letter-spacing:-.5px}
.toolbar-tools{display:flex;gap:10px;align-items:center}
.sidebar-toggle{
  display:none;border:1px solid var(--line);width:44px;height:44px;border-radius:12px;
  background:#fff;box-shadow:0 8px 22px rgba(24,50,82,.08);color:#16324f;font-size:19px
}

/* cards dashboard */
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.stat{padding:20px;position:relative;overflow:hidden}
.stat:after{
  content:"";position:absolute;width:96px;height:96px;border-radius:50%;
  background:rgba(10,115,217,.07);right:-30px;top:-30px
}
.stat strong{display:block;font-size:30px;margin-top:5px;letter-spacing:-.4px}

/* formulários */
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.field{display:flex;flex-direction:column;gap:8px}
.field.full{grid-column:1/-1}
.field label{
  font-size:13px;font-weight:850;color:#43556d;letter-spacing:.1px
}
.field input:not([type=checkbox]):not([type=radio]):not([type=color]),
.field textarea,
.field select{
  width:100%;min-height:46px;padding:12px 14px;border:1px solid #d5dee9;
  border-radius:12px;background:#fff;color:var(--text);outline:none;
  box-shadow:0 1px 0 rgba(10,30,50,.02);transition:.18s ease
}
.field textarea{min-height:130px;resize:vertical;line-height:1.55}
.field select{
  appearance:none;
  background-image:
    linear-gradient(45deg,transparent 50%,#718096 50%),
    linear-gradient(135deg,#718096 50%,transparent 50%);
  background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px;
  background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:40px
}
.field input:focus,.field textarea:focus,.field select:focus{
  border-color:var(--primary);box-shadow:0 0 0 4px rgba(10,115,217,.10)
}
.field input[type=file]{
  padding:10px;background:#f9fbfd;border:1px dashed #c8d5e3;border-radius:12px;cursor:pointer
}
.field input[type=checkbox],.field input[type=radio]{
  width:18px;height:18px;accent-color:var(--primary);vertical-align:middle
}
.password-wrap{position:relative}
.password-wrap input{padding-right:48px!important}
.eye{
  position:absolute;right:9px;top:50%;transform:translateY(-50%);
  width:36px;height:36px;border:0;border-radius:9px;background:#eef4fa;color:#315b83;
  cursor:pointer;display:grid;place-items:center
}

/* cores */
.color-control{gap:10px}
.color-picker-wrap{
  display:flex;align-items:center;gap:12px;padding:9px 11px;
  border:1px solid var(--line);border-radius:13px;background:#fff
}
.color-picker-wrap input[type=color]{
  width:58px;height:42px;padding:2px;border:0;border-radius:9px;background:transparent;cursor:pointer
}
.color-code{font-weight:900;letter-spacing:.5px;color:#31465d}
.color-presets{display:flex;gap:9px;flex-wrap:wrap}
.color-swatch{
  width:32px;height:32px;border-radius:9px;border:3px solid #fff;
  box-shadow:0 0 0 1px #d7e0ea;cursor:pointer;transition:.16s
}
.color-swatch:hover{transform:scale(1.08)}

/* tabelas */
.table-wrap{
  overflow:auto;background:#fff;border:1px solid var(--line);
  border-radius:17px;box-shadow:0 10px 30px rgba(25,50,84,.05)
}
.table{width:100%;border-collapse:collapse;min-width:700px}
.table th,.table td{padding:15px;border-bottom:1px solid var(--line);text-align:left}
.table th{
  font-size:11px;text-transform:uppercase;letter-spacing:.55px;color:#708097;background:#f8fafc
}
.table tr:hover td{background:#fbfdff}

/* feedback e imagens */
.flash{padding:13px 15px;border-radius:12px;margin-bottom:16px;border:1px solid transparent}
.flash.success{background:#eaf8ef;color:#176b36;border-color:#cdebd8}
.flash.error{background:#ffeded;color:#9c1b1b;border-color:#ffd3d3}
.image-preview{
  width:100%;max-width:340px;height:170px;border-radius:14px;
  border:1px solid var(--line);object-fit:cover;background:#f0f4f8
}
.icon-preview{
  width:56px;height:56px;border-radius:14px;display:grid;place-items:center;
  background:#eaf4ff;color:var(--primary);font-size:23px;flex:0 0 auto
}
.empty-state{text-align:center;padding:34px;color:var(--muted)}
.empty-state i{font-size:36px;color:var(--primary);margin-bottom:10px}
.row-actions{display:flex;gap:8px;flex-wrap:wrap}
[data-search-item].is-hidden{display:none!important}

/* login e instalação */
.login-shell{
  min-height:100vh;display:grid;place-items:center;padding:22px;
  background:
    radial-gradient(circle at 85% 10%,rgba(10,115,217,.16),transparent 32%),
    linear-gradient(135deg,#eaf4ff,#f8fbff)
}
.login-card{width:min(460px,100%);padding:30px}
.login-card h1{margin:10px 0 8px}
.auth-logo{text-align:center;margin-bottom:12px}
.auth-logo img{max-width:190px;max-height:110px;object-fit:contain}

/* responsivo */
@media(max-width:1050px){
  .hero-grid,.footer-grid{grid-template-columns:1fr}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .admin-shell{display:block}
  .sidebar{
    position:fixed;left:-300px;top:0;width:286px;transition:left .24s ease;
    box-shadow:18px 0 55px rgba(0,0,0,.25)
  }
  .sidebar.open{left:0}
  .sidebar-toggle{display:inline-grid;place-items:center}
  .content{padding:18px}
  .toolbar{align-items:flex-start}
  .mobile-menu-btn{display:inline-grid;place-items:center}
  .topbar .wrap{flex-wrap:wrap;padding-top:11px;padding-bottom:11px}
  .nav{display:none;width:100%;padding-top:8px}
  .nav.open{display:grid;grid-template-columns:1fr 1fr}
  .nav a{background:rgba(255,255,255,.08)}
  .form-grid{grid-template-columns:1fr}
  .field.full{grid-column:auto}
}
@media(max-width:620px){
  .wrap{padding:0 14px}
  .hero{padding:42px 0}
  .hero h1{font-size:34px}
  .hero p{font-size:16px}
  .grid,.stats{grid-template-columns:1fr}
  .section{padding:42px 0}
  .section-heading h2{font-size:28px}
  .section-icon{width:50px;height:50px}
  .section-media img{height:240px}
  .section-fallback{height:145px;font-size:46px}
  .content{padding:14px}
  .toolbar{flex-wrap:wrap}
  .card{padding:18px}
  .nav.open{grid-template-columns:1fr}
  .brand span{max-width:210px}
  .sidebar-search{margin-bottom:14px}
}


/* V8 — construtor de seções e painel refinado */
.panel-page-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
  margin:0 0 22px;padding:0 2px
}
.panel-page-head h2{font-size:30px;letter-spacing:-.5px;margin:7px 0 5px}
.panel-page-head p{max-width:760px;margin:0;line-height:1.55}
.page-kicker{
  display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;
  background:#e9f4ff;color:#0b67b9;font-size:12px;font-weight:900
}
.create-section-card{
  margin-bottom:22px;border:1px solid #d9e8f7;
  background:linear-gradient(180deg,#fff,#fbfdff)
}
.card-head-modern{display:flex;align-items:center;gap:13px;margin-bottom:20px}
.card-head-modern h3{margin:0 0 3px;font-size:21px}.card-head-modern p{margin:0}
.icon-bubble{
  width:48px;height:48px;display:grid;place-items:center;border-radius:14px;
  color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary2));
  box-shadow:0 8px 18px rgba(10,115,217,.18)
}
.section-admin-list{display:grid;gap:18px}
.section-admin-card{padding:0;overflow:hidden}
.section-admin-card:hover{transform:none}
.section-admin-top{
  display:flex;align-items:center;justify-content:space-between;gap:15px;
  padding:18px 20px;background:linear-gradient(180deg,#fbfdff,#f7fafe);
  border-bottom:1px solid var(--line)
}
.section-admin-title{display:flex;align-items:center;gap:12px;min-width:0}
.section-admin-title h3{margin:0;font-size:19px}
.section-slug{display:block;margin-top:3px;font-size:12px;color:#8290a3;font-weight:700}
.section-admin-card>.form-grid{padding:20px}
.section-admin-card>.form-footer{padding:0 20px 20px}
.status-pill{
  display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;
  font-size:12px;font-weight:850;white-space:nowrap
}
.status-pill.on{background:#eaf8ef;color:#14753d}
.status-pill.off{background:#f1f3f6;color:#687386}
.icon-input-row{display:flex;align-items:center;gap:10px}
.icon-input-row input{flex:1}
.form-footer{
  display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:18px
}
.switch-line{padding-top:2px}
.switch-control{display:flex!important;align-items:center;gap:10px!important;cursor:pointer}
.switch-control input{position:absolute;opacity:0;pointer-events:none}
.switch-slider{
  width:44px;height:24px;border-radius:999px;background:#cad4df;position:relative;transition:.2s;flex:0 0 auto
}
.switch-slider:before{
  content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;
  background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.18);transition:.2s
}
.switch-control input:checked + .switch-slider{background:var(--primary)}
.switch-control input:checked + .switch-slider:before{transform:translateX(20px)}
.blank-preview{display:none}
.content>.card:not(.stat){
  border-color:#dde6f0;
}
.content h2{letter-spacing:-.35px}
.content .field input:not([type=checkbox]):not([type=radio]):not([type=color]),
.content .field textarea,.content .field select{
  background:#fff;border:1px solid #ccd8e5;
  box-shadow:0 2px 6px rgba(20,45,75,.03)
}
.content .field input:not([type=checkbox]):not([type=radio]):not([type=color]):hover,
.content .field textarea:hover,.content .field select:hover{border-color:#aebfd0}
.content .field input:focus,.content .field textarea:focus,.content .field select:focus{
  border-color:var(--primary);box-shadow:0 0 0 4px rgba(10,115,217,.10),0 4px 12px rgba(10,115,217,.06)
}
@media(max-width:700px){
 .panel-page-head{align-items:stretch;flex-direction:column}
 .panel-page-head .btn{width:100%}
 .section-admin-top{align-items:flex-start}
 .section-admin-title{align-items:flex-start}
 .status-pill{font-size:0;padding:8px}.status-pill i{font-size:13px}
 .form-footer .btn{flex:1 1 100%}
}


/* V9 — faixas, cores quadradas e painel premium */
:root{
  --panel-navy:#0b2742;
  --panel-navy-2:#113b62;
  --panel-soft:#f7f9fc;
}
.menu-under-strip{
  width:100%;height:14px;overflow:hidden;
  box-shadow:0 3px 12px rgba(20,45,75,.10)
}
.menu-under-strip.media{height:42px;background:#fff}
.menu-under-strip.media img{width:100%;height:100%;display:block;object-fit:cover}
.section-divider{height:12px;overflow:hidden;background:var(--primary)}
.section-divider.media{height:54px;background:#fff}
.section-divider.media img{width:100%;height:100%;display:block;object-fit:cover}

.visual-box,.divider-editor{
  padding:18px;border:1px solid #d8e4ef;border-radius:16px;
  background:linear-gradient(180deg,#fbfdff,#f5f9fd)
}
.visual-box-title{display:flex;align-items:center;gap:11px;margin-bottom:15px}
.visual-box-title>i{
  width:38px;height:38px;display:grid;place-items:center;border-radius:11px;
  background:#e8f3ff;color:var(--primary);font-size:16px
}
.visual-box-title b{display:block;color:#223b55;font-size:15px}
.visual-box-title small{display:block;color:var(--muted);margin-top:2px}
.compact-grid{gap:14px!important}

.color-square-row{
  display:flex;align-items:center;gap:12px;padding:8px 10px;
  border:1px solid #d7e1eb;border-radius:12px;background:#fff
}
.color-square-input{
  width:52px!important;height:52px!important;min-height:52px!important;
  padding:0!important;border:2px solid #fff!important;border-radius:8px!important;
  outline:1px solid #cbd7e3;background:transparent!important;cursor:pointer
}
.color-square-input::-webkit-color-swatch-wrapper{padding:0}
.color-square-input::-webkit-color-swatch{border:0;border-radius:6px}
.color-square-input::-moz-color-swatch{border:0;border-radius:6px}
.square-presets{gap:10px!important;margin-top:5px}
.square-presets .color-swatch{
  width:38px;height:38px;border-radius:7px;
  border:3px solid #fff;box-shadow:0 0 0 1px #cad5e1,0 4px 9px rgba(22,52,82,.08)
}
.strip-preview{
  margin-top:10px;border:1px solid #d8e2ec;border-radius:12px;overflow:hidden;
  background:#eef3f8;height:72px
}
.strip-preview img{width:100%;height:100%;display:block;object-fit:cover}

/* menu painel */
.sidebar{
  padding:18px 14px!important;
  background:
   radial-gradient(circle at 18% 0%,rgba(24,120,217,.20),transparent 28%),
   linear-gradient(180deg,var(--panel-navy),var(--panel-navy-2))!important
}
.sidebar .brand{
  background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.075)!important;
  border-radius:15px;padding:9px 10px!important;margin-bottom:14px!important
}
.sidebar .brand img{background:#fff;box-shadow:0 5px 14px rgba(0,0,0,.15)}
.sidebar-search{
  display:flex!important;align-items:center!important;position:relative!important;
  margin:0 2px 16px!important;padding:0!important
}
.sidebar-search i{
  position:absolute!important;left:13px!important;top:50%!important;transform:translateY(-50%)!important;
  z-index:2;color:#a9c1d7!important
}
.sidebar-search input{
  appearance:none!important;-webkit-appearance:none!important;
  display:block!important;width:100%!important;height:46px!important;
  padding:0 13px 0 39px!important;margin:0!important;
  border:1px solid rgba(255,255,255,.14)!important;border-radius:12px!important;
  background:rgba(255,255,255,.075)!important;color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
  outline:none!important;font-size:14px!important
}
.sidebar-search input::placeholder{color:#aebfd0!important}
.sidebar-search input:focus{
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(95,180,255,.55)!important;
  box-shadow:0 0 0 3px rgba(34,143,240,.15)!important
}
.sidebar a{
  min-height:44px;border:1px solid transparent;
  font-size:14px!important;letter-spacing:.05px
}
.sidebar a:hover,.sidebar a.active{
  border-color:rgba(255,255,255,.08)!important;
  background:linear-gradient(90deg,rgba(22,133,229,.30),rgba(255,255,255,.08))!important
}

/* formulários premium globais */
.content .card{
  border-radius:18px!important;
  box-shadow:0 10px 28px rgba(22,52,82,.055)!important
}
.field label{margin-bottom:1px!important}
.field input:not([type=checkbox]):not([type=radio]):not([type=color]),
.field textarea,.field select{
  border-radius:11px!important;
  border:1px solid #cfdbe7!important;
  background:linear-gradient(180deg,#fff,#fcfdff)!important;
  min-height:47px!important;
  padding:12px 14px!important
}
.field input::placeholder,.field textarea::placeholder{color:#9aa9b8}
.field input[type=file]{
  min-height:48px!important;padding:9px 10px!important;
  background:#f8fbfe!important;border:1px dashed #bfcddd!important
}
.field input[type=file]::file-selector-button{
  border:0;border-radius:9px;background:#e8f2fc;color:#175d9a;
  font-weight:800;padding:9px 12px;margin-right:10px;cursor:pointer
}
.field textarea{line-height:1.6!important}
.btn{border-radius:11px!important}
.table-wrap{border-radius:16px!important}
.flash{box-shadow:0 8px 20px rgba(20,45,75,.05)}

@media(max-width:900px){
 .menu-under-strip.media{height:34px}
 .section-divider.media{height:42px}
 .sidebar{width:286px!important}
}
@media(max-width:620px){
 .menu-under-strip{height:10px}
 .menu-under-strip.media{height:28px}
 .section-divider{height:9px}
 .section-divider.media{height:34px}
 .visual-box,.divider-editor{padding:14px}
 .color-square-input{width:46px!important;height:46px!important;min-height:46px!important}
 .square-presets .color-swatch{width:34px;height:34px}
}


/* V10 — visual alinhado ao mockup */
.site-topbar{
  background:#fff!important;color:#0e2f53!important;
  box-shadow:0 6px 22px rgba(20,45,75,.10)!important;
  border-bottom:1px solid #e8eef5
}
.site-topbar .wrap{min-height:82px}
.site-topbar .brand img{
  width:62px;height:62px;border-radius:16px;border:1px solid #e2eaf3;
  box-shadow:0 6px 16px rgba(20,45,75,.08)
}
.site-topbar .brand span{color:#0d3158;font-size:18px}
.site-nav{gap:4px;justify-content:flex-end}
.site-nav a{
  color:#173c63!important;background:transparent!important;
  padding:10px 11px!important;border-radius:10px!important;
  font-size:13px!important;font-weight:800!important
}
.site-nav a i{color:var(--primary)}
.site-nav a:hover,.site-nav a.active{background:#edf6ff!important;color:var(--primary)!important}
.site-topbar .mobile-menu-btn{
  background:#eef5fb!important;color:#163d63!important;border:1px solid #d8e5f0
}
.menu-under-strip.media img,.section-divider.media img{object-position:center}
.hero{
  background:linear-gradient(100deg,rgba(8,44,80,.88),rgba(10,115,217,.58)),
             radial-gradient(circle at 80% 10%,rgba(25,210,130,.25),transparent 32%),
             #124e86!important;
  color:#fff;padding:62px 0!important
}
.hero h1{color:#fff}
.hero p{color:#e7f3ff!important}
.hero .badge{background:rgba(255,255,255,.13)!important;color:#fff!important;border:1px solid rgba(255,255,255,.16)}
.hero-card{background:rgba(255,255,255,.96)}
.section-heading{margin-bottom:20px}
.section-heading>div:last-child .muted{font-size:13px}
.section-fallback{display:none}
.section-media{margin-bottom:22px}
.page-hero-mini{
  padding:42px 0 24px;background:linear-gradient(180deg,#eef7ff,#f7faff)
}
.page-hero-mini .wrap{display:flex;align-items:center;gap:16px}
.page-hero-mini h1{font-size:40px;line-height:1.05;margin:8px 0 0;letter-spacing:-1px}
.page-title-icon{
  width:64px;height:64px;border-radius:18px;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff;font-size:27px;
  box-shadow:0 12px 24px rgba(10,115,217,.20)
}
.standalone-page{min-height:55vh}
.page-media{max-height:460px}
.page-media img{max-height:460px}
.page-prose{font-size:16px}
.isolated-content-frame{
  width:100%;height:420px;border:0;display:block;background:#fff;
  border-radius:18px;box-shadow:0 10px 30px rgba(20,45,75,.06)
}

/* painel estilo dashboard */
.admin-shell{grid-template-columns:286px minmax(0,1fr)!important}
.sidebar{
  background:linear-gradient(180deg,#0b2d4f 0%,#0a365f 52%,#092b49 100%)!important;
  box-shadow:12px 0 36px rgba(17,43,69,.08)
}
.sidebar .brand{
  background:transparent!important;border:0!important;padding:8px 8px 15px!important
}
.sidebar .brand img{width:50px!important;height:50px!important;border-radius:14px!important}
.sidebar .brand span{font-size:18px!important}
.sidebar-search{margin:0 3px 18px!important}
.sidebar-search input{
  height:42px!important;border-radius:9px!important;background:rgba(255,255,255,.09)!important
}
.sidebar a:before{display:none!important}
.sidebar a{
  gap:12px!important;min-height:43px!important;border-radius:9px!important;
  padding:10px 12px!important;color:#d8e7f4!important
}
.sidebar a>i{width:18px;text-align:center;color:#bad7ee}
.sidebar a.active{
  background:linear-gradient(90deg,#0c7df0,#0a66ce)!important;
  color:#fff!important;box-shadow:0 8px 18px rgba(4,96,190,.24)
}
.sidebar a.active>i{color:#fff}
.sidebar-special{margin-top:12px!important;border-top:1px solid rgba(255,255,255,.08)!important}
.content{
  background:#f4f7fb!important;padding:28px 32px!important
}
.toolbar{
  background:#fff;border:1px solid #e4ebf3;border-radius:16px;padding:17px 18px;
  box-shadow:0 8px 24px rgba(22,52,82,.05)!important;margin-bottom:22px!important
}
.toolbar h1{font-size:27px!important}
.stats{gap:14px!important}
.stats .stat{
  border:0!important;color:#fff!important;min-height:118px!important;
  box-shadow:0 12px 28px rgba(22,52,82,.10)!important
}
.stats .stat:nth-child(1){background:linear-gradient(135deg,#1687f8,#0769d4)!important}
.stats .stat:nth-child(2){background:linear-gradient(135deg,#1ec85b,#0e9b3e)!important}
.stats .stat:nth-child(3){background:linear-gradient(135deg,#ff8a18,#e86500)!important}
.stats .stat:nth-child(4){background:linear-gradient(135deg,#9a42f5,#7422d1)!important}
.stats .stat .muted{color:rgba(255,255,255,.84)!important}
.stats .stat strong{color:#fff}
.content>.section{padding:26px 0!important}
.content .card{background:#fff!important;border:1px solid #e0e8f1!important}
.panel-page-head{
  background:#fff;border:1px solid #e2e9f1;border-radius:16px;
  padding:20px 21px!important;box-shadow:0 8px 24px rgba(22,52,82,.05)
}
.page-kicker{background:#eaf4ff!important}
.section-admin-card{
  border-radius:16px!important;overflow:hidden!important;
  box-shadow:0 8px 24px rgba(22,52,82,.055)!important
}
.section-admin-top{
  background:#f8fbfe!important;padding:16px 18px!important
}
.section-admin-card>.form-grid{padding:18px!important}
.mode-cards{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px
}
.mode-cards label{cursor:pointer}
.mode-cards input{position:absolute;opacity:0}
.mode-cards span{
  display:flex;flex-direction:column;gap:3px;min-height:74px;padding:12px 13px;
  border:1px solid #d6e1ec;border-radius:12px;background:#fff;transition:.18s
}
.mode-cards span i{color:var(--primary);font-size:18px}
.mode-cards span b{color:#29435d}
.mode-cards span small{color:#7a8a9a}
.mode-cards input:checked+span{
  border-color:var(--primary);background:#eef7ff;box-shadow:0 0 0 3px rgba(10,115,217,.08)
}
.form-grid{gap:15px!important}
.field input:not([type=checkbox]):not([type=radio]):not([type=color]),
.field textarea,.field select{
  border:1px solid #cbd8e5!important;background:#fff!important;
  box-shadow:none!important
}
.field input:focus,.field textarea:focus,.field select:focus{
  border-color:#1687f8!important;box-shadow:0 0 0 3px rgba(22,135,248,.10)!important
}
.color-square-input{
  width:56px!important;height:56px!important;border-radius:6px!important;
  outline:1px solid #bdcad7!important
}
.square-presets .color-swatch{border-radius:6px!important;width:40px!important;height:40px!important}
.btn.primary{
  background:linear-gradient(135deg,#1687f8,#0769d4)!important;
  box-shadow:0 7px 16px rgba(7,105,212,.18)!important
}
.table-wrap{background:#fff!important}
.auth-logo img{max-width:220px!important;max-height:130px!important}

@media(max-width:900px){
 .site-topbar .wrap{min-height:70px}
 .site-topbar .brand img{width:50px;height:50px}
 .site-nav{background:#fff;padding:10px!important;border-top:1px solid #e5edf4}
 .site-nav a{color:#173c63!important;background:#f7faff!important}
 .hero{padding:44px 0!important}
 .content{padding:16px!important}
 .toolbar{padding:13px!important}
}
@media(max-width:620px){
 .site-topbar .brand span{font-size:16px;max-width:190px}
 .page-hero-mini h1{font-size:30px}
 .page-title-icon{width:54px;height:54px}
 .mode-cards{grid-template-columns:1fr}
 .panel-page-head{padding:16px!important}
}

/* caixas de cor quadradas em todo o sistema */
.color-picker-wrap input[type=color],
.field input[type=color],
input[type=color][data-color-input]{
  width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important;
  padding:2px!important;border:2px solid #fff!important;border-radius:6px!important;
  outline:1px solid #bdcad7!important;background:#fff!important;cursor:pointer!important
}
.color-picker-wrap input[type=color]::-webkit-color-swatch-wrapper,
.field input[type=color]::-webkit-color-swatch-wrapper{padding:0!important}
.color-picker-wrap input[type=color]::-webkit-color-swatch,
.field input[type=color]::-webkit-color-swatch{border:0!important;border-radius:4px!important}
.color-presets .color-swatch{
  width:40px!important;height:40px!important;border-radius:6px!important;
  border:3px solid #fff!important;box-shadow:0 0 0 1px #bdcad7!important
}

/* V11 — painel e site moderno inspirado no layout de referência */
body.public-modern{background:#f5f8fc;color:#10233e}
.site-header-modern{position:sticky;top:0;z-index:120;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);border-bottom:1px solid #e9eef5;box-shadow:0 8px 28px rgba(16,45,78,.08)}
.site-header-inner{min-height:96px;display:flex;align-items:center;gap:22px}
.site-logo{display:flex;align-items:center;gap:12px;min-width:190px}.site-logo img{width:78px;height:72px;object-fit:contain}.site-logo span{display:flex;flex-direction:column;line-height:1.08}.site-logo b{font-size:24px;color:#0b4f95}.site-logo small{font-size:9px;color:#53708e;max-width:160px;margin-top:5px}
.site-nav.modern{margin-left:auto;display:flex;flex:1;justify-content:center;gap:2px}.site-nav.modern a{color:#17375c;font-size:13px;font-weight:800;padding:12px 10px;border-radius:12px}.site-nav.modern a i{color:#0d5da9}.site-nav.modern a:hover{background:#eef6ff;color:var(--primary)}
.member-button{background:linear-gradient(135deg,#12b76a,#078b4e);color:#fff;padding:13px 18px;border-radius:999px;font-size:13px;font-weight:900;white-space:nowrap;box-shadow:0 10px 24px rgba(5,140,77,.18)}
.mobile-menu-btn.modern{background:#eef5fc;color:#17375c}
.feature-strip{position:relative;overflow:hidden;display:flex;align-items:center;background:linear-gradient(100deg,var(--primary2),#0aa7d6,#14a55c);border-top:1px solid rgba(255,255,255,.4);border-bottom:3px solid rgba(255,255,255,.75)}
.feature-strip .strip-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.feature-strip .strip-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,64,144,.82),rgba(0,176,210,.36),rgba(0,122,76,.52))}.strip-content{position:relative;z-index:2;display:flex;align-items:center;gap:14px;width:100%}.strip-content strong{padding:8px 12px;border-radius:10px;font-size:16px}.strip-content>a{margin-left:auto;border:1px solid rgba(255,255,255,.55);color:#fff;border-radius:999px;padding:10px 18px;font-size:12px;font-weight:900;background:rgba(0,0,0,.18)}.strip-icon{width:42px;height:42px;border-radius:10px;background:rgba(255,255,255,.14);display:grid;place-items:center;color:#fff;font-size:18px}.strip-content.centered{justify-content:center;text-align:center}.strip-content.centered strong{font-size:16px}
.hero-modern{position:relative;min-height:390px;padding:0;background-image:var(--hero-image),linear-gradient(135deg,#0c436f,#0b6a85);background-size:cover;background-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,38,73,.88) 0%,rgba(7,57,93,.70) 43%,rgba(5,44,77,.12) 78%)}.hero-modern-inner{position:relative;z-index:2;min-height:390px;display:flex;align-items:center;justify-content:space-between;gap:40px}.hero-copy{max-width:620px;color:#fff}.hero-copy h1{font-size:clamp(38px,4.2vw,62px);line-height:1.04;margin:12px 0 14px;color:#fff}.hero-copy p{font-size:20px;line-height:1.4;color:#eef6ff;max-width:590px;margin:0 0 24px}.hero-eyebrow{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.8px;background:rgba(255,255,255,.12);padding:8px 11px;border-radius:999px}.hero-cta{background:linear-gradient(135deg,#0dd052,#00a538)!important;border-radius:999px!important;color:#fff!important;padding:13px 20px!important}.hero-logo-card{width:330px;height:260px;background:rgba(255,255,255,.92);border-radius:30px;display:grid;place-items:center;padding:34px;box-shadow:0 24px 60px rgba(0,0,0,.2)}.hero-logo-card img{max-height:190px;object-fit:contain}
.quick-nav-shell{position:relative;z-index:10;margin-top:-24px}.quick-nav{background:#fff;border:1px solid #e2eaf4;border-radius:24px;box-shadow:0 16px 40px rgba(17,52,87,.13);padding:14px;display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.quick-item{display:flex;align-items:center;gap:13px;padding:10px 12px;border-radius:16px;min-width:0}.quick-item:hover{background:#f6f9fd}.quick-item>span{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:21px;flex:0 0 auto}.quick-item.q1>span{background:linear-gradient(135deg,#005de8,#2f7cff)}.quick-item.q2>span{background:linear-gradient(135deg,#00a850,#18c86c)}.quick-item.q3>span{background:linear-gradient(135deg,#ff7a00,#ff9f1c)}.quick-item.q4>span{background:linear-gradient(135deg,#6e18e8,#a426ff)}.quick-item.q5>span{background:linear-gradient(135deg,#f52f4d,#ff5c6e)}.quick-item div{min-width:0;display:flex;flex-direction:column}.quick-item b{font-size:14px;color:#163354;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-item small{font-size:11px;color:#71839a;margin-top:3px}
.modern-section{padding:72px 0}.modern-section:nth-of-type(even){background:#fff}.modern-heading{margin-bottom:28px}.section-kicker{font-size:11px;letter-spacing:1.4px;color:var(--primary);font-weight:900}.modern-prose{font-size:16px;line-height:1.9;border-radius:22px}.director-grid .director,.contact-grid .card{border-radius:20px}.modern-footer{background:linear-gradient(135deg,#0b2741,#0d3d62);padding:48px 0}.footer-logo b,.footer-logo small{color:#fff}.footer-logo img{background:#fff;border-radius:16px;padding:4px}

/* Painel */
.admin-shell{grid-template-columns:250px minmax(0,1fr)}.sidebar{background:linear-gradient(180deg,#0b2742,#0b3558 58%,#09253e);padding:18px 12px}.sidebar .brand img{width:42px;height:42px;background:#fff;border-radius:12px;padding:3px}.sidebar .brand span{font-size:19px}.sidebar a{border-radius:10px;padding:11px 12px;font-size:13px}.sidebar a:before{display:none}.sidebar a i{width:18px;text-align:center}.sidebar a.active{background:linear-gradient(135deg,#0b74ef,#0b63d5);box-shadow:0 8px 22px rgba(0,91,215,.28)}.content{background:linear-gradient(180deg,#f7f9fc,#eef4f9);padding:24px 28px}.toolbar{background:#fff;border:1px solid #e5ebf2;border-radius:18px;padding:14px 18px;box-shadow:0 8px 26px rgba(25,50,84,.05)}.toolbar h1{font-size:22px}.stats .stat{border:0;color:#fff;min-height:114px;display:flex;flex-direction:column;justify-content:center}.stats .stat:nth-child(1){background:linear-gradient(135deg,#0c7cf1,#0861d6)}.stats .stat:nth-child(2){background:linear-gradient(135deg,#13b948,#079535)}.stats .stat:nth-child(3){background:linear-gradient(135deg,#ff8a00,#ec6e00)}.stats .stat:nth-child(4){background:linear-gradient(135deg,#9840f2,#7a21df)}.stats .stat .muted{color:rgba(255,255,255,.85)}.stats .stat:after{background:rgba(255,255,255,.12)}
.visual-box,.divider-editor{background:#f8fbff;border:1px solid #dce9f6;border-radius:18px;padding:18px}.visual-box-title{display:flex;gap:12px;align-items:center;margin-bottom:16px}.visual-box-title>i{width:38px;height:38px;display:grid;place-items:center;background:#e8f3ff;color:#0b6ed7;border-radius:10px}.visual-box-title small{display:block;color:#76879b;margin-top:3px}.color-square-row{display:flex;align-items:center;gap:10px}.color-square-input{width:50px!important;height:50px!important;padding:0!important;border:0!important;border-radius:8px!important;background:transparent}.color-square-input::-webkit-color-swatch-wrapper{padding:0}.color-square-input::-webkit-color-swatch{border:2px solid #fff;border-radius:8px;box-shadow:0 0 0 1px #cfdae6}.color-presets.square-presets{gap:7px}.color-presets.square-presets .color-swatch{width:28px;height:28px;border-radius:5px;border-width:2px}.range-line{display:flex;align-items:center;gap:12px}.range-line input[type=range]{flex:1;accent-color:var(--primary)}.range-line b{min-width:52px;text-align:right;color:#4f6177}.strip-preview{margin-top:10px;border:1px solid #d9e3ee;border-radius:12px;overflow:hidden;height:100px;background:#eef4fa}.strip-preview img{width:100%;height:100%;object-fit:cover}.section-admin-card{border-radius:20px}.panel-page-head h2{font-size:27px}.mode-cards label span{border-radius:14px}
@media(max-width:1120px){.member-button{display:none}.site-nav.modern a{padding:10px 7px;font-size:12px}.quick-nav{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.site-header-inner{min-height:78px;flex-wrap:wrap}.site-logo img{width:58px;height:54px}.site-logo b{font-size:19px}.site-nav.modern{display:none;width:100%;order:5;padding:8px 0 14px;grid-template-columns:1fr 1fr}.site-nav.modern.open{display:grid}.site-nav.modern a{background:#f4f8fc}.hero-modern,.hero-modern-inner{min-height:360px}.quick-nav{grid-template-columns:repeat(2,1fr)}.strip-content strong{font-size:14px}.strip-content>a{display:none}}
@media(max-width:620px){.site-header-inner{padding-top:8px;padding-bottom:8px}.site-logo small{display:none}.feature-strip{min-height:52px!important;height:auto!important;padding:8px 0}.strip-content{gap:8px}.strip-icon{width:36px;height:36px}.strip-content strong{font-size:12px;padding:6px 8px}.hero-modern,.hero-modern-inner{min-height:330px}.hero-copy h1{font-size:34px}.hero-copy p{font-size:16px}.quick-nav-shell{margin-top:-14px}.quick-nav{grid-template-columns:1fr 1fr;padding:9px;gap:6px;border-radius:18px}.quick-item{padding:8px;gap:8px}.quick-item>span{width:42px;height:42px;font-size:17px}.quick-item b{font-size:12px}.quick-item small{font-size:9px}.modern-section{padding:48px 0}.content{padding:12px}.toolbar{padding:12px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stats .stat{min-height:98px;padding:14px}.stats .stat strong{font-size:26px}.color-presets.square-presets .color-swatch{width:26px;height:26px}}

/* V12 — mobile premium + faixas fixadas ao final de cada seção */
html,body{max-width:100%;overflow-x:hidden}
.public-modern main{display:block;width:100%}
.public-modern .modern-section{position:relative;margin:0;width:100%;overflow:hidden}
.public-modern .section-feature-strip{
  position:relative;display:flex;width:100%;max-width:none;margin:0;padding:0;
  border-radius:0;clear:both;isolation:isolate;box-shadow:0 8px 24px rgba(13,50,86,.08)
}
.public-modern .modern-section + .section-feature-strip{margin-top:0!important}
.public-modern .section-feature-strip .strip-bg{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block
}
.public-modern .section-feature-strip .strip-overlay{z-index:1}
.public-modern .section-feature-strip .strip-content{z-index:2;min-height:100%;justify-content:center}
.public-modern .section-feature-strip .strip-content strong{
  max-width:min(900px,92vw);text-align:center;line-height:1.35
}

/* Menu mobile em painel lateral real */
@media(max-width:900px){
  body.public-modern.menu-open{overflow:hidden}
  body.public-modern.menu-open:before{
    content:"";position:fixed;inset:0;background:rgba(6,24,44,.52);backdrop-filter:blur(3px);
    z-index:128;animation:mobileFade .18s ease both
  }
  .site-header-modern{z-index:140}
  .site-header-inner{min-height:74px!important;flex-wrap:nowrap!important;padding-top:8px;padding-bottom:8px}
  .site-logo{min-width:0;flex:1;gap:9px}
  .site-logo img{width:54px!important;height:54px!important;border-radius:13px;background:#fff}
  .site-logo span{min-width:0}.site-logo b{font-size:18px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .site-logo small{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}
  .mobile-menu-btn.modern{
    display:grid!important;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:14px;
    border:1px solid #d7e3ef;background:linear-gradient(180deg,#fff,#edf5fc)!important;
    color:#0b5ea9!important;box-shadow:0 8px 22px rgba(20,54,86,.10);font-size:19px;z-index:142
  }
  .mobile-menu-btn.modern:active{transform:scale(.97)}
  .site-nav.modern,
  .site-nav.modern.open{
    position:fixed!important;top:0;right:0;bottom:0;width:min(86vw,360px)!important;height:100dvh;
    margin:0!important;padding:92px 14px 22px!important;background:linear-gradient(180deg,#ffffff 0%,#f5f9fd 100%)!important;
    border-left:1px solid #dfe8f1;box-shadow:-18px 0 50px rgba(10,37,65,.20);
    display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
    gap:7px!important;overflow-y:auto;z-index:139;transform:translateX(105%);transition:transform .24s cubic-bezier(.2,.8,.2,1)
  }
  .site-nav.modern.open{transform:translateX(0)}
  .site-nav.modern:before{
    content:"Menu";position:absolute;top:28px;left:18px;color:#112f50;font-weight:900;font-size:19px;
    letter-spacing:-.2px
  }
  .site-nav.modern:after{
    content:"Navegue pelo site do sindicato";position:absolute;top:53px;left:18px;color:#7a8da1;font-size:11px
  }
  .site-nav.modern a{
    width:100%;min-height:50px;padding:11px 13px!important;border-radius:14px!important;
    border:1px solid #e1e9f1;background:#fff!important;color:#183b60!important;font-size:14px!important;
    font-weight:800!important;box-shadow:0 4px 14px rgba(25,55,84,.035);display:flex!important;align-items:center!important;gap:12px!important
  }
  .site-nav.modern a i{
    width:34px;height:34px;border-radius:10px;background:#eaf4ff;display:grid;place-items:center;
    color:#0b6ed7!important;flex:0 0 34px;font-size:14px
  }
  .site-nav.modern a:hover,.site-nav.modern a:focus{background:#eef7ff!important;border-color:#cfe3f7;transform:translateX(-2px)}
  .site-nav.modern a:active{transform:scale(.99)}
  .member-button{display:none!important}
}
@keyframes mobileFade{from{opacity:0}to{opacity:1}}

@media(max-width:620px){
  .wrap{width:100%;max-width:100%;padding-left:14px;padding-right:14px}
  .site-header-modern{box-shadow:0 6px 20px rgba(16,45,78,.09)}
  .site-logo b{font-size:17px!important}.site-logo small{display:block!important;max-width:180px}
  .feature-strip{width:100%;border-radius:0!important}
  .feature-strip .strip-content{padding-left:14px;padding-right:14px}
  .section-feature-strip{min-height:44px!important;height:auto!important;padding:7px 0!important}
  .section-feature-strip .strip-content{min-height:36px!important}
  .section-feature-strip .strip-content strong{font-size:12px!important;padding:6px 9px!important}
  .modern-section{padding:42px 0!important}
  .modern-section .card,.modern-section .law,.modern-section .section-media,.isolated-content-frame{border-radius:16px!important}
  .modern-heading{gap:11px;align-items:flex-start}.modern-heading .section-icon{width:46px;height:46px;border-radius:13px;font-size:18px}
  .modern-heading h2{font-size:26px!important;line-height:1.08}.modern-heading .muted{font-size:12px!important}
  .hero-modern-inner{padding-top:30px;padding-bottom:30px}.hero-eyebrow{font-size:10px}.hero-copy h1{font-size:32px!important}
  .hero-copy p{font-size:15px!important;line-height:1.5}.hero-cta{width:100%;max-width:330px}
  .quick-nav{box-shadow:0 12px 30px rgba(17,52,87,.11)}
}

/* Garantia visual para componentes básicos: nenhum campo cru sem acabamento */
.public-modern input,.public-modern select,.public-modern textarea,
.content input,.content select,.content textarea{max-width:100%}
.public-modern button,.content button{font-family:inherit}
.public-modern table{width:100%;border-collapse:collapse;background:#fff}
.public-modern th,.public-modern td{padding:12px;border-bottom:1px solid #e4ebf2;text-align:left}
.public-modern blockquote{margin:18px 0;padding:15px 18px;border-left:4px solid var(--primary);background:#f4f8fc;border-radius:0 12px 12px 0}
.public-modern hr{border:0;border-top:1px solid #dfe7ef;margin:24px 0}
.public-modern code{background:#edf3f8;border:1px solid #dce5ed;border-radius:6px;padding:2px 6px}

/* V26 — Editor visual estilo Word para conteúdo das seções */
.rich-editor-shell{border:1px solid #d8e2ec;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(31,55,79,.06)}
.rich-editor-toolbar{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:9px 10px;background:linear-gradient(180deg,#f9fbfd,#f2f6fa);border-bottom:1px solid #dde6ef;position:sticky;top:0;z-index:2}
.rich-editor-toolbar button,.rich-editor-toolbar select{height:34px;border:1px solid #d7e1ea;background:#fff;border-radius:8px;color:#274159;font-size:13px;box-shadow:none!important}
.rich-editor-toolbar button{min-width:34px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700}
.rich-editor-toolbar button:hover{background:#eaf3fb;border-color:#b8cee0;color:var(--primary,#0a73d9)}
.rich-editor-toolbar select{padding:0 26px 0 9px;max-width:150px}
.rich-tool-sep{width:1px;height:24px;background:#d9e3ec;margin:0 2px}
.rich-editor-area{min-height:240px;padding:20px 22px;outline:none;line-height:1.65;color:#24384a;font-size:16px;background:#fff;overflow:auto}
.rich-editor-area:empty:before{content:attr(data-placeholder);color:#98a8b7;pointer-events:none}
.rich-editor-area p{margin:0 0 14px}.rich-editor-area h2,.rich-editor-area h3,.rich-editor-area h4{margin:20px 0 10px;line-height:1.2}.rich-editor-area blockquote{border-left:4px solid var(--primary,#0a73d9);padding:10px 15px;margin:16px 0;background:#f4f8fb;border-radius:0 10px 10px 0}.rich-editor-area ul,.rich-editor-area ol{padding-left:28px}.rich-editor-area a{color:var(--primary,#0a73d9);text-decoration:underline}
.rich-editor-source{display:none;width:100%;min-height:240px;border:0!important;border-radius:0!important;padding:18px!important;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;background:#101923!important;color:#e7f1fb!important}
.rich-editor-shell.is-source-mode .rich-editor-toolbar{opacity:.5;pointer-events:none}.rich-editor-shell.is-source-mode .rich-editor-source{display:block}
.rich-public-content{font-size:16px;line-height:1.72}.rich-public-content p{margin:0 0 1em}.rich-public-content h2,.rich-public-content h3,.rich-public-content h4{line-height:1.2;margin:1.2em 0 .55em}.rich-public-content ul,.rich-public-content ol{padding-left:1.6em;margin:.8em 0}.rich-public-content blockquote{margin:1em 0;padding:12px 18px;border-left:4px solid var(--primary);background:rgba(240,246,251,.9);border-radius:0 12px 12px 0}.rich-public-content a{color:var(--primary);text-decoration:underline;overflow-wrap:anywhere}
@media(max-width:720px){.rich-editor-toolbar{gap:4px;padding:7px}.rich-editor-toolbar button{min-width:32px;height:32px;padding:0 7px}.rich-editor-toolbar select{height:32px;max-width:112px;font-size:12px}.rich-editor-area{min-height:210px;padding:15px;font-size:15px}.rich-tool-sep{display:none}}


/* V27 — Construtor visual completo de páginas */
.builder-page-list{display:grid;gap:18px}.page-builder-card{overflow:visible}.compact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.visual-builder{margin-top:18px;padding:18px;border:1px solid #dce6ef;border-radius:18px;background:#f8fbfe}.builder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.builder-head>div{display:grid;gap:3px}.builder-head small{color:#71869b}.builder-block-list{display:grid;gap:9px;min-height:20px}.builder-block{display:flex;align-items:center;gap:12px;padding:11px 12px;background:#fff;border:1px solid #dce6ef;border-radius:13px;box-shadow:0 4px 14px rgba(29,54,78,.04)}.builder-block.dragging{opacity:.45;border-style:dashed}.drag-handle{cursor:grab;color:#8ba0b4;font-size:18px}.block-type-icon{width:38px;height:38px;border-radius:10px;background:#eaf4ff;color:var(--primary);display:grid;place-items:center;flex:0 0 38px}.block-summary{display:grid;flex:1}.block-summary small{font-size:11px;color:#8192a4;text-transform:uppercase}.icon-btn{width:34px;height:34px;border:1px solid #dce5ed;background:#fff;border-radius:9px;cursor:pointer}.icon-btn.danger{color:#b42318}.builder-add-panel{margin-top:16px;padding:16px;border:1px dashed #b9cddd;border-radius:15px;background:#fff}.block-palette{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:16px}.block-palette button{min-height:62px;padding:8px;border:1px solid #dce5ed;border-radius:12px;background:#f8fbfd;color:#29435b;font-weight:750;cursor:pointer;display:grid;place-items:center;gap:4px}.block-palette button:hover{background:#eaf5ff;border-color:#a8c9e6;color:var(--primary)}.block-palette i{font-size:18px}.reorder-form{margin-top:11px}.rich-editor-shell.mini .rich-editor-area{min-height:150px}.public-builder{display:grid;gap:28px}.public-block{width:100%}.public-block>h2{font-size:clamp(24px,3vw,36px);margin:0 0 14px}.builder-image,.builder-video{display:block;max-width:100%;width:100%;border-radius:18px;box-shadow:0 12px 34px rgba(19,44,69,.10)}.builder-video{background:#000;max-height:680px}.builder-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.builder-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;display:block}.builder-pdf iframe{width:100%;height:min(75vh,760px);border:1px solid #dce5ed;border-radius:16px;background:#fff}.builder-pdf .btn{margin-top:10px}.builder-cta{display:inline-flex}.page-slider{position:relative;overflow:hidden;border-radius:20px;background:#eef3f8}.page-slider-track{position:relative;min-height:280px}.page-slide{display:none}.page-slide.active{display:block;animation:builderSlideIn .35s ease}.page-slide img{width:100%;height:clamp(280px,42vw,560px);object-fit:cover;display:block}.slider-prev,.slider-next{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.9);box-shadow:0 6px 18px rgba(0,0,0,.15);z-index:3;cursor:pointer}.slider-prev{left:14px}.slider-next{right:14px}.slider-dots{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);display:flex;gap:7px;z-index:3}.slider-dots button{width:9px;height:9px;border:0;border-radius:50%;background:rgba(255,255,255,.55);padding:0}.slider-dots button.active{width:26px;border-radius:10px;background:#fff}.nav-parent{position:relative;display:flex;align-items:stretch}.nav-parent>a{height:100%}.submenu-chevron{font-size:10px;margin-left:4px}.submenu{display:none;position:absolute;top:calc(100% + 4px);left:0;min-width:230px;padding:7px;background:#fff;border:1px solid #dce6ef;border-radius:13px;box-shadow:0 16px 36px rgba(14,39,64,.16);z-index:150}.nav-parent:hover>.submenu,.nav-parent:focus-within>.submenu{display:grid}.submenu a{white-space:nowrap!important;border-radius:9px!important}
@keyframes builderSlideIn{from{opacity:.25;transform:scale(1.015)}to{opacity:1;transform:none}}
@media(max-width:900px){.compact-grid{grid-template-columns:1fr 1fr}.block-palette{grid-template-columns:repeat(3,1fr)}.builder-gallery{grid-template-columns:repeat(2,1fr)}.site-nav.modern .nav-parent{display:block;width:100%}.site-nav.modern .submenu{display:grid!important;position:static;box-shadow:none;border:0;border-left:2px solid #dce7f0;border-radius:0;margin:4px 0 6px 18px;padding:4px 0 4px 8px;background:transparent}.site-nav.modern .submenu a{min-height:42px!important;font-size:13px!important}.submenu-chevron{margin-left:auto}}
@media(max-width:620px){.compact-grid{grid-template-columns:1fr}.block-palette{grid-template-columns:repeat(2,1fr)}.visual-builder{padding:12px}.builder-head{align-items:flex-start;flex-direction:column}.builder-head .btn{width:100%}.builder-block{gap:8px;padding:9px}.builder-gallery{grid-template-columns:1fr 1fr;gap:7px}.builder-gallery img{border-radius:10px}.page-slide img{height:280px}.builder-pdf iframe{height:62vh}}
/* V34 - PWA por sindicato */
.pwa-settings-hero{display:flex;gap:18px;align-items:center;padding:22px;border-radius:22px;background:linear-gradient(135deg,#eef6ff,#fff);border:1px solid #dbe9f7;margin-bottom:18px}.pwa-settings-hero>span{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:var(--primary,#0a73d9);color:#fff;font-size:26px;box-shadow:0 12px 26px color-mix(in srgb,var(--primary,#0a73d9) 24%,transparent)}.pwa-settings-hero h2{margin:0 0 4px}.pwa-settings-hero p{margin:0;color:#64748b}.pwa-preview{display:flex;gap:16px;align-items:center;padding:18px;border:1px solid #e2e8f0;border-radius:18px;background:#fff}.pwa-preview img{width:78px;height:78px;object-fit:contain;border-radius:20px;background:#f8fafc;border:1px solid #e2e8f0}.pwa-preview strong{display:block;font-size:18px}.pwa-preview small{color:#64748b}.pwa-install-btn{position:fixed;right:18px;bottom:18px;z-index:900;display:none;align-items:center;gap:10px;border:0;border-radius:999px;padding:13px 18px;background:var(--primary,#0a73d9);color:#fff;font-weight:800;box-shadow:0 14px 32px #0003;cursor:pointer}.pwa-install-btn.show{display:flex;animation:pwaPop .35s ease}.pwa-install-btn i{font-size:18px}@keyframes pwaPop{from{transform:translateY(18px);opacity:0}to{transform:none;opacity:1}}@media(max-width:720px){.pwa-settings-hero{align-items:flex-start}.pwa-preview{align-items:flex-start}.pwa-install-btn{left:14px;right:14px;bottom:14px;justify-content:center;border-radius:16px}}
