/* P1 Assessoria — Design System Institucional */
:root{
  --bg:#141414;
  --bg2:#181818;
  --panel:#202020;
  --panel2:#2a2a2a;
  --line:#333333;
  --line2:#404040;
  --ink:#ffffff;
  --ink2:#d4d4d4;
  --ink3:#929292;
  --gold:#ffcc00;
  --gold2:#ffda47;
  --gold-dim:#6b5700;
  --good:#54c78b;
  --danger:#ff7676;
  --blue:#9da7b8;
  --purple:#c6c6c6;
  --r:16px;
  --shadow:0 18px 55px rgba(0,0,0,.24);
}

html{background:var(--bg)}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter','OpenAI Sans',system-ui,sans-serif;
  line-height:1.55;
  letter-spacing:-.006em;
}
h1,h2,h3,h4,.page-head h1,.panel h2,.auth-card h2,.drawer-head h2,.drawer-section h3,.empty-state h2{
  font-family:'Figtree','Inter',system-ui,sans-serif!important;
  font-style:normal!important;
  letter-spacing:-.035em;
}
button,input,select,textarea{font-family:'Inter','OpenAI Sans',system-ui,sans-serif}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* Brand */
.brand{gap:12px;font-family:'Figtree',sans-serif;font-weight:700;letter-spacing:-.02em}
.brand-logo{width:44px;height:44px;display:block;object-fit:contain;border-radius:50%}
.side-brand .brand-logo{width:42px;height:42px}
.side-brand small{font-family:'Inter',sans-serif;font-size:9px;font-weight:600;letter-spacing:.13em;color:var(--ink3)}
.eyebrow{font-family:'Inter',sans-serif;font-size:10px;font-weight:700;letter-spacing:.19em;color:var(--gold)}
.eyebrow:before{width:22px;background:var(--gold)}

