
/* CertFlow UI 2026 — camada global de acabamento e responsividade */
:root{
  --cf-blue:#2563eb;--cf-blue-dark:#1d4ed8;--cf-ink:#0b1220;--cf-muted:#64748b;
  --cf-line:#e2e8f0;--cf-soft:#f6f8fc;--cf-card:#fff;--cf-success:#16a34a;
  --cf-radius-sm:12px;--cf-radius:18px;--cf-radius-lg:26px;
  --cf-shadow-sm:0 8px 24px rgba(15,23,42,.06);
  --cf-shadow:0 22px 60px rgba(15,23,42,.09);
}
html{scroll-behavior:smooth} body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:rgba(37,99,235,.18)}
.btn,.form-control,.form-select,.card,.alert{transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background-color .18s ease}
.btn:focus-visible,.form-control:focus-visible,.form-select:focus-visible,a:focus-visible{outline:3px solid rgba(37,99,235,.25)!important;outline-offset:2px}
.btn-primary{box-shadow:0 10px 25px rgba(37,99,235,.18)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(37,99,235,.25)}
.card:hover{border-color:#d5deeb}
.table-responsive,.cf-scroll-table{border-radius:14px;-webkit-overflow-scrolling:touch}
.table tbody tr{transition:background .15s ease}.table tbody tr:hover{background:#f8fafc}
.form-control,.form-select{font-size:16px}
.cf-company-identity{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;color:#64748b;font-size:.82rem}
.cf-company-identity strong{color:#334155}.cf-company-dot{width:4px;height:4px;border-radius:99px;background:#94a3b8}
.cf-public-footer{margin-top:44px;padding:26px 18px;border-top:1px solid var(--cf-line);background:rgba(255,255,255,.72);backdrop-filter:blur(12px)}
.cf-public-footer-inner{max-width:1180px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.cf-footer-brand{display:flex;align-items:center;gap:10px;font-weight:900;color:#0f172a}.cf-footer-brand i{color:var(--cf-blue)}
.cf-mobile-bottom-nav{display:none}
@media(max-width:991.98px){
  .cf-topbar{box-shadow:0 8px 24px rgba(15,23,42,.04)}
  .cf-content{padding-bottom:92px!important}
  .cf-mobile-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(4,1fr);left:10px;right:10px;bottom:10px;z-index:1025;background:rgba(15,23,42,.96);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:7px;box-shadow:0 18px 50px rgba(15,23,42,.3)}
  .cf-mobile-bottom-nav a{min-width:0;color:#94a3b8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px;border-radius:14px;font-size:.68rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .cf-mobile-bottom-nav a i{font-size:1.15rem}.cf-mobile-bottom-nav a.active{background:rgba(59,130,246,.22);color:#fff}
  .cf-whatsapp-float{bottom:92px!important}
}
@media(max-width:767.98px){
  .public-nav .container{padding-left:14px;padding-right:14px}.public-nav .btn{min-height:40px;padding:.5rem .75rem}
  .public-container{overflow:hidden}.cf-public-footer{margin-top:24px}.cf-public-footer-inner{justify-content:center;text-align:center}
  .card{box-shadow:var(--cf-shadow-sm)!important}.row.g-4{--bs-gutter-y:1rem}
  h1{overflow-wrap:anywhere}.display-4,.display-5{font-size:clamp(2rem,10vw,3rem)!important}
  .position-sticky{position:static!important}
}
@media(max-width:575.98px){
  .cf-company-identity{font-size:.75rem}.cf-public-footer{padding:22px 12px}
  .btn:not(.btn-sm){min-height:46px}.card{border-radius:18px!important}
  .modal-dialog{margin:.6rem}.modal-content{border-radius:20px}
}

/* ========================================================================== 
   CertFlow Pro UI 2026.2 — redesign visual perceptível desktop + mobile
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');

:root{
  --cf-pro-primary:#3157f6;
  --cf-pro-primary-2:#6d5dfc;
  --cf-pro-navy:#08152f;
  --cf-pro-bg:#f2f5fb;
  --cf-pro-surface:#ffffff;
  --cf-pro-border:#e6eaf2;
  --cf-pro-text:#101828;
  --cf-pro-muted:#667085;
  --cf-pro-radius:20px;
  --cf-pro-shadow:0 12px 34px rgba(16,24,40,.07);
}

body{font-family:Manrope,Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;background:
  radial-gradient(circle at 82% -10%,rgba(109,93,252,.13),transparent 28%),
  radial-gradient(circle at 10% 15%,rgba(49,87,246,.09),transparent 23%),
  var(--cf-pro-bg)!important;color:var(--cf-pro-text)}

/* App shell */
.cf-sidebar{width:272px!important;padding:20px 16px!important;background:
  radial-gradient(circle at 20% 0,rgba(96,165,250,.22),transparent 31%),
  linear-gradient(180deg,#071328 0%,#0a1730 62%,#0c1933 100%)!important;
  border-right:1px solid rgba(255,255,255,.07);box-shadow:18px 0 55px rgba(8,21,47,.16)}
.cf-main{margin-left:272px!important;width:calc(100% - 272px)!important}
.cf-brand{padding:10px 10px 21px;margin-bottom:12px!important;border-bottom:1px solid rgba(255,255,255,.08)}
.cf-brand-icon{width:46px!important;height:46px!important;border-radius:15px!important;background:linear-gradient(135deg,#4f7cff,#785df8)!important;box-shadow:0 14px 35px rgba(70,95,255,.34)!important}
.cf-brand-title{font-size:1.25rem!important}.cf-brand-subtitle{color:#9baccc!important}
.cf-nav-label{font-size:.66rem!important;color:#7183a4!important;margin:20px 12px 8px!important}
.cf-nav{gap:5px!important}.cf-nav-link{position:relative;padding:12px 13px!important;border-radius:12px!important;color:#acbad2!important;font-size:.9rem!important;font-weight:700!important}
.cf-nav-link i{width:24px!important;color:#8296bb;transition:.2s ease}.cf-nav-link:hover{background:rgba(255,255,255,.065)!important;color:#fff!important;transform:translateX(2px)}
.cf-nav-link.active{background:linear-gradient(135deg,rgba(79,124,255,.25),rgba(120,93,248,.19))!important;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(133,156,255,.19),0 10px 24px rgba(0,0,0,.12)!important}
.cf-nav-link.active:before{content:"";position:absolute;left:-16px;top:10px;bottom:10px;width:4px;border-radius:0 6px 6px 0;background:#7aa2ff}.cf-nav-link.active i{color:#8fb0ff}
.cf-user-card{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.08)!important;border-radius:14px!important;padding:14px!important}

.cf-topbar{height:82px!important;background:rgba(248,250,255,.82)!important;border-bottom:1px solid rgba(230,234,242,.9)!important;box-shadow:0 5px 22px rgba(16,24,40,.035);padding:0 30px!important}
.cf-page-title{font-size:1.23rem!important;font-weight:800!important}.cf-page-subtitle{font-size:.82rem!important;color:#7b8496!important}
.cf-content{padding:30px!important;max-width:1560px;margin:0 auto;width:100%}

/* Surfaces */
.card{border:1px solid var(--cf-pro-border)!important;border-radius:var(--cf-pro-radius)!important;box-shadow:var(--cf-pro-shadow)!important;background:rgba(255,255,255,.97)!important}
.card:hover{border-color:#d8deea!important;box-shadow:0 18px 42px rgba(16,24,40,.085)!important}
.card-header,.card-footer{border-color:var(--cf-pro-border)!important}
.btn{border-radius:11px!important;font-weight:800!important;letter-spacing:-.01em;min-height:43px;padding:.62rem 1rem!important}
.btn-primary{background:linear-gradient(135deg,var(--cf-pro-primary),var(--cf-pro-primary-2))!important;border:0!important;box-shadow:0 9px 22px rgba(49,87,246,.24)!important}.btn-primary:hover{filter:brightness(1.04);transform:translateY(-1px)}
.btn-light{background:#fff!important;border-color:#e2e7f0!important}.btn-outline-primary{border-color:#c9d4ff!important;color:#3157f6!important}.btn-outline-primary:hover{background:#eef2ff!important;color:#2746d4!important}
.form-control,.form-select{border-radius:11px!important;border:1px solid #dbe1eb!important;background:#fff!important;min-height:47px!important;padding:.7rem .85rem!important}.form-control:focus,.form-select:focus{border-color:#7894ff!important;box-shadow:0 0 0 4px rgba(49,87,246,.11)!important}
.form-label,label{font-size:.81rem!important;color:#344054!important;font-weight:800!important}
.table thead th{background:#f8f9fc!important;color:#667085!important;font-size:.7rem!important;letter-spacing:.07em!important;padding:13px 16px!important}.table tbody td{padding:15px 16px!important}.table tbody tr:hover{background:#fafbff!important}
.badge{font-size:.72rem!important;padding:.45rem .65rem!important}.progress{background:#edf0f6!important;border-radius:999px!important;overflow:hidden}.progress-bar{border-radius:999px!important}
.modal-content{border:0!important;border-radius:22px!important;box-shadow:0 25px 80px rgba(16,24,40,.2)!important}

/* Section headers and compact professional details */
h1,h2,h3,h4,h5,h6{letter-spacing:-.035em}.text-muted{color:#7b8496!important}
.bg-primary-subtle{background:#eef2ff!important}.text-primary{color:#3157f6!important}
code{background:#f0f3f8;color:#344054;padding:.26rem .45rem;border-radius:7px}

/* Public pages */
.public-nav{background:rgba(255,255,255,.86)!important;box-shadow:0 8px 28px rgba(16,24,40,.045)!important}.public-nav .container{max-width:1240px}.brand{font-family:Manrope,sans-serif!important;font-size:1.3rem!important}.brand-icon{background:linear-gradient(135deg,#3157f6,#765df8)!important}
.public-container{max-width:1240px!important;padding-top:42px!important}.cf-public-footer{background:#08152f!important;border:0!important;color:#a9b7d1!important}.cf-public-footer .cf-footer-brand,.cf-public-footer strong{color:#fff!important}.cf-public-footer .cf-company-identity{color:#9aabc8!important}

/* Dashboard: visual premium */
.dashboard-hero{border-radius:26px!important;overflow:hidden!important;background:
  radial-gradient(circle at 88% 18%,rgba(255,255,255,.18),transparent 25%),
  radial-gradient(circle at 5% 100%,rgba(115,93,248,.5),transparent 38%),
  linear-gradient(120deg,#152b65 0%,#3157f6 55%,#6d5dfc 100%)!important;box-shadow:0 22px 52px rgba(49,87,246,.24)!important}
.dashboard-hero-content{padding:34px 38px!important}.dashboard-hero h2{font-size:2rem!important}.dashboard-hero-card{background:rgba(255,255,255,.13)!important;border:1px solid rgba(255,255,255,.2)!important;backdrop-filter:blur(10px);border-radius:18px!important;min-width:240px}.dashboard-kicker{background:rgba(255,255,255,.15)!important;border:1px solid rgba(255,255,255,.16)!important;color:#fff!important}
.metric-card{border:1px solid var(--cf-pro-border)!important;background:#fff!important;border-radius:18px!important;box-shadow:0 10px 28px rgba(16,24,40,.06)!important;min-height:158px!important;overflow:hidden}.metric-card:after{opacity:.8}.metric-card .metric-icon{border-radius:16px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}.metric-card h3{font-size:2.25rem!important}.metric-card p{font-size:.73rem!important;color:#667085!important}.metric-card span{color:#8a94a6!important}
.dashboard-quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.dashboard-quick-actions .btn{background:#fff!important;color:#17336f!important;border:0!important;box-shadow:0 8px 24px rgba(8,21,47,.16)!important}.dashboard-quick-actions .btn-outline-light{background:rgba(255,255,255,.12)!important;color:#fff!important;border:1px solid rgba(255,255,255,.28)!important}

/* Empty states and action headers */
.cf-pro-empty{padding:54px 24px;text-align:center}.cf-pro-empty-icon{width:70px;height:70px;border-radius:22px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eef2ff,#f2edff);color:#3157f6;font-size:1.75rem;margin-bottom:16px}

/* Mobile */
@media(max-width:991.98px){
  .cf-main{margin-left:0!important;width:100%!important}.cf-sidebar{width:286px!important}.cf-topbar{min-height:70px!important;height:auto!important;padding:12px 15px!important}.cf-content{padding:18px!important;padding-bottom:94px!important}.cf-page-subtitle{display:none}.cf-mobile-menu-btn{background:#fff!important;border:1px solid #e7eaf1!important;box-shadow:0 6px 18px rgba(16,24,40,.07)!important}
  .cf-mobile-bottom-nav{height:68px!important;left:10px!important;right:10px!important;bottom:10px!important;border:1px solid rgba(223,228,239,.95)!important;border-radius:20px!important;box-shadow:0 18px 45px rgba(16,24,40,.16)!important;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(18px)}
  .cf-mobile-bottom-nav a{border-radius:14px!important;font-size:.65rem!important}.cf-mobile-bottom-nav a.active{background:#eef2ff!important;color:#3157f6!important}.cf-mobile-bottom-nav i{font-size:1.15rem!important}
  .cf-whatsapp-float{bottom:88px!important}
  .dashboard-hero-content{padding:26px!important}.dashboard-hero h2{font-size:1.55rem!important}.dashboard-quick-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.dashboard-quick-actions .btn{width:100%;font-size:.78rem!important;padding:.55rem!important}.metric-card{min-height:130px!important}.metric-card h3{font-size:1.9rem!important}
}
@media(max-width:575.98px){
  .cf-content{padding:12px!important;padding-bottom:92px!important}.card{border-radius:16px!important;padding:17px!important}.public-container{padding:22px 12px 42px!important}.dashboard-hero{border-radius:20px!important}.dashboard-hero-card{min-width:0!important;width:100%!important}.dashboard-quick-actions{grid-template-columns:1fr}.btn{min-height:45px}.row.g-3,.row.g-4{--bs-gutter-x:.8rem!important;--bs-gutter-y:.8rem!important}
  .table-responsive{margin-left:-17px;margin-right:-17px;border-radius:0!important}.offcanvas,.modal-dialog{margin:.5rem!important}
}
