:root{--ink:#09243a;--deep:#061b30;--blue:#0876cb;--cyan:#22c2db;--cloud:#f4f8fb;--muted:#688092;--line:#dce7ed}*{box-sizing:border-box}body{font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:#fff}h1,h2,h3,b,.navbar-brand{font-family:Manrope,sans-serif}a{color:var(--blue);text-decoration:none}.navbar-orion{background:var(--deep);min-height:76px}.navbar-brand{font-size:1.45rem;font-weight:800;letter-spacing:-1px}.brand-mark{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--cyan),#2188dc);font-size:.8rem;color:#fff}.brand-dot{color:var(--cyan)}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;font-weight:700}.hero{color:white;background:var(--deep);position:relative;overflow:hidden}.hero-grid{position:absolute;inset:0;background:radial-gradient(circle at 75% 35%,rgba(34,194,219,.25),transparent 20%),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,58px 58px,58px 58px}.min-vh-75{min-height:650px}.hero h1{font-size:clamp(3rem,6vw,5.45rem);font-weight:800;line-height:.98;letter-spacing:-.07em;max-width:720px;margin:20px 0}.hero h1 em{font-style:normal;color:var(--cyan)}.hero .lead{max-width:610px;color:#b4ccda;font-size:1.17rem;line-height:1.7}.btn-accent{background:var(--cyan);border-color:var(--cyan);color:#06253a;font-weight:700}.btn-accent:hover{background:#51d8e9;border-color:#51d8e9;transform:translateY(-2px)}.trust-row{display:flex;gap:22px;margin-top:34px;color:#bed7e5;font-size:.88rem}.trust-row i{color:var(--cyan);margin-right:5px}.hero-panel{background:rgba(255,255,255,.095);border:1px solid rgba(255,255,255,.18);padding:18px;border-radius:20px;backdrop-filter:blur(14px);box-shadow:0 30px 80px rgba(0,0,0,.25);transform:rotate(-3deg)}.panel-header{display:flex;align-items:center;gap:5px;color:#d9ebf3;font-size:.78rem}.panel-header span{width:8px;height:8px;border-radius:50%;background:#5d7b8f}.panel-header b{margin-left:10px}.metric{background:linear-gradient(135deg,#138cc7,#0c5ea9);border-radius:14px;padding:23px;margin:18px 0;position:relative}.metric small,.mini-row small{display:block;color:#c8e5f1}.metric strong{font:700 3rem Manrope}.metric i{position:absolute;right:22px;bottom:24px;font-size:2rem;color:#83eaf7}.mini-row{display:flex;justify-content:space-between;background:rgba(255,255,255,.08);padding:13px;border-radius:11px;margin-top:10px}.mini-row b{display:block}.mini-row i{color:var(--cyan);font-size:1.3rem}.py-lg-6{padding-top:6rem!important;padding-bottom:6rem!important}.section-intro{max-width:620px}.section-intro h2,.statement h2,.cta-section h2{font-size:clamp(2rem,4vw,3.25rem);font-weight:800;letter-spacing:-.055em;margin-top:12px}.benefit-card{height:100%;padding:28px;background:#fff;border:1px solid var(--line);border-radius:15px;transition:.3s;position:relative}.benefit-card:hover{transform:translateY(-7px);box-shadow:0 20px 35px rgba(12,58,83,.1);border-color:#bcdfe9}.icon-box{color:var(--blue);font-size:1.5rem;margin-bottom:25px}.benefit-card h3{font-size:1.1rem;font-weight:800}.benefit-card p{color:var(--muted);line-height:1.6;font-size:.93rem}.card-arrow{color:var(--blue);font-size:1.4rem}.statement{padding:6rem 0;background:#e9f7fa}.statement p{font-size:1.15rem;line-height:1.75;color:#38566a}.stats{display:flex;gap:38px;margin-top:30px}.stats div{display:flex;flex-direction:column}.stats b{font-size:1.7rem}.stats span{font-size:.75rem;color:var(--muted)}.cta-section{background:var(--cloud);padding:4rem 0}.cta-section .container{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta-section h2{max-width:680px;margin-bottom:0}footer{background:var(--deep);color:#a9c1ce;padding:25px 0;font-size:.86rem}footer a{color:#d2ebf4}.brand-footer{font:800 1.2rem Manrope;color:#fff}.auth-page{background:linear-gradient(120deg,#eff7fb,#fff 55%,#e6f5f8)}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px 20px}.auth-brand{font:800 1.6rem Manrope;color:var(--deep);margin-bottom:24px}.auth-card{width:100%;max-width:460px;background:white;border:1px solid var(--line);border-radius:18px;padding:38px;box-shadow:0 24px 60px rgba(16,65,87,.12)}.auth-card h1{font-size:2rem;font-weight:800;letter-spacing:-.05em;margin-top:12px}.auth-card>p{color:var(--muted);line-height:1.6}.form-label{font-weight:600;font-size:.88rem}.form-control{padding:.72rem .8rem;border-color:#ccdce4}.form-control:focus{border-color:var(--blue);box-shadow:0 0 0 .2rem rgba(8,118,203,.12)}.secure-note{font-size:.78rem;color:var(--muted);text-align:center;margin-top:22px}.secure-note i{color:#159e6d}.portal-page{background:#f5f8fa;padding-top:65px}.portal-nav{position:fixed;z-index:1030;inset:0 0 auto;width:100%;height:65px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center}.portal-nav>.container-fluid{display:flex;align-items:center;justify-content:space-between;padding:0 28px;max-width:none;width:100%}.portal-nav .navbar-brand{color:var(--deep)}.company-switch{font-size:.84rem;color:var(--ink);font-weight:600}.portal-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:calc(100vh - 65px)}.portal-shell > aside{background:#fff;border-right:1px solid var(--line);padding:25px 15px;display:flex;flex-direction:column}.user-chip{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:0 8px 22px;margin-bottom:16px}.user-chip>span,.company-logo,.account-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#dff5f8;color:#05718b;font-weight:800}.user-chip b,.user-chip small{display:block;font-size:.76rem}.user-chip small{color:var(--muted);margin-top:2px}.portal-shell > aside nav{display:flex;flex-direction:column;gap:3px}.portal-shell > aside nav a{color:#4d6879;padding:10px;border-radius:8px;font-size:.87rem;font-weight:600}.portal-shell > aside nav a:hover{background:#eef8fa;color:var(--blue)}.portal-shell > aside nav i{font-size:1rem;margin-right:12px}.side-help{margin-top:auto;background:#eaf8fa;padding:15px;border-radius:10px;font-size:.78rem}.side-help i{font-size:1.3rem;color:var(--blue);display:block;margin-bottom:6px}.side-help b,.side-help small{display:block}.side-help small{color:var(--muted);margin-top:3px}.portal-content{padding:45px;max-width:1500px;width:100%}.content-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:30px}.content-heading h1{font-size:2rem;letter-spacing:-.05em;font-weight:800;margin:5px 0}.content-heading p{color:var(--muted);margin:0}.today{font-size:.8rem;background:white;border:1px solid var(--line);padding:7px 11px;border-radius:20px;color:var(--muted)}.portal-metric,.content-card,.shortcut-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.portal-metric>i{color:var(--blue);font-size:1.3rem;float:right}.portal-metric small,.portal-metric span{display:block;color:var(--muted);font-size:.76rem}.portal-metric b{display:block;font-size:1.8rem;margin:9px 0}.card-title{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px}.card-title h2{font-size:1.15rem;font-weight:800;margin:5px 0 0}.card-title a{font-size:.83rem;font-weight:600}.account-details{display:grid;gap:0;margin-top:8px}.account-details>div{padding:13px 0;border-bottom:1px solid var(--line)}.account-details>div:last-child{border-bottom:0}.account-details dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.account-details dd{margin:3px 0 0;font-size:.92rem;font-weight:600}.contact-status{font-size:1.35rem;line-height:1}.document-list>div{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}.document-list>div:last-child{border:0}.doc-icon{background:#fff0f0;color:#e65b58;width:36px;height:36px;border-radius:8px;display:grid;place-items:center}.document-list b,.document-list small{display:block;font-size:.83rem}.document-list small{color:var(--muted);font-size:.75rem}.document-list a:last-child{margin-left:auto}.shortcut-card{display:flex;flex-direction:column;gap:5px}.shortcut-card>a{display:flex;align-items:center;gap:10px;color:var(--ink);padding:13px 0;border-bottom:1px solid var(--line);font-size:.85rem;font-weight:600}.shortcut-card>a i:last-child{margin-left:auto;color:var(--blue)}.empty-state{text-align:center;padding:35px;color:var(--muted)}.empty-state>i{display:block;font-size:2.3rem;color:#9bc8d5;margin-bottom:12px}.select-company{padding:80px 0;min-height:calc(100vh - 76px);background:var(--cloud)}.select-company h1{font-weight:800;letter-spacing:-.05em}.select-company>div{max-width:720px}.company-list{display:grid;gap:12px;margin-top:28px}.company-list button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:18px;text-align:left;display:flex;align-items:center;gap:14px;transition:.2s}.company-list button:hover{border-color:var(--blue);box-shadow:0 8px 20px rgba(10,77,112,.1)}.company-list b,.company-list small{display:block}.company-list small{font-size:.76rem;color:var(--muted)}.company-list i{margin-left:auto;color:var(--blue)}.error-page{text-align:center;padding:130px 20px}.error-page>span{font:800 5rem Manrope;color:#caeaf1}.error-page h1{font-weight:800}.error-page p{color:var(--muted)}.portal-toast-container{position:fixed;z-index:1100;right:20px;top:82px;width:min(420px,calc(100vw - 32px))}.portal-failure-toast{width:100%;overflow:hidden;border:1px solid #f0b9b9;box-shadow:0 14px 35px rgba(44,25,25,.16)}.portal-failure-toast .toast-header{background:#fff8f8}.portal-failure-toast .toast-body{color:#5c2525}.toast-progress{height:4px;background:#dc3545;transform-origin:left;animation:toast-countdown 8s linear forwards}@keyframes toast-countdown{from{transform:scaleX(1)}to{transform:scaleX(0)}}@media(max-width:991px){.portal-shell{grid-template-columns:1fr}.portal-shell > aside{display:none}.portal-content{padding:30px 20px}.cta-section .container{align-items:flex-start;flex-direction:column}.min-vh-75{min-height:590px}}@media(max-width:575px){.auth-card{padding:28px 22px}.trust-row{gap:10px;flex-direction:column}.stats{gap:18px}.portal-nav>.container-fluid{padding:0 14px}.company-switch{font-size:0}.company-switch i{font-size:1.15rem}.content-heading{display:block}.today{display:inline-block;margin-top:10px}.portal-toast-container{top:76px;right:16px}}

/* Avisos globais devem ficar acima do drawer e do diálogo de confirmação. */
.portal-toast-container{z-index:1210}

/* ================= Prisma — refresh visual do app (área logada apenas; site público e login mantêm a paleta original) ================= */
.portal-page{
  --ink:#171428;--blue:#6d5bd0;--muted:#736f8c;--line:#ece9fa;--cloud:#f6f5fb;
  --violet:#6d5bd0;--teal:#0f9488;--amber:#b5790a;--rose:#c23d55;--accent2:#22c2db;
  background:#f7f7fb;
}
.portal-page .form-control,.portal-page .form-select{padding:.5rem .75rem;border-color:var(--line);border-radius:10px;font-size:.88rem}
.portal-page .form-control:focus,.portal-page .form-select:focus{border-color:var(--blue);box-shadow:0 0 0 .18rem rgba(109,91,208,.14)}
.portal-page .form-label{font-size:.8rem;margin-bottom:.3rem}
.portal-page .form-check-input:checked{background-color:var(--blue);border-color:var(--blue)}
.portal-page .btn-primary{background:var(--blue);border-color:var(--blue)}
.portal-page .btn-primary:hover{background:#5c4bc0;border-color:#5c4bc0}
.portal-page .btn-outline-primary{color:var(--blue);border-color:var(--blue)}
.portal-page .btn-outline-primary:hover{background:var(--blue);border-color:var(--blue)}

/* sidebar: rail de gradiente + ícones em chip colorido por seção */
.portal-shell > aside{position:relative}
.portal-shell > aside::before{content:'';position:absolute;top:0;bottom:0;left:0;width:4px;background:linear-gradient(180deg,var(--violet),var(--accent2) 55%,var(--amber))}
.user-chip>span,.company-logo,.account-avatar{background:#f1edfc;color:var(--violet)}
.portal-shell > aside nav a{border-radius:11px;transition:background .15s,color .15s}
.portal-shell > aside nav a:hover{background:#f6f4fd}
.portal-shell > aside nav a i{width:26px;height:26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;margin-right:11px;font-size:.92rem;background:#eef1f5;color:#6d7a89;transition:background .15s,color .15s}
.portal-shell > aside nav a[data-hue="blue"] i{background:#e7f3fb;color:#0876cb}
.portal-shell > aside nav a[data-hue="violet"] i{background:#f1edfc;color:var(--violet)}
.portal-shell > aside nav a[data-hue="teal"] i{background:#e5f6f2;color:var(--teal)}
.portal-shell > aside nav a[data-hue="amber"] i{background:#fdf3e0;color:var(--amber)}
.portal-shell > aside nav a[data-hue="rose"] i{background:#fdedf0;color:var(--rose)}
.portal-page .portal-shell > aside nav a.is-active{background:#f1edfc;color:var(--violet)}
.portal-shell > aside nav a.is-active i{background:rgba(255,255,255,.65)}

/* cards e métricas: acento superior + leve elevação no hover */
.content-card,.portal-metric,.shortcut-card{border-radius:18px;border-top:3px solid var(--blue);transition:transform .2s ease,box-shadow .2s ease}
.portal-metric{transition:transform .2s ease,box-shadow .2s ease}
.portal-metric:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(109,91,208,.14)}
.portal-metric>i{float:none;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:#f1edfc;color:var(--blue);font-size:1.05rem;margin-bottom:10px}
.content-heading h1.greeting{background:linear-gradient(120deg,var(--ink) 35%,var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}

/* indicador de ordenação: coluna pela qual a listagem está ordenada (desc) */
.sort-desc-icon{font-size:.6rem;color:var(--muted);margin-left:5px;vertical-align:1px}