/* Authentication */
.auth-screen{background:var(--bg);grid-template-columns:minmax(0,1.04fr) minmax(440px,.96fr)}
.auth-story{
  background:#181818;
  border-right:1px solid var(--line);
  padding:clamp(40px,5vw,78px);
}
.auth-story:before{
  width:520px;height:520px;right:-245px;top:-205px;
  border:1px solid rgba(255,204,0,.12);
  box-shadow:none;background:transparent;
}
.auth-story:after{content:"";position:absolute;left:clamp(40px,5vw,78px);right:clamp(40px,5vw,78px);bottom:clamp(40px,5vw,78px);height:1px;background:var(--line)}
.auth-copy{z-index:1;max-width:720px;margin:auto 0}
.auth-copy h1{
  max-width:10ch;
  font-family:'Figtree',sans-serif!important;
  font-size:clamp(48px,6.2vw,86px);
  font-weight:700;
  line-height:.96;
  letter-spacing:-.06em;
  margin:24px 0 26px;
}
.auth-copy h1 em{display:inline;color:var(--gold);font-style:normal}
.auth-copy p{max-width:54ch;color:var(--ink2);font-size:clamp(15px,1.25vw,18px);line-height:1.65}
.auth-panel{background:var(--bg);padding:clamp(30px,6vw,82px)}
.auth-card{width:min(100%,470px);gap:17px}
.auth-card h2{font-size:clamp(32px,3.6vw,44px);font-weight:700;line-height:1.05;margin-top:10px}
.auth-card>p{color:var(--ink2);line-height:1.65;margin-bottom:8px}
.auth-card label,.stack-form label,.lead-form label{color:var(--ink2);font-size:11px;font-weight:600;letter-spacing:.015em}
.auth-card input,.stack-form input,.stack-form select,.stack-form textarea,.lead-form input,.lead-form select,.lead-form textarea,.toolbar select,.toolbar input,.date-filter input,.inline-form input,.inline-form select,.inline-form textarea{
  border:1px solid var(--line2);
  border-radius:12px;
  background:var(--panel);
  color:var(--ink);
  min-height:46px;
  box-shadow:none;
}
.auth-card input{height:52px}
input::placeholder,textarea::placeholder{color:#727272}
.auth-card input:focus,.stack-form input:focus,.stack-form select:focus,.stack-form textarea:focus,.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus,.toolbar input:focus,.toolbar select:focus{
  border-color:var(--gold);box-shadow:0 0 0 3px rgba(255,204,0,.1);outline:0
}
.auth-card small{color:var(--ink3)}
.auth-link,.reset-local-link{color:var(--gold)}
.form-message{border-color:rgba(255,118,118,.38);background:rgba(255,118,118,.07);color:#ffb6b6}

/* Buttons */
.primary{
  min-height:44px;
  border-radius:11px;
  background:var(--gold);
  color:#141414;
  font-weight:700;
  box-shadow:none;
  transition:background .16s ease,transform .16s ease;
}
.primary:hover{background:var(--gold2);transform:translateY(-1px)}
.primary:active{transform:none}
.secondary{border-color:var(--line2);background:transparent;color:var(--ink2);border-radius:11px}
.secondary:hover{border-color:#5a5a5a;color:var(--ink);background:var(--panel)}
.icon-button,.mobile-menu{border-color:var(--line);background:var(--panel);color:var(--ink2)}

/* Navigation shell */
.sidebar{width:260px;padding:24px 18px;background:#171717;border-right:1px solid var(--line)}
.side-brand{padding:0 7px 24px;border-bottom:1px solid var(--line)}
.side-nav{gap:4px;margin-top:24px}
.side-nav button{
  min-height:44px;padding:11px 13px;border-radius:10px;
  color:var(--ink3);font-size:13px;font-weight:500;transition:.15s ease;
}
.side-nav button span{color:var(--ink3);font-family:'Inter',sans-serif;font-size:13px}
.side-nav button:hover{background:#202020;color:var(--ink)}
.side-nav button.is-active{background:var(--panel2);color:var(--ink);box-shadow:inset 3px 0 var(--gold)}
.side-nav button.is-active span{color:var(--gold)}
.scope-card{background:var(--panel);border-color:var(--line);border-radius:14px;padding:16px}
.scope-card span{font-family:'Inter',sans-serif;color:var(--gold);letter-spacing:.14em}
.scope-card strong{font-family:'Figtree',sans-serif;font-size:16px;font-weight:600;margin:8px 0 5px}
.scope-card p{color:var(--ink3);line-height:1.5}
.app-column{margin-left:260px}
.topbar{height:76px;padding:0 clamp(24px,4vw,56px);background:rgba(20,20,20,.94);border-color:var(--line);backdrop-filter:blur(18px)}
.top-context span{font-family:'Inter',sans-serif;color:var(--gold);letter-spacing:.14em}
.top-context strong{font-family:'Figtree',sans-serif;font-size:14px;font-weight:600}
.user-menu strong{font-family:'Figtree',sans-serif;font-weight:600}
.avatar{background:var(--gold);color:#141414;font-family:'Figtree',sans-serif;font-weight:700}

/* Content hierarchy */
main{padding:clamp(28px,4vw,54px);max-width:1800px;margin:0 auto}
.page-head{margin-bottom:32px;gap:28px}
.page-head h1{font-size:clamp(34px,4vw,52px);font-weight:700;line-height:1;margin:13px 0 10px}
.page-head p{color:var(--ink2);max-width:65ch;line-height:1.65}
.toolbar{gap:10px;margin-bottom:22px}
.toolbar select,.toolbar input{height:46px;background:var(--panel);border-color:var(--line)}
.search span{color:var(--ink3)}
.toggle{border-color:var(--line);background:var(--panel);border-radius:11px;color:var(--ink2)}

/* Panels, metrics and analytical components */
.panel,.metric,.kanban-column,.lead-card,.empty-state,.modal,.drawer,.detail-item{
  background:var(--panel);
  border-color:var(--line);
  box-shadow:none;
}
.panel{border-radius:var(--r);padding:22px}
.panel header{padding-bottom:17px;margin-bottom:18px;border-color:var(--line)}
.panel header span{font-family:'Inter',sans-serif;color:var(--gold);letter-spacing:.14em}
.panel h2{font-size:20px;font-weight:600;letter-spacing:-.025em}
.metric-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:20px}
.metric{min-height:128px;padding:20px;border-radius:14px;background:var(--panel)}
.metric span{font-family:'Inter',sans-serif;color:var(--ink3);letter-spacing:.11em}
.metric strong{font-family:'Figtree',sans-serif;font-size:31px;font-weight:700;color:var(--ink);letter-spacing:-.045em}
.metric:first-child strong{color:var(--gold)}
.dashboard-grid{gap:14px}
.bar-track{background:var(--panel2)}
.bar-track i{background:var(--gold)}
.bar-row b,.column-value,.card-foot b{font-family:'Inter',sans-serif}
.rank-row{border-color:var(--line);padding:12px 0}
.date-filter button{border-color:var(--gold-dim);background:transparent;color:var(--gold);border-radius:10px}

/* Kanban */
.kanban{gap:14px;padding-bottom:24px}
.kanban-column{width:310px;min-width:310px;padding:13px;border-radius:15px;background:#191919}
.column-head{padding:4px 4px 14px;gap:9px}
.column-head h3{font-family:'Figtree',sans-serif;font-weight:600;letter-spacing:-.01em}
.column-head b{background:var(--panel2);color:var(--ink2);font-family:'Inter',sans-serif}
.stage-dot{width:7px;height:7px}
.card-list{gap:10px}
.lead-card{padding:15px;border-radius:12px;transition:border-color .15s ease,transform .15s ease}
.lead-card:hover{border-color:#515151;transform:translateY(-1px)}
.card-top strong{font-family:'Figtree',sans-serif;font-size:14px;font-weight:600}
.priority,.chip{font-family:'Inter',sans-serif}
.priority{background:var(--panel2);color:var(--ink3)}
.priority.high{background:rgba(255,204,0,.09);color:var(--gold)}
.chip{border-color:var(--line);color:var(--ink2);background:#1b1b1b}
.chip.overdue{color:var(--danger);border-color:rgba(255,118,118,.35)}
.card-foot{border-color:var(--line)}
.card-foot b{color:var(--gold)}
.card-list.is-over{outline-color:var(--gold)}
.empty-state{background:#181818;border-style:dashed}
.empty-state>span{font-family:'Figtree',sans-serif;color:var(--gold)}
.empty-state p,.empty-inline{color:var(--ink3)}

/* Forms, lists and admin */
.settings-grid{gap:16px}
.stack-form{gap:13px}
.stack-form input[type="color"]{background:var(--panel2)}
.campaign-row,.product-row,.timeline-item,.task-item{border-color:var(--line)}
.campaign-row i,.product-row-head i{box-shadow:none}
.campaign-row strong,.product-row-head strong{font-family:'Figtree',sans-serif;font-weight:600}
.campaign-row b,.product-row-head b{font-family:'Inter',sans-serif}
.stage-preview span{border-color:var(--line);background:#191919;color:var(--ink2);font-family:'Inter',sans-serif}

/* Modal and drawer */
.modal-backdrop,.drawer-backdrop{background:rgba(0,0,0,.74);backdrop-filter:blur(6px)}
.modal{background:#1a1a1a;border-color:var(--line2);border-radius:18px;box-shadow:var(--shadow)}
.modal>header{border-color:var(--line);padding:22px 24px}
.modal>header span,.drawer-kicker{font-family:'Inter',sans-serif;color:var(--gold)}
.modal>header h2{font-family:'Figtree',sans-serif;font-weight:700}
.drawer{background:#181818;border-color:var(--line2);box-shadow:-24px 0 70px rgba(0,0,0,.35)}
.drawer-head{padding:26px;border-color:var(--line)}
.drawer-head h2{font-weight:700}
.drawer-body{padding:24px}
.contact-actions a{border-color:var(--line);background:var(--panel);color:var(--ink2);border-radius:9px}
.contact-actions a:hover{border-color:var(--gold-dim);color:var(--gold)}
.detail-item{border-radius:11px;background:var(--panel)}
.detail-item span{color:var(--ink3)}
.drawer-section{border-color:var(--line)}

/* Feedback */
.toast{background:var(--panel2);border-color:#4a4a4a;border-radius:12px;box-shadow:var(--shadow)}

@media(max-width:760px){
  .auth-screen{grid-template-columns:1fr}
  .auth-panel{background:var(--bg)}
  .brand-logo{width:42px;height:42px}
  .sidebar{width:260px}
  .app-column{margin-left:0}
  main{padding:24px 16px}
  .topbar{height:70px}
  .page-head{margin-bottom:26px}
  .panel{padding:18px}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
