:root{
 --pp-blue:#1264ff;--pp-blue-2:#16b7ff;--pp-navy:#061426;--pp-navy-2:#0b1c33;
 --pp-bg:#f3f7fc;--pp-card:#fff;--pp-border:#e3eaf3;--pp-text:#10213a;--pp-muted:#66788f;
 --pp-green:#079669;--pp-green-soft:#e7f8f2;--pp-yellow:#a96500;--pp-yellow-soft:#fff4d7;
 --pp-red:#bd2d25;--pp-red-soft:#ffeded;
}
*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--pp-bg);color:var(--pp-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{text-decoration:none}
.pp-shell{min-height:100vh;display:flex}.pp-sidebar{width:238px;flex:0 0 238px;background:linear-gradient(180deg,#061426,#0a1b31);color:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:30;transition:width .2s ease,flex-basis .2s ease}.pp-brand{height:92px;padding:13px 16px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:8px}.pp-brand-link{display:flex;align-items:center;gap:10px;min-width:0;color:#fff}.pp-brand-link:hover{color:#fff}.pp-brand img{width:45px;height:45px;object-fit:cover;border-radius:12px;display:block;filter:drop-shadow(0 5px 14px rgba(0,130,255,.35))}.pp-brand-copy{line-height:1}.pp-brand-name{font-size:15px;font-weight:850;letter-spacing:-.35px}.pp-brand-name span{color:#2bb5ff}.pp-brand-sub{font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:#7f92ac;margin-top:5px;display:block}.pp-nav{padding:18px 11px;flex:1;overflow:auto}.pp-nav-label{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:#62758f;font-weight:850;padding:0 10px 8px}.pp-nav a{display:flex;align-items:center;gap:11px;color:#aebbd0;padding:10px 12px;border-radius:10px;margin-bottom:3px;font-size:12px;font-weight:650;transition:.16s}.pp-nav a:hover{background:rgba(255,255,255,.06);color:#fff}.pp-nav a.active{background:linear-gradient(90deg,#1264ff,#087ef3);color:#fff;box-shadow:0 7px 18px rgba(18,100,255,.25)}.pp-nav-icon{width:18px;text-align:center;font-size:14px}.pp-sidebar-foot{padding:13px 14px;border-top:1px solid rgba(255,255,255,.08)}.pp-user-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.pp-user{font-size:11px;color:#b9c5d6;min-width:0;flex:1;overflow:hidden}.pp-user-name{display:block;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-user-email{display:block;font-size:9px;color:#72849c;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-logout-form{margin:0;flex:0 0 auto}.pp-logout-btn{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:#c7d3e4;border-radius:8px;min-width:40px;height:34px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:11px;font-weight:700;cursor:pointer;transition:.16s}.pp-logout-btn:hover{background:rgba(255,255,255,.09);color:#fff;border-color:rgba(255,255,255,.22)}.pp-sidebar-version{font-size:9px;color:#64758f}.pp-collapse{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:#cbd6e5;border-radius:8px;width:32px;height:30px;margin-left:auto;display:flex;align-items:center;justify-content:center}.pp-main{min-width:0;flex:1}.pp-topbar{height:62px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--pp-border);display:flex;align-items:center;justify-content:space-between;padding:0 26px;position:sticky;top:0;z-index:20}.pp-top-left{display:flex;align-items:center;gap:12px}.pp-top-title{font-size:13px;font-weight:850}.pp-top-sub{font-size:10px;color:var(--pp-muted);margin-top:1px}.pp-menu-toggle{display:none;border:0;background:#eef4ff;color:var(--pp-blue);border-radius:9px;width:36px;height:36px;font-size:17px;flex:0 0 auto}.pp-top-meta{display:flex;align-items:center;gap:15px;font-size:10px;color:#718096}.pp-live{display:inline-flex;align-items:center;gap:6px}.pp-live i{width:7px;height:7px;border-radius:50%;background:#13b67b;box-shadow:0 0 0 3px #e4f7f0}.pp-user-chip{font-weight:750;color:#53657a}.pp-content{padding:24px 28px 38px;min-height:calc(100vh - 62px);width:100%}.pp-mobile-brand{display:none;color:var(--pp-text);align-items:center;gap:9px;font-size:13px;font-weight:850}.pp-mobile-brand:hover{color:var(--pp-text)}.pp-mobile-brand img{width:34px;height:34px;border-radius:9px;object-fit:cover}.pp-mobile-brand span{line-height:1.05}.pp-mobile-brand b{color:var(--pp-blue)}.pp-mobile-brand small{display:block;font-size:7px;letter-spacing:.09em;text-transform:uppercase;color:var(--pp-muted);font-weight:700;margin-top:3px}.pp-mobile-backdrop{display:none}
.metric-card,.panel,.metric-mini{background:#fff!important;border:1px solid var(--pp-border)!important;border-radius:15px!important;box-shadow:0 5px 20px rgba(16,36,65,.035)!important}.metric-card{padding:18px;min-height:112px;position:relative;overflow:hidden}.metric-card:after{content:"";position:absolute;width:65px;height:65px;border-radius:50%;right:-27px;top:-27px;background:#f4f7fb}.metric-label{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#68778a;font-weight:850}.metric-value{font-size:27px;font-weight:850;line-height:1;margin-top:11px;letter-spacing:-1px}.metric-note{font-size:9px;color:#96a1af;margin-top:5px}.panel{overflow:hidden}.panel-head{padding:17px 20px;border-bottom:1px solid var(--pp-border)}.panel-head h5,.panel h5{margin:0;font-size:14px;font-weight:850}.metric-mini{padding:10px!important;box-shadow:none!important;background:#fbfcfe!important;border-radius:10px!important}.metric-mini small{display:block;color:#7a8798;font-size:8px;text-transform:uppercase;font-weight:800;letter-spacing:.05em;margin-bottom:4px}.metric-mini strong{font-size:15px}.table thead th{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#68778a;font-weight:850;background:#fafbfd;border-bottom:1px solid var(--pp-border)}.table tbody td{font-size:10px;border-color:#edf0f4}.score-badge{display:inline-flex;min-width:38px;height:30px;align-items:center;justify-content:center;border-radius:8px;background:#ecfdf5;color:#047857;font-weight:800}.score-large{background:#eff6ff;color:#1d4ed8;border-radius:16px;padding:14px 18px;font-size:30px;font-weight:800;text-align:center}.score-large small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#64748b}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:20px}.info-grid small{display:block;color:#9ca3af;margin-bottom:5px}.info-grid strong{display:block;overflow-wrap:anywhere}.opportunity-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #f1f5f9}.opportunity-item:last-child{border-bottom:0}.opportunity-item strong,.opportunity-item small{display:block}.opportunity-item small{color:var(--pp-muted);margin-top:3px;line-height:1.35}.opportunity-item>span{font-weight:800;color:#047857;background:#ecfdf5;padding:4px 7px;border-radius:7px;white-space:nowrap}.form-control,.form-select{border-color:#dbe1e9;border-radius:9px;min-height:39px;font-size:12px;box-shadow:none!important}.form-control:focus,.form-select:focus{border-color:#70a8ff;box-shadow:0 0 0 3px rgba(18,100,255,.09)!important}.form-label{font-size:11px;font-weight:750;color:#344054}.btn{border-radius:9px;font-size:11px;font-weight:750;padding:.55rem .8rem}.btn-primary{background:linear-gradient(90deg,#0864e3,#1675ee);border-color:#0864e3}.alert{border-radius:11px;font-size:11px}.badge{font-size:9px}
.pp-login-page{margin:0}.pp-login{min-height:100vh;background:radial-gradient(circle at 15% 20%,rgba(0,166,255,.16),transparent 32%),radial-gradient(circle at 85% 80%,rgba(18,100,255,.16),transparent 34%),linear-gradient(135deg,#041020,#09234a);display:flex;align-items:center;justify-content:center;padding:28px;position:relative;overflow:hidden}.pp-login:before,.pp-login:after{content:"";position:absolute;border:1px solid rgba(22,183,255,.18);border-radius:50%;pointer-events:none}.pp-login:before{width:560px;height:560px;left:-280px;bottom:-260px}.pp-login:after{width:520px;height:520px;right:-260px;top:-250px}.pp-login-card{width:min(440px,100%);background:rgba(8,24,45,.88);border:1px solid rgba(116,184,255,.25);border-radius:22px;padding:30px;box-shadow:0 28px 80px rgba(0,0,0,.35);backdrop-filter:blur(16px);position:relative;z-index:1}.pp-login-brand{text-align:center;margin-bottom:25px}.pp-login-brand img{display:block;width:min(330px,100%);height:auto;max-height:112px;object-fit:contain;margin:0 auto 12px;border-radius:8px;filter:drop-shadow(0 8px 20px rgba(0,126,255,.22))}.pp-login-sub{font-size:11px;color:#91a8c4;margin-top:5px}.pp-login-card .form-label{color:#c8d6e8}.pp-login-card .form-control{background:#0c2038;border-color:#23476d;color:#fff;min-height:46px}.pp-login-card .form-control::placeholder{color:#6e88a6}.pp-login-card .form-control:focus{border-color:#2b9fff;box-shadow:0 0 0 3px rgba(22,183,255,.12)!important}.pp-login-card .btn-primary{min-height:45px;box-shadow:0 8px 22px rgba(18,100,255,.28)}.pp-login-footer{text-align:center;color:#7188a4;font-size:9px;margin-top:20px}
.pp-sidebar-collapsed .pp-sidebar{width:76px;flex-basis:76px}.pp-sidebar-collapsed .pp-brand{justify-content:center;padding:15px 10px}.pp-sidebar-collapsed .pp-brand-copy,.pp-sidebar-collapsed .pp-nav-label,.pp-sidebar-collapsed .pp-nav a span:not(.pp-nav-icon),.pp-sidebar-collapsed .pp-user,.pp-sidebar-collapsed .pp-user-email,.pp-sidebar-collapsed .pp-logout-btn span,.pp-sidebar-collapsed .pp-sidebar-version{display:none}.pp-sidebar-collapsed .pp-nav a{justify-content:center}.pp-sidebar-collapsed .pp-collapse{margin:0 auto}
@media(max-width:1100px){.pp-content{padding:22px}.info-grid{gap:16px}}
@media(max-width:850px){.pp-sidebar{position:fixed;left:0;top:0;bottom:0;transform:translate3d(-100%,0,0);transition:transform .22s ease;width:238px;height:100dvh;z-index:1001;box-shadow:18px 0 45px rgba(3,15,31,.28)}.pp-mobile-open .pp-sidebar{transform:translate3d(0,0,0)}.pp-mobile-backdrop{display:block;position:fixed;inset:0;background:rgba(3,15,31,.42);backdrop-filter:blur(1px);opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:1000}.pp-mobile-open .pp-mobile-backdrop{opacity:1;pointer-events:auto}.pp-menu-toggle{display:flex;align-items:center;justify-content:center}.pp-desktop-top-left{display:none}.pp-mobile-brand{display:flex}.pp-topbar{padding:0 12px;height:62px;z-index:999}.pp-top-meta{display:none}.pp-content{padding:18px 12px 28px}.info-grid{grid-template-columns:1fr}}
@media(min-width:851px){.pp-mobile-brand{display:none!important}}
@media(max-width:650px){.pp-content{padding:15px 10px 25px}.pp-login{padding:16px}.pp-login-card{padding:24px 20px}.pp-login-brand img{width:min(300px,100%);max-height:95px}.table-responsive{border-radius:12px}.table{min-width:700px}}

/* V0.4.4 — tipografia mais confortável */
body{font-size:15px}
.pp-nav a{font-size:13px}
.pp-nav-label{font-size:10px}
.pp-top-title{font-size:14px}
.pp-top-sub{font-size:11px}
.pp-top-meta{font-size:11px}
.pp-user{font-size:12px}
.pp-sidebar-version{font-size:10px}
.pp-brand-name{font-size:16px}
.pp-brand-sub{font-size:9px}
.pp-content{font-size:15px}
.panel-head h5,.panel h5{font-size:15px}
.table thead th{font-size:10px}
.table tbody td{font-size:12px}
.metric-label{font-size:10px}
.metric-value{font-size:28px}
.metric-note{font-size:10px}
.metric-mini small{font-size:9px}
.metric-mini strong{font-size:16px}
.score-badge{font-size:12px}
.btn{font-size:13px}
.form-control,.form-select{font-size:14px}
.form-label{font-size:13px}
.alert{font-size:14px}
.badge{font-size:11px}
.pp-login-sub{font-size:12px}
.pp-login-footer{font-size:10px}

/* V0.4.6 — PWA / instalação do aplicativo */
.pp-install-btn{border:1px solid #cfe0f7;background:#eef5ff;color:#1264ff;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:800;cursor:pointer}
.pp-install-btn:hover{background:#e4efff;border-color:#b9d3f8}
@media(max-width:850px){.pp-install-btn{font-size:10px;padding:6px 8px}.pp-top-meta .pp-install-btn{display:none}}

/* V0.4.7 — tela de login alinhada ao padrão visual do Prime Guardian */
.pp-login{min-height:100vh;background:radial-gradient(circle at 15% 20%,rgba(0,166,255,.16),transparent 32%),radial-gradient(circle at 85% 80%,rgba(18,100,255,.16),transparent 34%),linear-gradient(135deg,#041020,#09234a);display:flex;align-items:center;justify-content:center;padding:28px;position:relative;overflow:hidden}
.pp-login:before,.pp-login:after{content:"";position:absolute;border:1px solid rgba(22,183,255,.18);border-radius:50%;pointer-events:none}
.pp-login:before{width:560px;height:560px;left:-280px;bottom:-260px}
.pp-login:after{width:520px;height:520px;right:-260px;top:-250px}
.pp-login-card{width:min(430px,100%);background:rgba(8,24,45,.88);border:1px solid rgba(116,184,255,.25);border-radius:22px;padding:30px;box-shadow:0 28px 80px rgba(0,0,0,.35);backdrop-filter:blur(16px);position:relative;z-index:1}
.pp-login-brand{text-align:center;margin-bottom:26px}
.pp-login-mark{width:78px!important;height:78px!important;object-fit:cover!important;border-radius:18px!important;filter:drop-shadow(0 8px 20px rgba(0,126,255,.35))!important;margin:0 auto 12px!important}
.pp-login-name{font-size:27px;font-weight:900;color:#fff;letter-spacing:-.8px}
.pp-login-name span{color:#27b8ff}
.pp-login-sub{font-size:11px;color:#91a8c4;margin-top:4px}
.pp-login-card .form-label{color:#c8d6e8}
.pp-login-card .form-control{background:#0c2038;border-color:#23476d;color:#fff;min-height:46px}
.pp-login-card .form-control::placeholder{color:#6e88a6}
.pp-login-card .form-control:focus{border-color:#2b9fff;box-shadow:0 0 0 3px rgba(22,183,255,.12)!important}
.pp-login-card .btn-primary{min-height:45px;box-shadow:0 8px 22px rgba(18,100,255,.28)}
.pp-login-footer{text-align:center;color:#7188a4;font-size:9px;margin-top:20px}
@media(max-width:650px){.pp-login{padding:16px}.pp-login-card{padding:24px 20px}.pp-login-name{font-size:25px}.pp-login-mark{width:70px!important;height:70px!important}}
