@font-face{font-family:'Plus Jakarta Sans';src:url('/brand/plus-jakarta-sans.ttf') format('truetype');font-weight:200 800;font-style:normal;font-display:swap}
/* PYE Tech: mesma identidade do Prospecta (vendas.pyetech.com.br) — petróleo, menta e Plus Jakarta Sans. */
:root{
  --pye-navy:#082029;
  --pye-mint:#00c98a;
  --pye-neon:#5cffc4;
  --pye-link:#007652;
  --pye-soft:#ecf7f2;
}
body{font-family:'Plus Jakarta Sans','Segoe UI',sans-serif;font-size:14px}
button,input,select,textarea{font-family:inherit}
::selection{background:#beebe7;color:var(--pye-navy)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #00c98a80;outline-offset:2px}
h1,h2,h3,h4{letter-spacing:-.3px}
.ngx-loading-bar{background:var(--pye-mint)}

/* ---------- Login ---------- */
.login-page-container{grid-template-columns:1fr 1fr}
.login-left{background:#082029;justify-content:flex-start;padding:44px clamp(32px,5vw,88px);overflow-y:auto;align-items:flex-start}
.login-left::before{content:"";position:absolute;inset:0;pointer-events:none;background:url('/brand/elementos/fundos/banner-hero-escuro.svg') no-repeat 100% 0/cover;opacity:.55}
.login-left::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 100% 70%,#00c98a18,transparent 65%)}
.login-left-content{position:relative;z-index:1;max-width:540px}
.pye-brand-heading{display:flex;gap:20px;align-items:center;margin-bottom:56px}
.pye-brand-heading img{width:166px;height:auto;display:block}
.pye-brand-heading span{border-left:1px solid #ffffff25;padding-left:20px;font-size:9px;letter-spacing:2px;color:#a6ceca}
.pye-eyebrow{display:flex;align-items:center;gap:10px;color:var(--pye-neon);letter-spacing:2px;font-size:10px;font-weight:700;margin-bottom:20px}
.pye-eyebrow>span{width:18px;height:2px;background:var(--pye-neon)}
.pye-hero-title{font-size:clamp(30px,3vw,46px);font-weight:700;letter-spacing:-1.5px;line-height:1.15;color:#f8fcfa;margin-bottom:18px}
.pye-hero-title em{color:var(--pye-neon);font-style:normal}
.login-hero-desc{color:#aed3cf;font-size:14px;line-height:1.8}
.demo-Removed-box{background:#ffffff06;border-color:#ffffff1c;border-radius:12px;backdrop-filter:none}
.demo-box-header{color:#ecf7f2}
.demo-pulse{background:var(--pye-neon);box-shadow:0 0 0 4px #5cffc426}
.demo-box-hint{color:#96b7ad}
.demo-profile-btn{background:#ffffff05;border-color:#ffffff16;border-radius:9px}
.demo-profile-btn:hover{background:#5cffc412;border-color:#5cffc440}
.demo-avatar{border-radius:8px}
.demo-avatar.op-admin,.demo-avatar.op-n2{background:#00c98a20;color:var(--pye-neon);border:1px solid #00c98a40}
.demo-avatar.cust-mgr,.demo-avatar.cust-std{background:#ffffff10;color:#d2ece1;border:1px solid #ffffff25}
.demo-info span{color:#a4d3ce}
.demo-tag{background:#00c98a22;color:var(--pye-neon)}
.demo-tag.tag-cust{background:#ffffff12;color:#d2ece1}
.login-arch-badges span{background:#ffffff08;border:1px solid #ffffff14;color:#bfe3df;border-radius:6px}

.login-right{background:#f1f7f5;color:var(--pye-navy);padding:46px clamp(32px,5vw,88px);overflow-y:auto}
.form-signin{max-width:390px}
.signin-logo-header{text-align:left;margin-bottom:26px}
.pye-welcome{font-size:10px;font-weight:700;letter-spacing:1.7px;color:#23766e}
.signin-logo-header h2{font-size:34px;line-height:1.2;letter-spacing:-1.1px;margin:12px 0 10px;font-weight:700;color:var(--pye-navy)}
.signin-logo-header p{color:#769b97;font-size:14px;line-height:1.7}
.portal-mode-tabs{background:#e2efe9;border-radius:9px}
.portal-tab{color:#4a646d;font-weight:700}
.portal-tab.active{background:#fff;color:var(--pye-navy);box-shadow:0 1px 3px #0820290f}
.tt-input-group label{color:#30625d;font-weight:700}
.tt-input-wrap,.tt-input-wrap.tt-input-purple{background:#fff;border:1px solid #dcede6;border-radius:9px;padding:0 14px}
.tt-input-wrap:focus-within{border-color:#2a8d83;box-shadow:0 0 0 3px #00c98a15}
.tt-input-wrap input{padding:13px 4px;font-size:14px;color:var(--pye-navy)}
.tt-input-icon{filter:grayscale(1);opacity:.55}
.tt-login-options{color:#4a646d}
.tt-login-options input{accent-color:var(--pye-mint)}
.tt-2fa-box{background:#fff;border-color:#dcede6}
.tt-2fa-box label{color:#30625d}
.btn-purple{background:var(--pye-mint);color:var(--pye-navy);font-weight:800;font-size:14px;border-radius:9px;padding:15px 16px;box-shadow:0 3px 8px #0820290a}
.btn-purple:hover{background:#00b07a}
.signin-footer-links{color:#89aba8}
.signin-footer-links a{color:var(--pye-link)}

/* ---------- Barra lateral ---------- */
.app-shell{grid-template-columns:256px 1fr}
.sidebar{background:var(--pye-navy);color:#ecf7f2;border:0;padding:30px 19px 18px}
.brand{flex-direction:column;align-items:flex-start;gap:12px;padding:0 13px 22px;border-bottom:1px solid #ffffff12}
.brand .brand-wordmark{width:164px;height:auto;display:block}
.brand h1{font-size:12px;font-weight:700;color:#d2ece1;margin-top:3px}
.brand-subtitle{font-size:9px;letter-spacing:1.5px;font-weight:650;text-transform:uppercase;color:#96b7ad}
.operator-status-card{background:#ffffff05;border-color:#ffffff16;border-radius:10px;padding:13px;margin-top:18px}
.avatar-circle{background:#00c98a20;color:var(--pye-neon);border:1px solid #00c98a33;font-weight:800}
.op-card-info strong{color:#f2f9f6}
.op-card-info span{color:#a8d4d0}
.op-pause-bar{border-top-color:#ffffff12;color:#bfe3df}
.status-dot.online{background:var(--pye-neon)}
.btn-xs-outline{background:#ffffff08;border-color:#ffffff25;color:#d2ece1}
.btn-xs-outline:hover{border-color:var(--pye-neon);color:var(--pye-neon)}
.nav-section{margin-top:18px;gap:2px}
.nav-title{font-size:9px;letter-spacing:1.5px;font-weight:650;color:#96b7ad;padding:0 13px 6px}
.nav-item,.nav-subitem{color:#bfe3df;border:1px solid transparent;font-size:13px;padding:8px 13px;border-radius:8px;position:relative}
.nav-subitem{font-size:12.5px;padding:7px 13px}
.nav-item:hover,.nav-subitem:hover{background:#ffffff09;color:#fff}
.nav-item.active{background:#5cffc412;color:var(--pye-neon);border-color:#5cffc430;font-weight:700}
.nav-item.active::before{content:'';position:absolute;left:-20px;top:8px;bottom:8px;width:3px;background:var(--pye-neon);border-radius:0 3px 3px 0}
.nav-subitem.active{background:#ffffff08;color:#fff;font-weight:700}
.badge{background:#ffffff14;color:#d2ece1;font-weight:700}
.badge-warn{background:#e5c58b26;color:#f1d39b}
.badge-info{background:#5cffc41f;color:var(--pye-neon)}
.badge-success{background:#a5d4b726;color:#b9e6c9}
.badge-danger{background:#e7adb32e;color:#f3b9be}
.sidebar-footer{border-top-color:#ffffff12;padding-top:16px;gap:8px}
.btn-sidebar-action{background:#ffffff06;color:#bfe3df;border:1px solid #ffffff1c;border-radius:8px;font-weight:700;padding:9px 10px}
.btn-sidebar-action:hover{border-color:#5cffc450;color:var(--pye-neon)}
.btn-sidebar-logout{background:transparent;color:#a8d4d0;border:1px solid #ffffff12;border-radius:8px;font-weight:700;padding:9px 10px}
.btn-sidebar-logout:hover{color:#f3b9be;border-color:#e7adb355}

/* ---------- Topo e botões ---------- */
.topbar{background:#fff;border-bottom:1px solid var(--border);min-height:72px;padding:14px 28px}
.search-wrapper input,.filters-bar select{border-color:#cee9de;border-radius:8px;min-height:40px;color:#296862;background:#fff}
.search-wrapper input{background:#f6fbf9}
.search-wrapper input:focus,.filters-bar select:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.reply-box textarea:focus{outline:none;border-color:#2a8d83;box-shadow:0 0 0 3px #00c98a15}
.view-mode-toggle{background:#f2faf7;border-color:#cfebdf}
.view-toggle-btn{color:#4a7d78}
.view-toggle-btn.active{background:var(--pye-navy);color:var(--pye-neon)}
.btn-primary{background:var(--pye-mint);color:var(--pye-navy);border:1px solid var(--pye-mint);font-weight:800;font-size:12px;border-radius:8px;min-height:40px;padding:9px 15px;box-shadow:0 3px 8px #0820290a}
.btn-primary:hover{background:#00b07a;border-color:#00b07a}
.btn-secondary{color:#36736d;border-color:#cfebdf;background:#fff;font-weight:800;font-size:12px;border-radius:8px;min-height:40px}
.btn-secondary:hover{background:#f2faf7;border-color:#8fdbd3}
.btn-sm{min-height:34px;font-size:11px}
.btn-link{color:var(--pye-link);text-decoration:none}
.btn-link:hover{text-decoration:underline}

/* ---------- Conteúdo ---------- */
.module-inner-scroll{padding:30px 32px}
.module-header-banner{position:relative;overflow:hidden;isolation:isolate;padding:27px 30px;border-radius:17px;min-height:120px;margin-bottom:22px;
  background:#082029 url('/brand/elementos/fundos/banner-hero-escuro.svg') no-repeat 100% 50%/cover;border:1px solid #163e40;box-shadow:0 6px 18px #08202908}
.module-header-banner::after{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(var(--pye-neon),#007b57);pointer-events:none}
.module-header-banner h2{color:#f8fcfa;font-weight:800;font-size:clamp(20px,1.8vw,26px);letter-spacing:-.8px;line-height:1.3}
.module-header-banner p{color:#bfd6cf;font-size:13px;line-height:1.7;max-width:720px}
.module-header-banner code{background:#ffffff10;color:var(--pye-neon);border-radius:4px;padding:0 4px}
.module-header-banner .btn-secondary{background:#ffffff09;border-color:#ffffff35;color:#e8f5f0}
.module-header-banner .btn-secondary:hover{background:#ffffff16;border-color:#7cd8cf}

.kpi-card,.dash-card,.org-card,.detail-header-card,.reply-box,.message-bubble,.kanban-col,.cp-list-col,.cp-detail-col,.cp-new-ticket-card{border-color:var(--border);border-radius:14px;box-shadow:0 3px 16px #08202905}
.kpi-card{padding:21px;border-radius:13px}
.kpi-card .kpi-label{color:#558984;font-size:12px}
.kpi-card .kpi-val{font-size:31px;letter-spacing:-.9px;color:var(--pye-navy)}
.kpi-card .kpi-sub{color:#65928d}
.dash-card{padding:22px 24px}
.dash-card h3{font-size:16px;font-weight:800;color:var(--pye-navy)}
.bar-track,.progress-bar-bg{background:#eff8f4}
.bar-fill,.progress-bar-fill{background:var(--pye-mint)}
.org-stat-num{color:var(--pye-link)}
.org-stats-row,.meta-box,.admin-item{background:#f6fbf9}

.ticket-list-pane{background:#fff}
.pane-Action-header{color:#30625d;font-weight:700}
.ticket-card:hover{background:#f6fbf9}
.ticket-card.selected{background:#ecf7f2;border-left:3px solid var(--pye-mint)}
.ticket-id{color:var(--pye-link)}
.ticket-subject{color:var(--pye-navy);font-weight:700}
.ticket-meta{color:#65928d}
.prio-1{background:#edf8f1;color:#21724c}
.prio-2{background:#ecf7f2;color:#36736d}
.prio-3{background:#fff7e8;color:#8c5b16}
.prio-4{background:#fff1f2;color:#aa3c45}
.status-waiting_attendant{background:#fff7e8;color:#8c5b16}
.status-in_progress{background:#e6f7f0;color:#007652}
.status-waiting_customer{background:#f5f0ff;color:#6846a0}
.status-resolved{background:#edf8f1;color:#21724c}
.org-pill{background:#f2faf7;color:#36736d;border:1px solid #dbf0e7}
.mgr-pill{background:#fff7e8;color:#8c5b16}
.kanban-col-header{color:var(--pye-navy)}
.kanban-card{background:#fff}
.kanban-card:hover{box-shadow:0 6px 16px #0820290d}

.stopwatch-bar{background:#082029;border-color:#163e40;color:#bfe3df;border-radius:12px}
.stopwatch-display{background:#ffffff0a;border-color:#5cffc440;color:var(--pye-neon)}
.stopwatch-bar .btn-secondary{background:#ffffff09;border-color:#ffffff30;color:#e8f5f0}
.stopwatch-bar .btn-secondary:hover{border-color:var(--pye-neon)}
.detail-title{color:var(--pye-navy);font-weight:800;letter-spacing:-.5px}
.detail-actions select,.macro-bar select,.reply-box textarea,.form-group input,.form-group select,.form-group textarea{border-color:#cee9de;border-radius:8px;color:#296862}
.meta-label{color:#568f89;font-weight:700;letter-spacing:.5px;font-size:10px}
.meta-value{color:var(--pye-navy)}
.message-bubble.initial{border-left:3px solid var(--pye-mint)}
.message-bubble.internal{background:#fff7e8;border-color:#e5c58b;color:#6b4610}
.bubble-author{color:var(--pye-navy)}
.reply-box h4{color:var(--pye-navy);font-weight:800}
.kb-suggestion-box{background:#ecf7f2;border-color:#d2ece1}
.kb-suggestion-box h5{color:#24726a}
.kb-sug-item{border-color:#dbefe7}
.empty-detail{color:#64948f}

/* ---------- Portal do cliente ---------- */
.cp-header{background:var(--pye-navy);padding:14px 28px;min-height:72px}
.cp-brand{gap:20px}
.cp-brand .brand-wordmark{width:128px;height:auto;display:block;padding-right:20px;border-right:1px solid #ffffff25}
.cp-brand h2{font-size:15px;color:#f8fcfa}
.cp-brand span{color:#a6ceca}
.cp-tab{background:#ffffff08;color:#bfe3df;border:1px solid #ffffff16;font-weight:700}
.cp-tab:hover{color:#fff;background:#ffffff10}
.cp-tab.active{background:#5cffc412;color:var(--pye-neon);border-color:#5cffc430}
.cp-header .btn-secondary{background:#ffffff09;border-color:#ffffff30;color:#e8f5f0;min-height:36px}
.cp-header .btn-secondary:hover{border-color:var(--pye-neon);color:var(--pye-neon)}
.cp-body{padding:26px 28px}
.cp-org-banner{border-left:3px solid var(--pye-mint);border-radius:12px}

/* ---------- Modais e avisos ---------- */
.modal-backdrop{background:#082029a6}
.modal-card{border-radius:16px;box-shadow:0 24px 48px #08202940}
.modal-header h2{color:var(--pye-navy);font-weight:800}
.form-group label{color:#387771;font-weight:700}
.macro-vars-helper{background:#ecf7f2;border-color:#d2ece1}
.chip-btn{border-color:#a5e6cc;color:#0a5c42}
.chip-btn:hover{background:var(--pye-navy);color:var(--pye-neon);border-color:var(--pye-navy)}
.quota-banner{background:#ecf7f2;border-color:#d2ece1;color:#24726a}
.customer-link-box,.custom-fields-box{background:#f6fbf9;border-color:#cfe3da}
.toast{background:var(--pye-navy);color:#ecf7f2;border:1px solid #163e40;border-left:3px solid var(--pye-neon);border-radius:10px}

/* ---------- Tema escuro ---------- */
body[data-theme="dark"] .topbar,body[data-theme="dark"] .ticket-list-pane,body[data-theme="dark"] .kanban-card{background:var(--bg-card)}
body[data-theme="dark"] .search-wrapper input,body[data-theme="dark"] .filters-bar select,body[data-theme="dark"] .btn-secondary{background:var(--bg-app);border-color:var(--border);color:var(--text-main)}
body[data-theme="dark"] .ticket-card:hover,body[data-theme="dark"] .ticket-card.selected,body[data-theme="dark"] .org-stats-row,body[data-theme="dark"] .meta-box,body[data-theme="dark"] .admin-item{background:#0f3340}
body[data-theme="dark"] .ticket-subject,body[data-theme="dark"] .detail-title,body[data-theme="dark"] .kpi-card .kpi-val,body[data-theme="dark"] .dash-card h3,body[data-theme="dark"] .meta-value,body[data-theme="dark"] .bubble-author,body[data-theme="dark"] .reply-box h4,body[data-theme="dark"] .kanban-col-header,body[data-theme="dark"] .modal-header h2{color:var(--text-main)}
body[data-theme="dark"] .ticket-id,body[data-theme="dark"] .org-stat-num{color:var(--pye-neon)}

/* ---------- Telas menores ---------- */
@media (max-width:900px){
  .login-page-container{grid-template-columns:1fr;height:auto;min-height:100vh;overflow:visible}
  body{overflow:auto}
  .login-left{padding:32px 20px}
  .login-right{padding:32px 20px}
  .pye-brand-heading{margin-bottom:32px}
}

/* ---------- Minimalista: ícones de linha no lugar de emojis ---------- */
.nav-text{display:flex;align-items:center;gap:12px;min-width:0}
.nav-item .icon{width:18px;height:18px;flex-shrink:0;opacity:.85}
.nav-item.active .icon{opacity:1}
.nav-item{font-weight:500;min-height:42px}
.nav-subitem{font-weight:500;color:#a8d4d0}
.queue-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin:0 6px 0 6px;background:#96b7ad;flex-shrink:0}
.dot-waiting_attendant{background:#f1d39b}
.dot-in_progress{background:var(--pye-neon)}
.dot-waiting_customer{background:#c8b4e9}
.dot-resolved{background:#7fcf9f}
.btn-sidebar-action,.btn-sidebar-logout{display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600}
.btn-sidebar-action .icon,.btn-sidebar-logout .icon{width:16px;height:16px}
.badge{font-weight:600;font-size:10px;border-radius:5px}
.ticket-subject{font-weight:600}
.kpi-card .kpi-val{font-weight:700}
.dash-card h3,.reply-box h4,.module-header-banner h2{font-weight:700}
.empty-icon{display:none}
.login-hero-desc{margin-bottom:28px}
.nav-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-item,.nav-subitem{gap:8px}
.nav-subitem{min-height:34px;padding:6px 13px}
.nav-item{min-height:40px}
