:root{
  --green:#145c3a;
  --green2:#1c7b4d;
  --green3:#2ea463;
  --lime:#a9cf3a;
  --blue:#1a4ea1;
  --blue2:#2b6ed6;
  --bg:#eef4f0;
  --bg-soft:#f7faf8;
  --card:#ffffff;
  --text:#17211c;
  --muted:#6b7870;
  --border:#dce8e1;
  --border-strong:#c8d8cf;
  --danger:#b83838;
  --warning:#b47612;
  --shadow:0 18px 40px rgba(18,52,34,.08);
  --shadow-soft:0 8px 18px rgba(17,51,33,.05);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;background:linear-gradient(180deg,#eef4f0 0%,#f8fbf9 100%);color:var(--text)}
a{color:var(--green2);text-decoration:none}
button,input,select,textarea{font:inherit}

.app-shell{display:flex;min-height:100vh}
.sidebar{
  width:286px;
  background:linear-gradient(180deg,#0f3d2b 0%,#145c3a 58%,#124c32 100%);
  color:#fff;
  position:fixed;top:0;bottom:0;left:0;
  padding:18px 16px;
  display:flex;flex-direction:column;z-index:20;
  box-shadow:22px 0 40px rgba(9,37,24,.12)
}
.brand{display:flex;flex-direction:column;gap:10px;align-items:flex-start;padding:4px 8px 14px}
.brand-logo-wrap{
  width:100%;background:rgba(255,255,255,.98);
  border-radius:18px;padding:16px 14px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 18px 30px rgba(0,0,0,.12)
}
.brand-logo{display:block;width:100%;max-width:214px;height:auto;object-fit:contain}
.brand small{display:block;color:#c8ddd1;font-size:12px;margin-left:2px;letter-spacing:.2px}
.workspace-card{
  background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.05));
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;padding:14px 14px 13px;margin:4px 8px 18px;
}
.workspace-card .eyebrow{color:#cfe4d8;font-size:10px;margin-bottom:6px}
.workspace-card strong{display:block;font-size:15px;margin-bottom:5px}
.workspace-card p{margin:0;color:#dbe9e2;font-size:12px;line-height:1.45}
.sidebar nav{display:flex;flex-direction:column;gap:7px;padding:0 4px}
.sidebar nav a{
  color:#d7ebe0;padding:12px 13px;border-radius:12px;
  display:flex;gap:11px;align-items:center;font-size:14px;font-weight:600;
  border:1px solid transparent;transition:.18s ease
}
.sidebar nav a:hover,.sidebar nav a.active{
  background:rgba(255,255,255,.11);color:#fff;border-color:rgba(255,255,255,.10);
  transform:translateX(1px)
}
.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding:16px 8px 0}
.sidebar-footer a,.link-button{font-size:12px;color:#d5e7dd;background:none;border:0;padding:4px 0;cursor:pointer}
.link-button:hover,.sidebar-footer a:hover{color:#fff}

.legacy-app-main{margin-left:286px;min-width:0;width:calc(100% - 286px)}
.topbar{
  min-height:76px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border);display:flex;align-items:center;
  padding:0 28px;position:sticky;top:0;z-index:10;gap:16px;
  box-shadow:0 8px 24px rgba(22,54,37,.04)
}
.topbar-main{display:flex;flex-direction:column;gap:4px}
.topbar b,.topbar small{display:block}
.topbar b{font-size:18px}
.topbar small{font-size:12px;color:var(--muted);margin-top:0}
.top-actions{margin-left:auto;color:var(--muted);font-size:13px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.top-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border-radius:999px;background:#eef6f1;border:1px solid #d7e9df;color:#285c41;font-weight:700;font-size:12px}
.top-date{font-weight:600;color:#607067}
.menu-btn{display:none;background:none;border:0;font-size:22px}
.content{padding:28px;max-width:1540px;margin:auto}

.page-title{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}
.page-title h1{margin:4px 0 6px;font-size:29px;letter-spacing:-.3px}
.page-title p{margin:0;color:var(--muted);font-size:14px;line-height:1.45;max-width:760px}
.back{font-size:13px;color:var(--muted)}
.actions{display:flex;gap:9px;flex-wrap:wrap}
.btn{
  border:1px solid var(--border-strong);background:white;color:#25352c;border-radius:10px;
  padding:10px 14px;cursor:pointer;font-weight:700;font-size:13px;display:inline-flex;
  align-items:center;justify-content:center;gap:6px;transition:.18s ease;box-shadow:var(--shadow-soft)
}
.btn:hover{border-color:#9eb6a8;transform:translateY(-1px)}
.btn.primary{background:linear-gradient(135deg,var(--green2),var(--green3));border-color:var(--green2);color:#fff}
.btn.danger{color:var(--danger)}
.btn.ghost{background:transparent;box-shadow:none}
.btn.small{padding:6px 9px;font-size:12px}
.btn.full{width:100%;padding:12px}

.alert{padding:12px 14px;border-radius:10px;margin-bottom:16px;font-size:13px;background:#edf5ef;border:1px solid #cce1d3}
.alert.danger{background:#fff0f0;border-color:#efc3c3;color:#852a2a}
.alert.warning{background:#fff7e9;border-color:#efdcb4;color:#76500d}
.alert.success{background:#eef9f1;border-color:#cae7d2;color:#176137}

.card{background:var(--card);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:20px}
.card.highlight{border-left:4px solid var(--lime)}
.card-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px}
.card-head h2{font-size:16px;margin:0}
.card-head span,.card-head a{font-size:12px;color:var(--muted)}

.hero-banner{
  background:radial-gradient(circle at top right,rgba(42,164,99,.23),transparent 32%),
             linear-gradient(130deg,#103c2a 0%,#145c3a 55%,#1b6f47 100%);
  color:#fff;border-radius:22px;padding:22px 24px;display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(250px,.82fr);gap:20px;
  box-shadow:0 25px 45px rgba(13,47,31,.15);margin-bottom:18px;overflow:hidden;position:relative
}
.hero-banner:after{
  content:"";position:absolute;right:-40px;bottom:-55px;width:200px;height:200px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.14),rgba(255,255,255,0) 68%)
}
.hero-copy{position:relative;z-index:1}
.hero-copy .eyebrow{color:#d9ede1;margin-bottom:8px;font-size:11px}
.hero-copy h2{margin:0 0 9px;font-size:24px;line-height:1.12;letter-spacing:-.5px}
.hero-copy p{margin:0;color:#e2efe8;max-width:760px;line-height:1.55;font-size:14px}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.hero-actions .btn{box-shadow:none}
.hero-actions .btn:not(.primary){background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.15);color:#fff}
.hero-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:start;position:relative;z-index:1}
.mini-stat{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:13px 14px}
.mini-stat span{display:block;color:#d7e9e0;font-size:12px}
.mini-stat strong{display:block;font-size:24px;margin-top:4px}
.mini-stat small{display:block;color:#d4e5dc;margin-top:4px;font-size:11px}

.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:17px}
.kpi{background:white;border:1px solid var(--border);border-radius:16px;padding:18px;border-top:4px solid var(--green2);box-shadow:var(--shadow-soft)}
.kpi.warn{border-top-color:#d49a30}.kpi.ok{border-top-color:#6ba13a}
.kpi span,.kpi small{display:block;color:var(--muted);font-size:12px}.kpi strong{font-size:31px;display:block;margin:6px 0 2px}
.grid-2{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.82fr);gap:17px}
.stack{display:flex;flex-direction:column;gap:17px}
.table-wrap{overflow:auto}
.table-card{padding:0}
table{border-collapse:collapse;width:100%;font-size:13px}th{color:#617067;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.4px;background:#f9fbfa}th,td{padding:13px 14px;border-bottom:1px solid #e9eeeb;vertical-align:middle}tbody tr:hover{background:#fbfdfc}td small{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.badge{display:inline-flex;border-radius:999px;background:#edf2ef;padding:5px 9px;font-size:11px;color:#53625a;white-space:nowrap;font-weight:700}
.badge.required{background:#eaf5ed;color:#19633a}
.status-list{display:flex;flex-direction:column;gap:2px}.status-list div{display:flex;justify-content:space-between;padding:11px 4px;border-bottom:1px solid #edf1ef;font-size:13px}.status-list b{font-size:15px}

.filters{background:white;border:1px solid var(--border);border-radius:16px;padding:12px;display:flex;gap:10px;margin-bottom:17px;align-items:center;box-shadow:var(--shadow-soft)}
.filters input,.filters select{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:#fff;min-width:180px}
.filters input{flex:1}
.check-inline{display:flex!important;align-items:center!important;gap:7px!important;font-size:12px!important;color:var(--muted);white-space:nowrap}.check-inline input{width:auto!important;margin:0!important}

.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.service-card{background:white;border:1px solid var(--border);border-radius:18px;padding:18px;color:var(--text);transition:.16s;box-shadow:var(--shadow-soft)}
.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#bfd4c6}.service-card.inactive{opacity:.55}
.service-card .category{font-size:10px;text-transform:uppercase;color:var(--green2);font-weight:800;letter-spacing:.45px}.service-card h3{font-size:16px;line-height:1.35;margin:8px 0 16px}.service-meta{display:flex;justify-content:space-between;align-items:center;gap:8px}.service-meta b{color:var(--green);font-size:15px}.service-meta span,.doc-count{font-size:11px;color:var(--muted)}.doc-count{border-top:1px solid #edf1ef;margin-top:12px;padding-top:10px}

.detail-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);gap:14px;margin-bottom:17px}.detail-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.eyebrow{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.price-big{font-weight:800;font-size:25px;color:var(--green);margin-top:6px}.detail-grid h3{font-size:16px;margin:8px 0 0}.detail-main{align-items:start}
.doc-list,.checklist{display:flex;flex-direction:column;gap:8px}.doc-row{display:flex;align-items:center;gap:10px;border:1px solid #e8eeea;border-radius:12px;padding:12px;background:#fbfdfc}.doc-row>div{flex:1}.doc-row b,.doc-row small{display:block}.doc-row small{font-size:11px;color:var(--muted);margin-top:3px}.doc-icon{width:34px;height:34px;border-radius:10px;background:#edf6f0;color:var(--green2);display:grid;place-items:center}.prose{white-space:pre-line;line-height:1.62;font-size:13px;color:#3d4b43}.empty{padding:28px;text-align:center;color:var(--muted);font-size:13px}.empty.important{background:#fbfcfb;border:1px dashed #cfdbd3;border-radius:10px;padding:18px}

.form-card{background:white;border:1px solid var(--border);border-radius:18px;padding:22px;max-width:1050px;box-shadow:var(--shadow)}.form-card.narrow{max-width:560px;display:flex;flex-direction:column;gap:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.span-2{grid-column:span 2}.form-card label{font-size:12px;font-weight:700;color:#415048;display:flex;flex-direction:column;gap:6px}.form-card input,.form-card select,.form-card textarea{width:100%;border:1px solid #d4dfd8;border-radius:10px;padding:11px;background:#fff;color:var(--text);outline:none}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{border-color:#6ea888;box-shadow:0 0 0 3px rgba(37,126,76,.09)}.check-card{justify-content:center!important;display:flex!important;flex-direction:row!important;align-items:center;background:#f8faf9;border:1px solid var(--border);border-radius:10px;padding:10px}.check-card input{width:auto}.section-title{display:flex;justify-content:space-between;align-items:center;margin:25px 0 12px;padding-top:18px;border-top:1px solid #e7ede9}.section-title h2{margin:0;font-size:16px}.section-title p{margin:4px 0 0;color:var(--muted);font-size:12px}.doc-edit-row{display:grid;grid-template-columns:1.4fr 1.2fr auto auto;gap:8px;margin-bottom:8px;align-items:center}.doc-edit-row input{border:1px solid #d4dfd8;border-radius:10px;padding:9px}.form-actions{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid #e7ede9;margin-top:22px;padding-top:17px}.notice{background:#f1f7f3;color:#506159;font-size:12px;padding:12px;border-radius:10px;margin-top:18px}.check-doc{display:flex;flex-direction:row!important;align-items:flex-start!important;gap:10px!important;padding:10px;border:1px solid #e5ece8;border-radius:10px;cursor:pointer;background:#fbfdfc}.check-doc input{width:auto;margin-top:3px}.check-doc span{flex:1}.check-doc b,.check-doc small{display:block}.check-doc small{font-weight:400;color:var(--muted);font-size:11px;margin-top:2px}.checklist{margin-bottom:13px}.info-list{margin:0}.info-list div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #edf1ef;padding:9px 0}.info-list dt{color:var(--muted);font-size:12px}.info-list dd{margin:0;font-size:13px;font-weight:600;text-align:right}.muted{color:var(--muted);font-size:12px}

.login-page{
  min-height:100vh;
  background:radial-gradient(circle at top left,rgba(78,168,114,.18),transparent 24%),
             radial-gradient(circle at bottom right,rgba(31,90,174,.14),transparent 26%),
             linear-gradient(140deg,#0e3827,#145c3a 52%,#1f7b4d 100%);
  display:grid;place-items:center;padding:24px
}
.login-shell{width:min(1140px,100%);display:grid;grid-template-columns:minmax(360px,1.02fr) minmax(360px,.9fr);gap:22px;align-items:stretch}
.login-showcase{
  padding:30px 30px;border-radius:28px;color:#fff;position:relative;overflow:hidden;
  background:linear-gradient(155deg,rgba(255,255,255,.11),rgba(255,255,255,.05));
  border:1px solid rgba(255,255,255,.10);box-shadow:0 28px 50px rgba(0,0,0,.14)
}
.login-showcase:before{content:"";position:absolute;right:-55px;top:-30px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.14),rgba(255,255,255,0) 65%)}
.login-logo-card{display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.98);padding:16px 18px;border-radius:24px;box-shadow:0 15px 28px rgba(0,0,0,.10);margin-bottom:18px}
.login-showcase .login-logo{width:min(320px,100%);display:block;filter:drop-shadow(0 4px 8px rgba(0,0,0,.03))}
.login-eyebrow{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);font-size:12px;font-weight:700;margin-bottom:12px}
.login-showcase h1{font-size:35px;line-height:1.06;margin:0 0 10px;letter-spacing:-.9px;max-width:520px}
.login-showcase p{margin:0;color:#e7f2ed;line-height:1.58;max-width:560px}
.login-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
.login-feature{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.10);border-radius:18px;padding:14px 14px}
.login-feature b{display:block;font-size:14px;margin-bottom:4px}
.login-feature small{display:block;color:#deece5;line-height:1.45}
.login-card{
  width:100%;background:rgba(255,255,255,.98);border-radius:28px;padding:30px 30px;
  box-shadow:0 28px 60px rgba(0,0,0,.15);display:flex;flex-direction:column;justify-content:center
}
.login-card .card-kicker{font-size:12px;color:#607067;text-transform:uppercase;letter-spacing:.7px;font-weight:800;margin-bottom:8px}
.login-card h2{margin:0 0 8px;font-size:30px;letter-spacing:-.5px}
.login-card .lead{margin:0 0 22px;color:var(--muted);line-height:1.5}
.login-card form{display:flex;flex-direction:column;gap:14px}.login-card label{font-size:12px;font-weight:700;display:flex;flex-direction:column;gap:6px}.login-card input{border:1px solid #d5e0d8;border-radius:12px;padding:13px 14px}.login-card input:focus{border-color:#6ea888;box-shadow:0 0 0 3px rgba(37,126,76,.09);outline:none}.login-card>.muted{display:block;text-align:center;margin-top:18px}
.login-footer-note{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:18px;color:var(--muted);font-size:12px}

.error-page{text-align:center;padding:90px 20px}.error-page>strong{font-size:70px;color:#b9c8bf}.error-page h1{font-size:20px;margin-bottom:20px}

/* Perfil e avatares */
.avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:50%;object-fit:cover;background:#dcebe2;color:#174d34;font-weight:800;letter-spacing:.3px;border:2px solid rgba(20,92,58,.10)}
.avatar-sm{width:40px;height:40px;font-size:12px}.avatar-md{width:50px;height:50px;font-size:14px}.avatar-xl{width:104px;height:104px;font-size:26px}
.avatar-fallback{background:linear-gradient(145deg,#e4f0e9,#cadfd2)}
.user-mini{display:flex;align-items:center;gap:10px;margin-bottom:10px;padding:10px 11px;border-radius:14px;color:#fff!important;transition:.15s;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}.user-mini:hover{background:rgba(255,255,255,.08)}.user-mini>span{min-width:0}.user-mini b,.user-mini small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-mini b{font-size:13px;color:#fff}.user-mini small{color:#b7d1c3;margin-top:2px;font-size:10px}.user-mini .avatar{border-color:rgba(255,255,255,.22)}
.sidebar-user-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-left:0}.sidebar-user-actions form{margin:0}.sidebar-user-actions a,.sidebar-user-actions .link-button{font-size:11px;display:inline-flex;align-items:center;justify-content:center;padding:9px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.06);width:100%}
.user-table-name{display:flex;align-items:center;gap:10px;min-width:190px}.user-table-name>div{min-width:0}.user-table-name b{display:block}.user-table-name small{margin-top:1px}.row-actions{display:flex;justify-content:flex-end;gap:6px;align-items:center}.row-actions form{margin:0}
.profile-photo-editor{display:flex;align-items:center;gap:18px;padding:14px;border:1px solid var(--border);border-radius:14px;background:#f8fbf9}.profile-photo-preview{display:flex;align-items:center;justify-content:center;flex:0 0 auto}.profile-photo-copy{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.profile-photo-copy>b{font-size:13px}.profile-photo-copy>small{font-size:11px;color:var(--muted);line-height:1.4}.file-label{display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center;background:#fff;border:1px solid #cddbd2;border-radius:10px;padding:8px 10px!important;cursor:pointer;font-size:12px!important;color:#315141!important}.file-label:hover{border-color:#8fb29d}.file-label input{display:none}.remove-photo{margin-top:1px}.profile-photo-editor-self{margin-bottom:2px}

@media(max-width:1180px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-banner{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr}.login-showcase h1{font-size:31px}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.legacy-app-main{margin-left:0;width:100%}.menu-btn{display:block;margin-right:4px}.content{padding:18px}.page-title{flex-direction:column}.kpi-grid,.grid-2,.service-grid,.detail-grid,.detail-grid.four,.form-grid,.login-features{grid-template-columns:1fr}.span-2{grid-column:span 1}.filters{flex-direction:column;align-items:stretch}.filters input,.filters select{width:100%}.doc-edit-row{grid-template-columns:1fr}.top-actions{display:none}.actions{width:100%}.actions .btn{flex:1}.topbar{padding:0 18px}.topbar b{font-size:17px}.login-card,.login-showcase{padding:24px}.login-showcase .login-logo{width:min(280px,100%)}.login-showcase h1{font-size:28px}.hero-copy h2{font-size:24px}}
@media(max-width:560px){.profile-photo-editor{align-items:flex-start;flex-direction:column}.avatar-xl{width:88px;height:88px}.row-actions{justify-content:flex-start}.login-page{padding:14px}.login-card,.login-showcase{border-radius:22px;padding:20px}.hero-banner{padding:20px}.sidebar-user-actions{grid-template-columns:1fr}}


/* Atualização automática - Atendimentos */
.live-refresh{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:8px 11px;border-radius:999px;background:#eef6f1;border:1px solid #d7e9df;color:#35624a;font-size:11px;font-weight:700;white-space:nowrap;transition:.18s ease}
.live-refresh-dot{width:8px;height:8px;border-radius:50%;background:#2ea463;box-shadow:0 0 0 4px rgba(46,164,99,.10)}
.live-refresh.refreshing .live-refresh-dot{animation:livePulse .8s ease-in-out infinite}
.live-refresh.offline{background:#fff7e9;border-color:#efdcb4;color:#76500d}
.live-refresh.offline .live-refresh-dot{background:#d49a30;box-shadow:0 0 0 4px rgba(212,154,48,.10)}
@keyframes livePulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.72);opacity:.48}}
@media(max-width:760px){.live-refresh{order:3;width:100%;justify-content:center}}

/* Clientes e importação */
.client-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:17px;max-width:760px}
.client-summary-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:17px 18px;box-shadow:var(--shadow-soft);border-left:4px solid var(--green2)}
.client-summary-card.accent{border-left-color:var(--blue2)}
.client-summary-card span,.client-summary-card small{display:block;color:var(--muted);font-size:12px}
.client-summary-card strong{display:block;font-size:24px;margin:5px 0 2px;color:var(--text)}
.import-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.import-step{display:flex;gap:14px;align-items:flex-start}
.import-step-number{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border-radius:12px;background:#e8f4ec;color:var(--green);font-weight:900}
.import-step h2{font-size:16px;margin:1px 0 7px}.import-step p{font-size:12px;color:var(--muted);line-height:1.55;margin:0 0 12px}
.import-upload-card{max-width:760px}.client-picker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center}
.client-picker-row .btn{white-space:nowrap}
@media(max-width:980px){.import-grid{grid-template-columns:1fr}.client-summary-grid{grid-template-columns:1fr}}
@media(max-width:760px){.client-picker-row{grid-template-columns:1fr}.client-picker-row .btn{width:100%}}

/* ===== NTW Agro v2.0 - Gestão ===== */
.management-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}
.management-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px;color:var(--text);box-shadow:var(--shadow-soft);transition:.16s}
.management-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.management-card span,.management-card small{display:block;color:var(--muted);font-size:12px}.management-card b{display:block;font-size:18px;margin:5px 0}
.agenda-list{display:flex;flex-direction:column}.agenda-list>div{padding:11px 2px;border-bottom:1px solid #edf1ef}.agenda-list b,.agenda-list small{display:block}.agenda-list small{color:var(--muted);font-size:11px;margin-top:3px}
.owner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.owner-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px;color:var(--text);box-shadow:var(--shadow-soft)}.owner-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.owner-card h3{margin:7px 0 5px}.owner-card p{margin:0 0 15px;color:var(--muted);font-size:12px}.owner-card small{color:var(--muted)}
.entity-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #edf1ef}.entity-row b,.entity-row small{display:block}.entity-row small{color:var(--muted);font-size:11px;margin-top:3px}
.process-card{margin-top:17px}.process-list{display:flex;flex-direction:column;gap:10px}.process-step{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:12px;background:#fbfdfc}.process-step>div{flex:1}.process-step b{margin-right:8px}.process-step p{margin:6px 0 0;color:#53625a;font-size:12px;line-height:1.5}.step-number{display:inline-flex;width:30px;height:30px;border-radius:50%;align-items:center;justify-content:center;background:#e7f3eb;color:var(--green2);font-weight:800;flex:0 0 auto}.steps-editor{display:flex;flex-direction:column;gap:8px}.step-edit-row{display:grid;grid-template-columns:34px 1.2fr .7fr 1.6fr auto;gap:8px;align-items:center}.step-edit-row input,.step-edit-row textarea{border:1px solid #d4dfd8;border-radius:10px;padding:9px;width:100%}.step-handle{display:grid;place-items:center;color:#8aa095;font-weight:900}
.process-checklist{display:flex;flex-direction:column;gap:8px;margin-bottom:13px}.process-check{display:grid;grid-template-columns:auto auto 1fr;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:12px;background:#fbfdfc;cursor:pointer}.process-check input{margin-top:9px}.process-check span:last-child b,.process-check span:last-child small{display:block}.process-check span:last-child small{color:var(--muted);font-size:11px;margin-top:3px}.process-check.done{background:#eff8f2;border-color:#c9e4d2}.process-check.done b{text-decoration:line-through;color:#557064}
.whatsapp{border-color:#bfe2c9!important;color:#17743c!important;background:#eef9f1!important}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;background:#fff;border:1px solid var(--border);border-radius:14px;padding:10px 12px}.calendar-toolbar h2{margin:0;font-size:18px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#dce8e1;border:1px solid #dce8e1;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-soft)}.calendar-head{background:#eef6f1;padding:10px;text-align:center;font-size:11px;text-transform:uppercase;font-weight:800;color:#587066}.calendar-day{background:#fff;min-height:126px;padding:8px;position:relative}.calendar-day.empty-day{background:#f7faf8}.day-number{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border-radius:8px;background:#f1f6f3;font-weight:800;font-size:12px;margin-bottom:6px}.calendar-event{display:block;padding:6px 7px;border-radius:8px;background:#eef6f1;color:#234c35;font-size:11px;margin:4px 0;line-height:1.3;border-left:3px solid var(--green2)}.calendar-event.art{background:#eef3fb;color:#234b83;border-left-color:var(--blue2)}.calendar-event small{display:block;font-size:9px;margin-top:2px;color:inherit;opacity:.75}
.marketing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.marketing-card .form-grid.compact{gap:10px;margin-bottom:12px}.marketing-card label{font-size:11px;font-weight:700;color:#415048;display:flex;flex-direction:column;gap:5px}.marketing-card input,.marketing-card select,.marketing-card textarea{width:100%;border:1px solid #d4dfd8;border-radius:9px;padding:9px;background:#fff}
.goal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.goal-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px;color:var(--text);box-shadow:var(--shadow-soft)}.goal-card h2{font-size:16px;margin:4px 0}.goal-numbers{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:15px 0 7px}.goal-numbers b{font-size:14px}.goal-numbers span{font-size:12px;color:var(--muted)}.progress{height:9px;background:#edf2ef;border-radius:99px;overflow:hidden;margin-bottom:10px}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--green2),var(--green3));border-radius:99px}.goal-card>small{color:var(--muted)}
@media(max-width:1180px){.management-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-grid,.goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.marketing-grid{grid-template-columns:1fr}.calendar-day{min-height:100px}.step-edit-row{grid-template-columns:28px 1fr 1fr}.step-edit-row textarea{grid-column:2 / span 2}.step-edit-row button{grid-column:3}}
@media(max-width:760px){.management-grid,.owner-grid,.goal-grid{grid-template-columns:1fr}.calendar{min-width:850px}.calendar-toolbar{position:sticky;left:0}.calendar-day{min-height:115px}.content:has(.calendar){overflow-x:auto}.step-edit-row{grid-template-columns:1fr}.step-edit-row .step-handle{display:none}.step-edit-row textarea,.step-edit-row button{grid-column:auto}}

/* ===== NTW Agro v3.0 - Portal modular ===== */
.portal-shell{min-height:100vh;background:linear-gradient(180deg,#eef5f1 0%,#f8fbf9 100%)}
.portal-header{height:86px;position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:24px;padding:0 30px;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);box-shadow:0 8px 28px rgba(20,64,41,.05)}
.portal-brand{display:flex;align-items:center;gap:12px;color:var(--text);min-width:245px}.portal-brand-logo{display:flex;align-items:center;justify-content:center;width:118px;height:56px;border-radius:14px;background:#fff;border:1px solid var(--border);padding:7px 9px}.portal-brand-logo img{width:100%;height:100%;object-fit:contain}.portal-brand-copy b,.portal-brand-copy small{display:block}.portal-brand-copy b{font-size:16px}.portal-brand-copy small{font-size:11px;color:var(--muted);margin-top:2px}
.portal-page-context{display:flex;flex-direction:column;gap:2px;border-left:1px solid var(--border);padding-left:22px}.portal-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);font-weight:800}.portal-page-context strong{font-size:18px}
.portal-header-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.portal-module-button{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:11px;border:1px solid var(--border);background:#f8fbf9;color:#244d36;font-size:12px;font-weight:800}.portal-module-button:hover{background:#eef6f1}.portal-date{font-size:12px;color:var(--muted);font-weight:700;padding:0 4px}.portal-user{display:flex;align-items:center;gap:9px;padding:6px 9px;border-radius:13px;color:var(--text);border:1px solid transparent}.portal-user:hover{background:#f5f9f6;border-color:var(--border)}.portal-user>span b,.portal-user>span small{display:block;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-user>span b{font-size:12px}.portal-user>span small{font-size:10px;color:var(--muted);margin-top:1px}.portal-logout-form{margin:0}.portal-logout{border:0;background:#f3f7f4;color:#587066;border-radius:10px;padding:9px 11px;font-size:11px;font-weight:800;cursor:pointer}.portal-logout:hover{background:#fff0f0;color:#9c3434}
.portal-main{width:100%;min-width:0}.portal-content{max-width:1600px;margin:0 auto;padding:30px 34px 46px}

.portal-welcome{display:flex;align-items:center;justify-content:space-between;gap:24px;background:radial-gradient(circle at 90% 0%,rgba(72,178,112,.24),transparent 34%),linear-gradient(130deg,#103d2b,#155f3c 58%,#1d7b4d);border-radius:24px;padding:27px 30px;color:#fff;box-shadow:0 22px 42px rgba(17,66,42,.15);margin-bottom:24px}.portal-welcome-eyebrow{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.85px;color:#d7ebdf;font-weight:800;margin-bottom:7px}.portal-welcome h1{margin:0 0 7px;font-size:30px;letter-spacing:-.7px}.portal-welcome p{margin:0;color:#e3efe8;line-height:1.5;max-width:760px;font-size:14px}.portal-welcome-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.12);padding:11px 14px;border-radius:999px;white-space:nowrap;font-size:12px;font-weight:800}.portal-welcome-badge span{color:#a9e4bc}
.module-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:14px}.module-section-head h2{font-size:22px;margin:0 0 4px}.module-section-head p{margin:0;color:var(--muted);font-size:13px}.module-launcher-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.module-launch-card{position:relative;min-height:178px;background:#fff;border:1px solid var(--border);border-radius:20px;padding:20px;color:var(--text);box-shadow:var(--shadow-soft);display:grid;grid-template-columns:52px 1fr auto;grid-template-rows:auto 1fr auto;gap:12px 14px;transition:.18s;overflow:hidden}.module-launch-card:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--green2),var(--green3))}.module-launch-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#bfd3c6}.module-launch-icon{grid-row:1 / span 2;width:52px;height:52px;border-radius:16px;background:#edf6f0;color:var(--green);display:grid;place-items:center;font-weight:900;font-size:20px}.module-launch-copy b,.module-launch-copy small{display:block}.module-launch-copy b{font-size:17px;margin-bottom:6px}.module-launch-copy small{color:var(--muted);font-size:12px;line-height:1.45}.module-launch-meta{grid-column:2;align-self:end;color:#446153;font-size:11px;font-weight:800;background:#f4f8f5;border-radius:999px;padding:6px 9px;width:max-content;max-width:100%}.module-launch-arrow{grid-column:3;grid-row:1 / span 3;align-self:center;font-size:20px;color:#8ba397}.module-finance:before{background:linear-gradient(90deg,#1a4ea1,#3b7bd5)}.module-finance .module-launch-icon{background:#eef3fb;color:#245da9}.module-recurring:before{background:linear-gradient(90deg,#8b6b22,#c39a39)}.module-recurring .module-launch-icon{background:#fff6df;color:#8c6a1b}.module-marketing:before{background:linear-gradient(90deg,#6c4cad,#9b75dc)}.module-marketing .module-launch-icon{background:#f3effb;color:#6d4baa}.module-prospects:before{background:linear-gradient(90deg,#ca7a1d,#e4a246)}.module-prospects .module-launch-icon{background:#fff5e6;color:#a76516}.module-users:before{background:linear-gradient(90deg,#445a50,#73877e)}
.home-bottom-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:16px;margin-top:18px}.home-tip-card{background:linear-gradient(145deg,#f8fbf9,#eef6f1);border:1px solid var(--border);border-radius:18px;padding:22px}.home-tip-card h3{margin:8px 0;font-size:18px}.home-tip-card p{margin:0;color:var(--muted);line-height:1.55;font-size:13px}

/* Acesso por módulos */
.access-form{max-width:1250px}.access-form-grid{display:grid;grid-template-columns:minmax(320px,.7fr) minmax(480px,1.3fr);gap:22px}.module-access-panel{border:1px solid var(--border);border-radius:16px;background:#f8fbf9;padding:18px}.module-access-head h2{margin:5px 0 5px;font-size:19px}.module-access-head p{margin:0 0 15px;color:var(--muted);font-size:12px;line-height:1.45}.module-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.module-access-item{display:grid!important;grid-template-columns:auto 35px 1fr!important;align-items:center!important;gap:9px!important;background:#fff;border:1px solid var(--border);border-radius:12px;padding:10px!important;cursor:pointer}.module-access-item:hover{border-color:#a9c7b4}.module-access-item input{width:auto!important}.module-access-icon{width:35px;height:35px;border-radius:10px;background:#edf6f0;display:grid;place-items:center;color:var(--green);font-weight:900}.module-access-item span:last-child b,.module-access-item span:last-child small{display:block}.module-access-item span:last-child b{font-size:12px}.module-access-item span:last-child small{font-size:10px;color:var(--muted);font-weight:400;line-height:1.35;margin-top:2px}.permission-tags{display:flex;gap:4px;flex-wrap:wrap;max-width:360px}.permission-tag{font-size:9px;padding:4px 6px;background:#eef5f1;color:#41604f;border-radius:999px}

/* Financeiro */
.finance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.finance-kpi{background:#fff;border:1px solid var(--border);border-radius:18px;padding:19px;box-shadow:var(--shadow-soft);border-top:4px solid #72917f}.finance-kpi.balance{border-top-color:var(--blue2)}.finance-kpi.income{border-top-color:#2a9a58}.finance-kpi.expense{border-top-color:#c55b52}.finance-kpi.pending{border-top-color:#d49a30}.finance-kpi span,.finance-kpi small{display:block;color:var(--muted);font-size:11px}.finance-kpi strong{display:block;font-size:25px;margin:7px 0 3px}.finance-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:6px 0 13px}.finance-section-head h2{margin:0 0 4px;font-size:19px}.finance-section-head p{margin:0;color:var(--muted);font-size:12px;max-width:800px}.account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.account-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:var(--shadow-soft)}.account-card-top{display:flex;justify-content:space-between;gap:12px}.account-card-top h3{margin:5px 0 3px}.account-card-top small{color:var(--muted)}.account-dot{width:10px;height:10px;border-radius:50%;background:#39a468;box-shadow:0 0 0 5px #ebf7ef;margin-top:4px}.account-balance{margin:18px 0 10px;padding:13px;background:linear-gradient(135deg,#f4f8f5,#edf5f0);border-radius:13px}.account-balance span,.account-balance strong{display:block}.account-balance span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.45px}.account-balance strong{font-size:25px;margin-top:4px;color:#1b5034}.account-card-meta{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:10px}.account-card-actions{display:flex;gap:7px;align-items:center;margin-top:14px;flex-wrap:wrap}.account-card-actions form{margin:0}.finance-lower-grid{margin-top:16px}.finance-card-head{padding:16px 18px 0;margin-bottom:8px}.finance-pending-list{display:flex;flex-direction:column}.finance-pending-list>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 2px;border-bottom:1px solid #edf1ef}.finance-pending-list b,.finance-pending-list small{display:block}.finance-pending-list small{font-size:10px;color:var(--muted);margin-top:3px}.money-type{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}.money-type.in{background:#eaf7ee;color:#227442}.money-type.out{background:#fff0ef;color:#a94740}.money-value.in{color:#19723d}.money-value.out{color:#ad433c}.sales-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sale-card{position:relative}.sale-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.sale-card h3{font-size:16px;margin:5px 0 4px}.sale-card small{color:var(--muted)}.sale-value{font-size:27px;font-weight:900;color:#1b5536;margin:17px 0 8px}.sale-dates{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px;padding-bottom:12px;border-bottom:1px solid var(--border)}.receive-box{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;padding:12px;background:#f8fbf9;border-radius:12px}.receive-box label{font-size:10px;font-weight:700;display:flex;flex-direction:column;gap:4px}.receive-box input,.receive-box select{border:1px solid var(--border);border-radius:8px;padding:8px;background:#fff}.receive-box .btn{grid-column:span 2}.inline-cancel{margin-top:7px;text-align:right}.sale-received{margin-top:12px;padding:10px;border-radius:10px;background:#ecf8f0;color:#286d43;font-size:12px;font-weight:700}.reconciliation-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px}.reconciliation-current strong{display:block;font-size:34px;color:#1c5d3a;margin:9px 0}.reconciliation-current p{margin:0;color:var(--muted);font-size:12px}.reconciliation-form{display:flex;flex-direction:column;gap:10px}.reconciliation-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:700}.reconciliation-form input,.reconciliation-form textarea{border:1px solid var(--border);border-radius:10px;padding:10px}

/* Recorrências */
.recurring-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.recurring-card.inactive{opacity:.58}.recurring-card-head{display:flex;justify-content:space-between;gap:12px}.recurring-card-head h3{font-size:15px;margin:5px 0 4px;line-height:1.35}.recurring-card-head small{color:var(--muted)}.recurring-cycle{width:38px;height:38px;border-radius:12px;background:#fff6df;color:#96721d;display:grid;place-items:center;font-size:20px;font-weight:900}.recurring-next{margin:16px 0 12px;padding:13px;border-radius:13px;background:#f6faf7}.recurring-next span,.recurring-next strong,.recurring-next small{display:block}.recurring-next span{font-size:10px;color:var(--muted);text-transform:uppercase}.recurring-next strong{font-size:22px;color:#1c5738;margin:4px 0}.recurring-next small{font-size:10px;color:var(--muted)}.recurring-meta{display:grid;grid-template-columns:1fr;gap:5px;color:#56665d;font-size:11px}.recurring-meta b{color:#35473d}

@media(max-width:1250px){.module-launcher-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.account-grid,.recurring-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-brand-copy{display:none}.portal-brand{min-width:auto}.access-form-grid{grid-template-columns:1fr}.home-bottom-grid{grid-template-columns:1fr}}
@media(max-width:900px){.portal-header{height:auto;min-height:74px;padding:10px 16px;gap:10px}.portal-page-context{display:none}.portal-date{display:none}.portal-user>span{display:none}.portal-brand-logo{width:100px;height:50px}.portal-content{padding:20px 17px 36px}.module-launcher-grid,.account-grid,.recurring-grid,.sales-grid{grid-template-columns:1fr}.reconciliation-grid{grid-template-columns:1fr}.module-access-grid{grid-template-columns:1fr}.portal-welcome{align-items:flex-start;flex-direction:column;padding:22px}.portal-welcome h1{font-size:26px}.finance-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.portal-header-actions{gap:5px}.portal-module-button span{display:none}.portal-module-button{padding:9px}.portal-logout{padding:8px}.portal-brand-logo{width:86px;height:45px}.finance-kpis{grid-template-columns:1fr}.module-launch-card{min-height:155px;grid-template-columns:44px 1fr auto;padding:16px}.module-launch-icon{width:44px;height:44px}.receive-box{grid-template-columns:1fr}.receive-box .btn{grid-column:auto}.sale-dates{flex-direction:column}.module-section-head,.finance-section-head{align-items:flex-start;flex-direction:column}}

/* ===== NTW Agro v3.1 - refinamento visual e usabilidade ===== */
:root{
  --surface:#f7faf7;
  --surface-2:#edf5f0;
  --surface-3:#e4f0e8;
  --cream:#f8f5ec;
  --ink:#163024;
}
html,body{background:#eaf2ed}
body.no-scroll{overflow:hidden}
.portal-shell{
  min-height:100vh;
  background:
    radial-gradient(circle at 8% 7%,rgba(45,146,87,.11),transparent 28%),
    radial-gradient(circle at 92% 18%,rgba(43,110,214,.07),transparent 24%),
    linear-gradient(180deg,#e8f1eb 0%,#f3f7f4 48%,#eaf2ed 100%);
}
.portal-header{
  background:rgba(247,250,248,.96);
  border-bottom-color:#cfddd4;
  box-shadow:0 10px 30px rgba(19,62,40,.07);
}
.portal-content{position:relative;padding-top:28px}
.portal-content:before{
  content:"";position:fixed;z-index:-1;left:0;right:0;top:86px;height:280px;
  background:linear-gradient(180deg,rgba(255,255,255,.24),transparent);
  pointer-events:none
}
.portal-module-button{background:linear-gradient(135deg,#eaf4ed,#f7faf8);border-color:#c7dccf;color:#174d32;box-shadow:0 5px 14px rgba(22,80,49,.06);cursor:pointer}
.portal-module-button:hover{background:#dfeee4;border-color:#a9c8b5;transform:translateY(-1px)}
.portal-user{background:rgba(255,255,255,.58);border-color:#dce7df}
.portal-logout{background:#edf3ef;border:1px solid #d9e5dd}

/* Títulos viram superfícies de contexto, evitando grandes blocos vazios/brancos. */
.page-title{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,rgba(248,251,249,.96),rgba(227,241,232,.96));
  border:1px solid #cfdfd5;border-radius:20px;padding:21px 22px;margin-bottom:18px;
  box-shadow:0 10px 25px rgba(24,72,46,.06)
}
.page-title:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-75px;top:-110px;background:rgba(43,135,79,.08);pointer-events:none}
.page-title h1{font-size:28px;color:#123d28}
.page-title p{color:#577066}
.page-kicker{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#3f7b58;font-weight:900;margin:5px 0 4px}
.page-title-producer{background:linear-gradient(135deg,#fff8ea,#eef6ef)}
.page-title-producer:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(#d9922b,#238657)}
.page-title-ranking{background:linear-gradient(135deg,#f6f1df,#e8f3eb)}
.page-title-ranking:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(#c79828,#238657)}

.card,.form-card,.filters,.account-card,.goal-card,.owner-card,.marketing-card,.service-card,.recurring-card{
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(244,249,246,.96));
  border-color:#d2e1d7;
}
.card{box-shadow:0 12px 28px rgba(18,58,38,.065)}
.filters{background:linear-gradient(135deg,#f6faf7,#eaf3ed);border-color:#cfdfd5;box-shadow:0 8px 20px rgba(20,68,43,.05)}
.filters input,.filters select{background:rgba(255,255,255,.86);border-color:#cddcd3}
.table-card{overflow:hidden;background:#f7faf8}
.table-card table{background:rgba(255,255,255,.72)}
th{background:#e5f0e9;color:#425d4e;border-bottom-color:#d2e0d7}
tbody tr{background:rgba(255,255,255,.72)}
tbody tr:nth-child(even){background:rgba(240,247,243,.72)}
tbody tr:hover{background:#eaf5ee}

/* Central de módulos: cada área ganha identidade visual sem abandonar a marca. */
.module-launcher-grid{gap:16px}
.module-launch-card{background:linear-gradient(145deg,#fbfdfb,#edf6f0);border-color:#cfdfd5;min-height:166px}
.module-launch-card:hover{transform:translateY(-4px) scale(1.005)}
.module-services{background:linear-gradient(145deg,#f8fcf9,#e5f2e9)}
.module-clients{background:linear-gradient(145deg,#f7fbff,#e9f1f9)}
.module-prospects{background:linear-gradient(145deg,#fffaf0,#f5ecda)}
.module-agenda{background:linear-gradient(145deg,#f7f6ff,#ece9f8)}
.module-marketing{background:linear-gradient(145deg,#faf6ff,#f0eafb)}
.module-goals{background:linear-gradient(145deg,#fff9f0,#f6eddc)}
.module-orders{background:linear-gradient(145deg,#f5fcfa,#e5f3ef)}
.module-finance{background:linear-gradient(145deg,#f5f9ff,#e7effa)}
.module-recurring{background:linear-gradient(145deg,#fffaf0,#f6edd9)}
.module-users{background:linear-gradient(145deg,#f6f8f7,#e8eeeb)}
.module-launch-meta{background:rgba(255,255,255,.68);border:1px solid rgba(203,218,209,.7)}
.home-bottom-grid .card{background:linear-gradient(145deg,#f9fcfa,#edf5f0)}
.home-tip-card{background:linear-gradient(145deg,#eaf4ed,#f9f6ea)}

/* Painel rápido de troca de módulo disponível de qualquer tela. */
.module-switcher{position:fixed;inset:0;z-index:100;display:none;align-items:flex-start;justify-content:center;padding:94px 18px 30px}
.module-switcher.open{display:flex}
.module-switcher-backdrop{position:absolute;inset:0;border:0;background:rgba(13,39,27,.52);backdrop-filter:blur(5px);cursor:pointer}
.module-switcher-panel{position:relative;width:min(1080px,100%);max-height:calc(100vh - 120px);overflow:auto;border-radius:25px;padding:24px;background:linear-gradient(155deg,#f8fbf9,#edf5f0);border:1px solid rgba(255,255,255,.75);box-shadow:0 35px 90px rgba(10,42,25,.28)}
.module-switcher-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.module-switcher-head h2{margin:5px 0 5px;font-size:25px}.module-switcher-head p{margin:0;color:var(--muted);font-size:12px}.module-switcher-close{width:40px;height:40px;border-radius:12px;border:1px solid #d2e0d7;background:#fff;color:#496157;font-size:25px;line-height:1;cursor:pointer}.module-switcher-close:hover{background:#f0f6f2}
.module-switcher-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.module-switcher-item{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;padding:13px;border:1px solid #d3e1d8;background:rgba(255,255,255,.75);border-radius:15px;color:var(--text);transition:.16s}.module-switcher-item:hover{transform:translateY(-2px);background:#fff;box-shadow:0 10px 24px rgba(23,70,45,.08);border-color:#b8cfc0}.module-switcher-icon{width:42px;height:42px;border-radius:12px;background:#e8f3ec;color:#1c7044;display:grid;place-items:center;font-weight:900}.module-switcher-item b,.module-switcher-item small{display:block}.module-switcher-item b{font-size:13px}.module-switcher-item small{font-size:10px;color:var(--muted);line-height:1.35;margin-top:3px}.module-switcher-item i{font-style:normal;color:#829a8e}.module-switcher-item.module-prospects .module-switcher-icon{background:#fff0d9;color:#a96817}.module-switcher-item.module-finance .module-switcher-icon{background:#e8f0fb;color:#245ea7}.module-switcher-item.module-marketing .module-switcher-icon{background:#f0eafa;color:#7250ae}.module-switcher-item.module-recurring .module-switcher-icon{background:#fff3d9;color:#8c6b1b}.module-switcher-foot{display:flex;justify-content:flex-end;margin-top:17px;padding-top:15px;border-top:1px solid #d9e5dd}.module-switcher-foot a{font-size:12px;font-weight:800}

/* Bloco explicativo curto para tornar módulos menos "secos". */
.module-hint-strip{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:12px 14px;border-radius:14px;background:linear-gradient(90deg,#ecf5ef,#f7f3e8);border:1px solid #d7e2d9}.module-hint-icon{width:36px;height:36px;border-radius:10px;background:#fff;display:grid;place-items:center;color:#27734a;font-weight:900;box-shadow:0 5px 12px rgba(30,78,49,.06)}.module-hint-strip b,.module-hint-strip small{display:block}.module-hint-strip b{font-size:12px}.module-hint-strip small{font-size:11px;color:#64766d;margin-top:2px;line-height:1.4}
.table-surface-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;background:linear-gradient(90deg,#e8f2eb,#f5f8f6);border-bottom:1px solid #d6e3da}.table-surface-head b,.table-surface-head small{display:block}.table-surface-head b{font-size:14px}.table-surface-head small{font-size:10px;color:var(--muted);margin-top:3px}.prospect-status-potencial{background:#fff3d9;color:#936114}.prospect-status-convertido{background:#e8f6ec;color:#247043}.prospect-status-arquivado{background:#eef1ef;color:#66736c}

/* Ranking de clientes */
.ranking-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.ranking-tab{display:flex;flex-direction:column;gap:3px;border:1px solid #d3e1d8;background:rgba(248,251,249,.84);padding:12px 14px;border-radius:14px;color:var(--text)}.ranking-tab:hover{border-color:#a9c6b4}.ranking-tab.active{background:linear-gradient(135deg,#e5f2e9,#f6f3e6);border-color:#a9cbb5;box-shadow:inset 4px 0 0 #2c8a56}.ranking-tab b{font-size:13px}.ranking-tab small{font-size:10px;color:var(--muted)}
.ranking-filters{margin-bottom:14px}
.ranking-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}.ranking-kpi{position:relative;overflow:hidden;background:linear-gradient(145deg,#f7fbf8,#e9f3ed);border:1px solid #cfdfd5;border-radius:17px;padding:16px;box-shadow:0 9px 22px rgba(20,61,40,.055)}.ranking-kpi:after{content:"";position:absolute;width:75px;height:75px;border-radius:50%;right:-30px;top:-30px;background:rgba(44,138,86,.08)}.ranking-kpi.green{background:linear-gradient(145deg,#edf8f0,#def0e4)}.ranking-kpi.blue{background:linear-gradient(145deg,#f0f5fc,#e2ebf8)}.ranking-kpi.gold{background:linear-gradient(145deg,#fcf7ea,#f3ead1)}.ranking-kpi span,.ranking-kpi small{display:block;color:#66786e;font-size:10px}.ranking-kpi strong{display:block;color:#153d29;font-size:25px;margin:5px 0 2px}.ranking-kpi.blue strong{color:#224f89}.ranking-kpi.gold strong{color:#775b1c}
.ranking-highlight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:15px}.ranking-panel{border-radius:19px;border:1px solid #d1e0d6;overflow:hidden;box-shadow:0 12px 28px rgba(19,61,39,.06)}.ranking-panel-top{background:linear-gradient(180deg,#eff8f2,#f9fbfa)}.ranking-panel-low{background:linear-gradient(180deg,#fbf7eb,#f9fbfa)}.ranking-panel-head{display:flex;justify-content:space-between;align-items:center;padding:17px;border-bottom:1px solid rgba(200,217,206,.75)}.ranking-panel-head h2{font-size:17px;margin:5px 0 0}.ranking-medal{width:38px;height:38px;border-radius:12px;background:#dff1e5;color:#257447;display:grid;place-items:center;font-size:18px}.muted-medal{background:#f2e9cf;color:#8a6a1e}.ranking-list{padding:4px 12px 10px}.ranking-list-row{display:grid;grid-template-columns:34px minmax(0,1fr) 68px 110px;gap:9px;align-items:center;padding:10px 4px;border-bottom:1px solid #dfe9e3;color:var(--text)}.ranking-list-row:last-child{border-bottom:0}.ranking-list-row:hover{background:rgba(255,255,255,.48);border-radius:10px}.ranking-position{width:28px;height:28px;border-radius:9px;background:#dfeee4;color:#226942;display:grid;place-items:center;font-size:11px;font-weight:900}.ranking-position.soft{background:#f0e7ce;color:#7c611f}.ranking-client b,.ranking-client small,.ranking-count b,.ranking-count small,.ranking-money b,.ranking-money small{display:block}.ranking-client b{font-size:12px}.ranking-client small,.ranking-count small,.ranking-money small{font-size:9px;color:var(--muted);margin-top:2px}.ranking-count b{font-size:16px}.ranking-money{text-align:right}.ranking-money b{font-size:11px}.ranking-full-table{margin-top:0}.rank-chip{display:inline-grid;place-items:center;min-width:28px;height:28px;padding:0 7px;border-radius:9px;background:#e5f1e9;color:#226d43;font-weight:900;font-size:11px}

/* Mais cor e separação nas telas de gestão. */
.finance-kpi,.client-summary-card{background:linear-gradient(145deg,#fafcfb,#eaf3ed)}
.account-card{background:linear-gradient(145deg,#f8fbf9,#e7f1eb)}
.goal-card:nth-child(3n+1){background:linear-gradient(145deg,#f8fbf9,#e7f2eb)}.goal-card:nth-child(3n+2){background:linear-gradient(145deg,#f9f7ff,#eeeaf8)}.goal-card:nth-child(3n){background:linear-gradient(145deg,#fffaf1,#f5eddc)}
.owner-card:nth-child(3n+1){background:linear-gradient(145deg,#f9fcfa,#e8f3ec)}.owner-card:nth-child(3n+2){background:linear-gradient(145deg,#f6f9fd,#e8eff7)}.owner-card:nth-child(3n){background:linear-gradient(145deg,#fffaf1,#f5eddd)}
.calendar-day{background:#f9fcfa}.calendar-day:nth-child(odd){background:#f4f9f6}.calendar-day.empty-day{background:#eaf1ed}

@media(max-width:1120px){.module-switcher-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-highlight-grid{grid-template-columns:1fr}}
@media(max-width:760px){.module-switcher{padding:76px 10px 18px}.module-switcher-panel{padding:17px;border-radius:20px;max-height:calc(100vh - 90px)}.module-switcher-grid{grid-template-columns:1fr}.ranking-tabs,.ranking-kpis{grid-template-columns:1fr}.ranking-list-row{grid-template-columns:32px minmax(0,1fr) 55px}.ranking-money{grid-column:2 / span 2;text-align:left}.page-title{padding:18px}.portal-module-button span{display:none}}
.section-nav{display:flex;gap:7px;align-items:center;margin:-3px 0 15px;padding:5px;width:max-content;max-width:100%;overflow:auto;border:1px solid #d0dfd5;border-radius:13px;background:rgba(241,247,243,.86);box-shadow:0 6px 16px rgba(20,62,40,.04)}.section-nav a{white-space:nowrap;padding:8px 11px;border-radius:9px;color:#587066;font-size:11px;font-weight:800}.section-nav a:hover{background:#e4f0e8;color:#245d3b}.section-nav a.active{background:#1e7549;color:#fff;box-shadow:0 5px 12px rgba(28,117,73,.18)}

/* ======================================================================
   NTW Agro Control v3.2 — interface premium, Produtor Legal unificado
   ====================================================================== */
:root{
  --neo-green-950:#082d20;
  --neo-green-900:#0d3b29;
  --neo-green-800:#14563a;
  --neo-green-700:#1c7248;
  --neo-green-600:#26905a;
  --neo-green-100:#dcece2;
  --neo-green-50:#eef6f1;
  --neo-blue:#245fa8;
  --neo-gold:#b8862c;
  --neo-bg:#e4ece7;
  --neo-surface:#f4f8f5;
  --neo-ink:#153326;
  --neo-muted:#64776d;
  --neo-line:#cddbd2;
  --neo-shadow:0 18px 45px rgba(9,47,30,.10);
  --neo-shadow-soft:0 8px 24px rgba(10,49,31,.07);
}
html,body{background:var(--neo-bg);color:var(--neo-ink)}
body{min-width:0}
.neo-shell{min-height:100vh;background:
  radial-gradient(circle at 4% 10%,rgba(51,143,87,.10),transparent 24%),
  radial-gradient(circle at 96% 24%,rgba(36,95,168,.07),transparent 20%),
  linear-gradient(180deg,#e2ebe5 0%,#edf3ef 48%,#e6eee9 100%)}
.neo-header{position:sticky;top:0;z-index:70;background:linear-gradient(112deg,var(--neo-green-950),var(--neo-green-800) 63%,#17653f);color:#fff;box-shadow:0 14px 34px rgba(5,33,21,.20)}
.neo-header-inner{max-width:1680px;height:82px;margin:0 auto;padding:0 30px;display:flex;align-items:center;gap:22px}
.neo-brand{display:flex;align-items:center;gap:12px;color:#fff;min-width:230px}
.neo-brand-logo{width:116px;height:54px;border-radius:15px;background:#fff;display:flex;align-items:center;justify-content:center;padding:7px 9px;box-shadow:0 8px 22px rgba(0,0,0,.14)}
.neo-brand-logo img{width:100%;height:100%;object-fit:contain}
.neo-brand-copy b,.neo-brand-copy small{display:block}.neo-brand-copy b{font-size:15px;letter-spacing:.1px}.neo-brand-copy small{font-size:10px;color:#bcd7c8;margin-top:2px}
.neo-context{border-left:1px solid rgba(255,255,255,.15);padding-left:22px;display:flex;flex-direction:column;gap:2px;min-width:170px}.neo-context span{font-size:9px;text-transform:uppercase;letter-spacing:.9px;color:#a9cdbc;font-weight:800}.neo-context strong{font-size:17px;color:#fff}
.neo-actions{margin-left:auto;display:flex;align-items:center;gap:8px;min-width:0}.neo-action{border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.07);color:#eff8f2;border-radius:11px;padding:9px 11px;font-size:11px;font-weight:800;display:inline-flex;gap:6px;align-items:center;cursor:pointer}.neo-action:hover{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.22);color:#fff}.neo-action-modules{background:linear-gradient(135deg,rgba(199,230,208,.18),rgba(255,255,255,.09))}.neo-online{display:inline-flex;align-items:center;gap:6px;color:#cde5d7;font-size:10px;font-weight:800;padding:7px 4px}.neo-online i{width:7px;height:7px;border-radius:50%;background:#71d690;box-shadow:0 0 0 4px rgba(113,214,144,.12)}.neo-date{font-size:11px;color:#bcd4c7;padding:0 4px;white-space:nowrap}.neo-user{display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);border-radius:13px;padding:5px 8px;color:#fff;max-width:220px}.neo-user:hover{background:rgba(255,255,255,.11)}.neo-user .avatar{border-color:rgba(255,255,255,.28)}.neo-user b,.neo-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.neo-user b{font-size:11px;max-width:130px}.neo-user small{font-size:9px;color:#bcd4c7;margin-top:1px}.neo-logout-form{margin:0}.neo-logout{border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.06);color:#d9e8df;border-radius:10px;padding:9px 11px;font-size:10px;font-weight:800;cursor:pointer}.neo-logout:hover{background:#7f2d2d;color:#fff;border-color:#9d4444}
.neo-ribbon{background:#d9e7de;border-bottom:1px solid #c5d6cb}.neo-ribbon-inner{max-width:1680px;margin:0 auto;min-height:32px;padding:0 32px;display:flex;justify-content:space-between;align-items:center;gap:18px;color:#4f695a;font-size:10px}.neo-ribbon-tip{color:#6d8076}
.neo-main{width:100%;min-width:0}.neo-content{max-width:1600px!important;padding:28px 32px 48px!important;margin:0 auto!important}

/* Superfícies gerais: menos branco puro, mais hierarquia */
.page-title{background:linear-gradient(135deg,#edf5f0,#dcebe2)!important;border:1px solid #c6d8cd!important;box-shadow:var(--neo-shadow-soft)!important;border-radius:20px!important}.page-title h1{color:#123d29!important}.page-title p{color:#587064!important}
.card,.form-card,.filters,.service-card,.goal-card,.marketing-card,.owner-card,.account-card,.recurring-card{border-color:#cbdad1!important;box-shadow:var(--neo-shadow-soft)!important}
.card,.form-card{background:linear-gradient(180deg,#f8fbf9,#eef5f1)!important}.filters{background:linear-gradient(135deg,#edf5f0,#e3eee7)!important}.filters input,.filters select,.form-card input,.form-card select,.form-card textarea{background:#fbfdfb!important;border-color:#c6d6cc!important}.filters input:focus,.filters select:focus,.form-card input:focus,.form-card select:focus,.form-card textarea:focus{border-color:#5a9d73!important;box-shadow:0 0 0 3px rgba(38,144,90,.10)!important}
.table-card{background:#edf4ef!important;border-color:#c7d8ce!important;overflow:hidden}.table-surface-head{background:linear-gradient(90deg,#dbeae0,#edf4ef)!important;border-bottom-color:#c8d8cf!important}.table-card table{background:transparent}.table-card th{background:#d7e6dc!important;color:#365345!important;border-bottom-color:#c5d5cb!important}.table-card tbody tr{background:rgba(248,251,249,.78)!important}.table-card tbody tr:nth-child(even){background:rgba(232,241,235,.80)!important}.table-card tbody tr:hover{background:#dfeee5!important}
.btn{border-radius:11px!important;box-shadow:none!important}.btn.primary{background:linear-gradient(135deg,#187345,#2c9c60)!important;border-color:#197348!important}.btn.primary:hover{filter:brightness(.98)}
.alert{box-shadow:0 8px 18px rgba(21,64,42,.05)}

/* Tela inicial */
.neo-home-hero{position:relative;overflow:hidden;border-radius:27px;padding:30px 32px;margin-bottom:24px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.65fr);gap:28px;color:#fff;background:
  radial-gradient(circle at 90% 20%,rgba(108,201,137,.20),transparent 28%),
  linear-gradient(125deg,#0b3626 0%,#115337 57%,#1d7649 100%);box-shadow:0 25px 60px rgba(7,42,26,.19)}
.neo-home-hero:after{content:"";position:absolute;right:-70px;bottom:-130px;width:310px;height:310px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 35px rgba(255,255,255,.025),0 0 0 75px rgba(255,255,255,.018)}
.neo-home-copy,.neo-home-side{position:relative;z-index:1}.neo-home-kicker{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#add2bd;font-weight:900}.neo-home-copy h1{font-size:36px;margin:8px 0 9px;letter-spacing:-1px}.neo-home-copy p{font-size:14px;line-height:1.58;color:#dbece2;max-width:760px;margin:0}.neo-home-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:19px}.neo-light-btn{background:#f2f8f4!important;color:#17492f!important;border-color:#e6f0e9!important}.neo-ghost-light{background:rgba(255,255,255,.08)!important;color:#fff!important;border-color:rgba(255,255,255,.15)!important}.neo-home-side{display:flex;flex-direction:column;gap:11px;justify-content:center}.neo-home-status,.neo-home-user{display:flex;align-items:center;gap:11px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.08);border-radius:16px;padding:13px 14px;backdrop-filter:blur(8px)}.neo-home-status b,.neo-home-status small,.neo-home-user b,.neo-home-user small,.neo-home-user span{display:block}.neo-home-status b{font-size:12px}.neo-home-status small,.neo-home-user small,.neo-home-user span{font-size:9px;color:#c6dfd1;margin-top:2px}.neo-status-dot{width:11px;height:11px;border-radius:50%;background:#7bdd98;box-shadow:0 0 0 6px rgba(123,221,152,.10)}.neo-home-user b{font-size:12px}.neo-home-user .avatar{border-color:rgba(255,255,255,.25)}
.neo-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 2px 14px}.neo-section-heading h2{font-size:23px;margin:4px 0 3px;color:#173b29}.neo-section-heading p{margin:0;color:#6b7c72;font-size:11px}
.neo-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.neo-module-card{--module:#238354;position:relative;overflow:hidden;min-height:190px;border:1px solid #c8d8ce;border-radius:20px;padding:20px 20px 17px;display:grid;grid-template-columns:52px 1fr;grid-template-rows:1fr auto;gap:12px 14px;color:#18382a;background:linear-gradient(145deg,#f4f8f5,#e2eee6);box-shadow:var(--neo-shadow-soft);transition:.18s}.neo-module-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(12,56,35,.12);border-color:#a9c6b5}.neo-module-accent{position:absolute;left:0;right:0;top:0;height:5px;background:var(--module)}.neo-module-icon{width:50px;height:50px;border-radius:15px;background:color-mix(in srgb,var(--module) 14%,white);color:var(--module);display:grid;place-items:center;font-size:19px;font-weight:900;border:1px solid color-mix(in srgb,var(--module) 15%,#dbe8df)}.neo-module-copy small{font-size:9px;text-transform:uppercase;letter-spacing:.7px;color:#75877c;font-weight:800}.neo-module-copy b{display:block;font-size:18px;margin:4px 0 6px;color:#173b2a}.neo-module-copy p{margin:0;color:#60756a;font-size:11px;line-height:1.48}.neo-module-footer{grid-column:1 / span 2;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid rgba(190,207,196,.75)}.neo-module-footer em{font-style:normal;font-size:10px;color:#526b5d;font-weight:700}.neo-module-footer i{font-style:normal;width:28px;height:28px;border-radius:9px;background:var(--module);color:#fff;display:grid;place-items:center}.module-services{--module:#24774d}.module-prospects{--module:#b47d23;background:linear-gradient(145deg,#f9f5e9,#e9f1e6)}.module-agenda{--module:#6165ac;background:linear-gradient(145deg,#f2f2f9,#e6ebf0)}.module-marketing{--module:#865ca9;background:linear-gradient(145deg,#f6f0f8,#e9ecf0)}.module-goals{--module:#a46f26;background:linear-gradient(145deg,#f8f3e8,#e8efe8)}.module-orders{--module:#257d70}.module-finance{--module:#2b6299;background:linear-gradient(145deg,#edf3f8,#e3eceb)}.module-recurring{--module:#8e7628;background:linear-gradient(145deg,#f8f4e8,#e7efe8)}.module-users{--module:#566960}
.neo-home-lower{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.75fr);gap:15px;margin-top:20px}.neo-panel,.neo-tip-panel{border:1px solid #cbdad1;border-radius:20px;padding:19px;background:linear-gradient(145deg,#f4f8f5,#e5efe9);box-shadow:var(--neo-shadow-soft)}.neo-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:8px}.neo-panel-head h3{margin:4px 0 0}.neo-panel-head a{font-size:11px;font-weight:800}.neo-tip-panel{background:linear-gradient(145deg,#dcebe2,#f3efe2)}.neo-tip-panel>span{font-size:9px;text-transform:uppercase;letter-spacing:.7px;font-weight:900;color:#557264}.neo-tip-panel h3{font-size:18px;margin:7px 0}.neo-tip-panel p{font-size:11px;line-height:1.55;color:#5e7267;margin:0}

/* Módulo Produtor Legal unificado */
.producer-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:13px;padding:22px 24px;border-radius:21px;color:#fff;background:linear-gradient(120deg,#173e2c,#266f46 70%,#98802d);box-shadow:var(--neo-shadow)}.producer-hero:after{content:"";position:absolute;right:-40px;top:-85px;width:180px;height:180px;border-radius:50%;border:1px solid rgba(255,255,255,.09);box-shadow:0 0 0 25px rgba(255,255,255,.025)}.producer-hero>div,.producer-hero>a{position:relative;z-index:1}.producer-kicker{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#d0e4d7;font-weight:900;margin-bottom:5px}.producer-hero h1{font-size:27px;margin:0 0 5px}.producer-hero p{margin:0;color:#dceae2;font-size:12px;line-height:1.5;max-width:760px}.producer-hero .btn:not(.primary){background:rgba(255,255,255,.10)!important;color:#fff!important;border-color:rgba(255,255,255,.15)!important}.producer-hero-clients{background:linear-gradient(120deg,#143c2a,#1e6841 68%,#285e86)}.producer-hero-owners{background:linear-gradient(120deg,#183d2d,#276b48 68%,#826f35)}
.producer-nav{display:flex;gap:6px;align-items:center;padding:6px;margin-bottom:15px;border-radius:15px;background:#d8e5dd;border:1px solid #c3d4c9;overflow:auto;box-shadow:0 6px 16px rgba(13,53,33,.05)}.producer-nav a{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:9px 12px;border-radius:10px;color:#4b6657;font-size:11px;font-weight:800}.producer-nav a span{font-size:13px}.producer-nav a:hover{background:#eaf2ed;color:#1c5a39}.producer-nav a.active{background:linear-gradient(135deg,#176a41,#278f58);color:#fff;box-shadow:0 6px 14px rgba(21,100,61,.20)}
.producer-workspace-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 2px 12px}.producer-workspace-head h2{font-size:22px;margin:4px 0 4px}.producer-workspace-head p{font-size:11px;color:#61766a;margin:0;max-width:720px}.producer-count{display:flex;align-items:baseline;gap:6px;font-size:26px;font-weight:900;color:#1c5b3a}.producer-count small{font-size:10px;color:#6d8075;font-weight:700}.neo-filterbar{padding:10px 11px!important;border-radius:14px!important;margin-bottom:12px!important}.neo-table-card{border-radius:18px!important}
.producer-toolbar-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:0 0 13px}.producer-toolbar-cards>div,.producer-toolbar-cards>a{min-height:100px;padding:14px 15px;border-radius:15px;border:1px solid #c8d8cf;background:linear-gradient(145deg,#eff5f1,#e2ece6);color:#1c3e2d;box-shadow:0 7px 18px rgba(12,54,34,.05)}.producer-toolbar-cards>a:hover{transform:translateY(-2px);border-color:#abc5b5}.producer-toolbar-cards span,.producer-toolbar-cards strong,.producer-toolbar-cards small{display:block}.producer-toolbar-cards span{font-size:9px;text-transform:uppercase;letter-spacing:.55px;color:#718278;font-weight:800}.producer-toolbar-cards strong{font-size:18px;margin:6px 0 4px}.producer-toolbar-cards small{font-size:10px;color:#63776b;line-height:1.35}

/* Conversão de potencial para cliente */
.conversion-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 24px;margin-bottom:15px;border-radius:21px;background:linear-gradient(120deg,#173e2c,#226b44 65%,#ae812b);color:#fff;box-shadow:var(--neo-shadow)}.conversion-hero .back{color:#cce2d5}.conversion-hero h1{font-size:28px;margin:7px 0 5px}.conversion-hero p{margin:0;color:#e0ece5;font-size:12px;line-height:1.5}.conversion-badge{display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.09);border-radius:14px;padding:10px 12px}.conversion-badge span{font-size:10px;font-weight:900}.conversion-badge b{color:#d9e8df}
.conversion-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:15px;align-items:start}.conversion-source,.conversion-form{border:1px solid #c8d9cf;border-radius:19px;box-shadow:var(--neo-shadow-soft)}.conversion-source{padding:19px;background:linear-gradient(155deg,#dceae1,#eff4ed);position:sticky;top:132px}.conversion-source h2{font-size:18px;margin:5px 0 13px}.conversion-source dl{margin:0}.conversion-source dl div{padding:9px 0;border-bottom:1px solid rgba(178,199,186,.65)}.conversion-source dt{font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:#718277;font-weight:800}.conversion-source dd{margin:3px 0 0;font-size:12px;font-weight:700;color:#274636}.conversion-existing{margin-top:14px;padding:12px;border-radius:12px;background:#d4e8dc;border:1px solid #b8d2c1}.conversion-existing b{font-size:11px}.conversion-existing p{font-size:10px;line-height:1.45;color:#557063;margin:4px 0 0}.conversion-form{padding:20px;background:linear-gradient(180deg,#f6faf7,#eaf2ed)}.conversion-form-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px}.conversion-form-head h2{font-size:20px;margin:5px 0 0}.optional-pill{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.5px;background:#e2ece6;color:#52705e;border:1px solid #c6d7cd;border-radius:999px;padding:7px 9px}.conversion-note{display:flex;gap:8px;align-items:flex-start;margin-top:14px;padding:12px 13px;border-radius:12px;background:#e0efe5;border:1px solid #bdd6c6;color:#3c5f4b;font-size:10px}.conversion-note b{white-space:nowrap}.conversion-note span{line-height:1.45}

/* Proprietários */
.neo-owner-grid{gap:13px}.neo-owner-grid .owner-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#eef5f1,#e1ebe5)!important}.neo-owner-grid .owner-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#287c50}.owner-card-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px}.owner-card-stats span{padding:9px;border-radius:10px;background:rgba(255,255,255,.48)}.owner-card-stats b,.owner-card-stats small{display:block}.owner-card-stats b{font-size:17px}.owner-card-stats small{font-size:9px;color:#667a6f;margin-top:2px}.neo-owner-grid .owner-card i{display:block;margin-top:12px;font-style:normal;font-size:10px;font-weight:800;color:#29704a}

/* Ranking segue a mesma identidade do Produtor Legal */
.page-title-ranking{background:linear-gradient(135deg,#e5eee8,#eee7d6)!important}.ranking-tabs{margin-top:0}.ranking-panel,.ranking-kpi{border-color:#c7d7ce!important;box-shadow:var(--neo-shadow-soft)!important}.ranking-panel-top{background:linear-gradient(180deg,#e4f0e8,#f1f5f2)!important}.ranking-panel-low{background:linear-gradient(180deg,#f1ead7,#f2f5f2)!important}

/* Login também acompanha a nova interface */
.login-page{background:
  radial-gradient(circle at 14% 18%,rgba(78,168,114,.18),transparent 24%),
  radial-gradient(circle at 86% 82%,rgba(36,95,168,.14),transparent 22%),
  linear-gradient(135deg,#082f21,#124f35 58%,#1d7147)!important}.login-showcase{background:linear-gradient(155deg,rgba(255,255,255,.12),rgba(255,255,255,.045))!important;border-color:rgba(255,255,255,.14)!important}.login-card{background:linear-gradient(180deg,#f7faf8,#eaf1ed)!important;border:1px solid rgba(255,255,255,.78)!important}.login-logo-card{box-shadow:0 14px 30px rgba(0,0,0,.15)!important}

/* Modais de módulo */
.module-switcher-backdrop{background:rgba(5,35,22,.68)!important}.module-switcher-panel{background:linear-gradient(155deg,#eaf2ed,#dce8e0)!important;border:1px solid #bcd0c3!important}.module-switcher-item{background:rgba(247,250,248,.75)!important;border-color:#c5d6cc!important}.module-switcher-item:hover{background:#f7faf8!important}.module-switcher-icon{background:#dcebe2!important}

@media(max-width:1250px){.neo-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.producer-toolbar-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.neo-home-hero{grid-template-columns:minmax(0,1fr) minmax(0,.7fr)}.neo-brand-copy{display:none}.neo-brand{min-width:auto}.neo-context{min-width:140px}}
@media(max-width:980px){.neo-header-inner{padding:0 16px;gap:10px}.neo-context{display:none}.neo-date,.neo-online{display:none}.neo-user span{display:none}.neo-brand-logo{width:96px;height:48px}.neo-content{padding:20px 17px 38px!important}.neo-home-hero{grid-template-columns:1fr;padding:24px}.neo-home-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.conversion-layout{grid-template-columns:1fr}.conversion-source{position:static}.producer-hero{align-items:flex-start;flex-direction:column}.producer-hero .actions{width:100%}.neo-home-lower{grid-template-columns:1fr}}
@media(max-width:720px){.neo-ribbon-tip{display:none}.neo-ribbon-inner{padding:0 16px}.neo-action-home span,.neo-action-modules span{display:none}.neo-brand-copy{display:none}.neo-user{padding:4px}.neo-user .avatar{width:34px;height:34px}.neo-logout{padding:8px}.neo-module-grid,.producer-toolbar-cards{grid-template-columns:1fr}.neo-module-card{min-height:165px}.neo-home-copy h1{font-size:29px}.neo-home-side{grid-template-columns:1fr}.producer-nav{padding:5px}.producer-nav a{padding:8px 10px}.conversion-hero{flex-direction:column;align-items:flex-start}.conversion-badge{align-self:stretch;justify-content:center}.conversion-form-head{flex-direction:column}.producer-workspace-head{align-items:flex-start;flex-direction:column}.neo-section-heading{align-items:flex-start;flex-direction:column}}
.conversion-form label{font-size:11px;font-weight:800;color:#385344;display:flex;flex-direction:column;gap:6px}.conversion-form input,.conversion-form select,.conversion-form textarea{width:100%;border:1px solid #c6d6cc;border-radius:10px;padding:10px 11px;background:#fbfdfb;color:#173629;outline:none}.conversion-form input:focus,.conversion-form select:focus,.conversion-form textarea:focus{border-color:#5c9d74;box-shadow:0 0 0 3px rgba(38,144,90,.10)}


/* ======================================================================
   NTW Agro Control v3.2.1 — estabilidade de layout
   Proteções contra colisões de classe e compressão de grids.
   ====================================================================== */
.finance-kpis,
.kpi-grid,
.detail-grid,
.form-grid,
.management-grid,
.account-grid,
.sales-grid,
.marketing-grid,
.goal-grid,
.owner-grid,
.ranking-kpis,
.ranking-highlight-grid,
.producer-toolbar-cards,
.neo-module-grid,
.neo-home-lower,
.module-switcher-grid,
.calendar{
  min-width:0;
}
.finance-kpis > *,
.kpi-grid > *,
.detail-grid > *,
.form-grid > *,
.management-grid > *,
.account-grid > *,
.sales-grid > *,
.marketing-grid > *,
.goal-grid > *,
.owner-grid > *,
.ranking-kpis > *,
.ranking-highlight-grid > *,
.producer-toolbar-cards > *,
.neo-module-grid > *,
.neo-home-lower > *,
.module-switcher-grid > *,
.calendar > *{
  min-width:0;
  max-width:100%;
}
.finance-kpi{
  min-width:0;
  width:auto;
  margin-left:0;
  overflow:hidden;
}
.finance-kpi strong{
  white-space:nowrap;
  font-size:clamp(21px,2vw,25px);
  font-variant-numeric:tabular-nums;
}
.finance-kpi span,
.finance-kpi small{
  overflow-wrap:anywhere;
}
.table-wrap{
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.page-title,
.producer-hero,
.conversion-hero,
.neo-home-hero{
  min-width:0;
}
.page-title > *,
.producer-hero > *,
.conversion-hero > *,
.neo-home-hero > *{
  min-width:0;
}
@media(max-width:1250px){
  .finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .finance-kpis{grid-template-columns:minmax(0,1fr)}
}

/* ======================================================================
   NTW Agro Control v3.3 — agenda interativa, anexos e fluxos operacionais
   ====================================================================== */
.clickable-day{cursor:pointer;transition:background .16s ease,box-shadow .16s ease;outline:none}
.clickable-day:hover,.clickable-day:focus{background:#edf7f1!important;box-shadow:inset 0 0 0 2px rgba(34,135,79,.28)}
.day-top{display:flex;align-items:center;justify-content:space-between;gap:6px}
.day-add{display:inline-flex;width:24px;height:24px;border-radius:50%;align-items:center;justify-content:center;color:#28734a;background:#e4f2e9;font-weight:900;opacity:0;transform:scale(.86);transition:.15s}
.clickable-day:hover .day-add,.clickable-day:focus .day-add{opacity:1;transform:scale(1)}
.agenda-list>a{display:block;padding:11px 2px;border-bottom:1px solid #edf1ef;color:var(--text)}
.agenda-list>a:hover{background:#f5faf7}
.agenda-list>a b,.agenda-list>a small{display:block}.agenda-list>a small{color:var(--muted);font-size:11px;margin-top:3px}

.support-upload-panel{display:flex;flex-direction:column;gap:12px}
.upload-dropzone,.public-dropzone{display:flex!important;flex-direction:column!important;gap:8px!important;padding:18px!important;border:1.5px dashed #9fc7ae!important;border-radius:14px!important;background:#f4faf6!important;color:#244f37!important;cursor:pointer}
.upload-dropzone:hover,.public-dropzone:hover{border-color:#4d9c69!important;background:#edf7f1!important}
.upload-dropzone input,.public-dropzone input{width:100%;background:#fff;border:1px solid #d7e4dc;border-radius:10px;padding:10px}
.upload-dropzone small,.public-dropzone small{font-weight:500;color:var(--muted)}
.attachment-list{display:flex;flex-direction:column;gap:8px}
.attachment-row,.attachment-edit-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;border:1px solid #dce8e1;border-radius:12px;background:#fbfdfc;color:var(--text)}
.attachment-row:hover{background:#f0f7f3;border-color:#bdd5c5}
.attachment-row.static{grid-template-columns:38px minmax(0,1fr) auto auto}
.attachment-edit-row{grid-template-columns:38px minmax(0,1fr) auto auto;cursor:default}
.attachment-row span:nth-child(2),.attachment-edit-row span:nth-child(2){min-width:0}
.attachment-row b,.attachment-edit-row b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.attachment-row small,.attachment-edit-row small{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.attachment-row i{font-style:normal;font-size:11px;font-weight:800;color:var(--green2)}
.attachment-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#e8f4ec;color:#216844;font-weight:900}
.remove-attachment{display:flex;align-items:center;gap:5px;font-size:11px;color:#8a3f3f;white-space:nowrap}
.remove-attachment input{width:auto!important}
.attachment-delete{width:30px;height:30px;border:0;border-radius:9px;background:#fff0f0;color:#a63232;font-weight:900;cursor:pointer}

.agenda-resource-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px;margin-top:18px}
.inline-upload-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
.inline-upload-form input[type=file]{width:100%;border:1px solid #d6e3da;border-radius:10px;padding:8px;background:#fff}
.share-card{background:linear-gradient(145deg,#f2f8f4,#edf5f1)}
.share-link-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:14px 0}
.share-link-box input{width:100%;min-width:0;border:1px solid #c9ddd0;background:white;border-radius:10px;padding:10px;color:#345444}

.public-share-page{min-height:100vh;background:radial-gradient(circle at top right,rgba(50,151,88,.20),transparent 30%),linear-gradient(145deg,#0d3c29,#176440 58%,#238657);padding:28px 18px;display:flex;justify-content:center;align-items:flex-start}
.public-share-shell{width:min(760px,100%);display:flex;flex-direction:column;gap:14px}
.public-share-brand{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border-radius:20px;padding:14px 18px;box-shadow:0 18px 45px rgba(0,0,0,.14)}
.public-share-brand img{width:min(230px,60%);height:auto}.public-share-brand span{font-weight:800;color:#315b42;font-size:13px}
.public-event-card,.public-upload-card,.public-files{background:#fff;border-radius:20px;padding:24px;box-shadow:0 18px 45px rgba(0,0,0,.12)}
.public-event-card{background:linear-gradient(145deg,#fff,#f3f8f5)}
.public-event-card h1{font-size:28px;margin:7px 0 12px}.public-event-card p{color:#52665b;line-height:1.55;margin-bottom:0}
.public-event-meta{display:flex;gap:10px;flex-wrap:wrap}.public-event-meta span{background:#eaf4ee;padding:7px 10px;border-radius:999px;font-size:12px;color:#295d3f;font-weight:700}
.public-upload-card h2{margin:0 0 7px}.public-upload-card>p{margin:0 0 16px;color:var(--muted)}
.public-upload-card form{display:flex;flex-direction:column;gap:13px}.public-upload-card label:not(.public-dropzone){display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#355344}.public-upload-card label input{border:1px solid #d0ddd5;border-radius:10px;padding:11px}
.public-share-shell footer{text-align:center;color:#d9e9df;font-size:11px;padding:5px}

.actions form{margin:0}
.btn.danger{background:#fff4f4;border-color:#ecc6c6;color:#a22f2f}
.btn.danger:hover{background:#fdeaea;border-color:#dfaaaa}

@media(max-width:900px){.agenda-resource-grid{grid-template-columns:1fr}.attachment-row.static,.attachment-edit-row{grid-template-columns:36px minmax(0,1fr) auto}.attachment-row.static form,.attachment-edit-row .remove-attachment{grid-column:2 / -1}.inline-upload-form,.share-link-box{grid-template-columns:1fr}}
@media(max-width:620px){.attachment-row,.attachment-row.static,.attachment-edit-row{grid-template-columns:34px minmax(0,1fr)}.attachment-row>i,.attachment-row>a,.attachment-row.static>a,.attachment-row.static form,.attachment-edit-row>a,.attachment-edit-row .remove-attachment{grid-column:2}.public-event-card,.public-upload-card,.public-files{padding:19px}.public-share-brand{align-items:flex-start;flex-direction:column}.public-share-brand img{width:min(250px,90%)}}

/* ======================================================================
   NTW Agro Control v3.4 — Cliente > Empresas/CNPJs > Propriedades
   ====================================================================== */
.relationship-box{border:1px solid #bfd8c7;background:linear-gradient(145deg,#f4faf6,#edf6f0);border-radius:18px;padding:18px;margin-bottom:18px;box-shadow:0 10px 24px rgba(31,92,55,.06)}
.relationship-box.compact{padding:15px}
.relationship-head{display:flex;justify-content:space-between;gap:18px;margin-bottom:14px}.relationship-head h2{font-size:18px;margin:4px 0 5px}.relationship-head p{margin:0;color:var(--muted);font-size:12px}
.relationship-grid{align-items:end}.relationship-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid #d8e7dc}
.relationship-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid #d6e6da;border-radius:12px;padding:10px 12px;margin-top:12px;font-size:12px}.relationship-summary span{color:var(--muted)}.relationship-summary b{color:#174b31}.relationship-summary i{font-style:normal;color:#7da08a;font-size:18px}
.manual-client-box{border:1px dashed #c9d8cf;border-radius:14px;background:#fbfdfc;margin-bottom:18px}.manual-client-box summary{cursor:pointer;padding:12px 14px;font-weight:800;color:#4b6255;font-size:12px}.manual-client-fields{padding:0 14px 14px}.form-section-gap{margin-top:4px}
.order-relationship-trail{display:flex;align-items:stretch;gap:10px;margin-bottom:16px;padding:12px;background:linear-gradient(100deg,#eef7f1,#f8fbf9);border:1px solid #d5e6da;border-radius:16px;overflow-x:auto}.order-relationship-trail>div{min-width:180px;background:#fff;border:1px solid #deebe2;border-radius:12px;padding:10px 12px}.order-relationship-trail span,.order-relationship-trail small{display:block;color:var(--muted);font-size:10px}.order-relationship-trail b{display:block;margin:4px 0;font-size:13px}.order-relationship-trail>i{font-style:normal;display:grid;place-items:center;color:#69a17e;font-size:22px}
.relationship-profile-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;background:radial-gradient(circle at top right,rgba(81,173,112,.22),transparent 35%),linear-gradient(135deg,#103e2c,#17633f 65%,#24794d);color:#fff;border-radius:22px;padding:24px 26px;margin-bottom:16px;box-shadow:0 18px 36px rgba(21,76,47,.13)}.relationship-profile-hero h1{margin:5px 0 7px;font-size:28px}.relationship-profile-hero p{margin:0;color:#dcece3}.relationship-profile-hero .back.light{color:#cfe5d8}.relationship-profile-hero .producer-kicker{color:#bfe0cc}.relationship-profile-hero .btn:not(.primary){background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18);color:#fff;box-shadow:none}
.relationship-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.relationship-kpis>div{background:#fff;border:1px solid #dbe7df;border-radius:16px;padding:15px;box-shadow:var(--shadow-soft);min-width:0}.relationship-kpis span,.relationship-kpis small{display:block;color:var(--muted);font-size:11px}.relationship-kpis strong{display:block;font-size:24px;color:#174b31;margin:5px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.relationship-detail-grid{align-items:start}.entity-company,.entity-property{gap:12px}.entity-company .row-actions,.entity-property .row-actions{flex-wrap:wrap}
.form-card input[readonly]{background:#f2f6f3;color:#607067}
@media(max-width:1050px){.relationship-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.relationship-profile-hero{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.relationship-kpis{grid-template-columns:1fr}.order-relationship-trail{flex-direction:column}.order-relationship-trail>i{transform:rotate(90deg);height:18px}.relationship-profile-hero{padding:20px}.relationship-profile-hero .actions{width:100%}.relationship-profile-hero .actions .btn{flex:1 1 45%}}

/* ===== v3.5: CRM Produtor Legal + Portal Público ===== */
.conversation-btn{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:5px 9px;border:1px solid #bed7c8;border-radius:999px;background:#f4fbf6;color:#145c3a;font-weight:800;font-size:12px;transition:.18s}.conversation-btn:hover{background:#e7f6ec;transform:translateY(-1px)}.conversation-btn span{font-size:18px;line-height:1;transform:rotate(-8deg)}.conversation-btn b{min-width:16px;text-align:center}.prospect-page-title{padding:20px 22px;background:linear-gradient(135deg,#eef8f1,#f9fbf7);border:1px solid #dbeadf;border-radius:20px}.crm-layout{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.55fr);gap:20px;align-items:start}.crm-compose{position:sticky;top:102px}.crm-compose form{display:flex;flex-direction:column;gap:13px}.crm-compose label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#42524a}.crm-compose input,.crm-compose select,.crm-compose textarea{border:1px solid #d4dfd8;border-radius:11px;padding:11px 12px;background:#fff;outline:none}.crm-compose input:focus,.crm-compose select:focus,.crm-compose textarea:focus{border-color:#6ea888;box-shadow:0 0 0 3px rgba(37,126,76,.09)}.crm-bubble{width:44px;height:38px;border-radius:14px 14px 14px 4px;background:#e8f5ed;color:#17633c;display:grid;place-items:center;font-size:24px}.crm-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.crm-summary>div{background:#fff;border:1px solid var(--border);border-radius:14px;padding:13px;box-shadow:var(--shadow-soft)}.crm-summary span,.crm-summary b{display:block}.crm-summary span{font-size:10px;text-transform:uppercase;letter-spacing:.45px;color:var(--muted)}.crm-summary b{margin-top:5px;font-size:14px}.crm-timeline{display:flex;flex-direction:column;gap:12px}.crm-entry{display:grid;grid-template-columns:48px minmax(0,1fr);gap:11px;position:relative}.crm-entry:not(:last-child):before{content:"";position:absolute;left:23px;top:43px;bottom:-15px;width:2px;background:#d6e7dd}.crm-entry-marker{width:46px;height:42px;border-radius:16px 16px 16px 5px;background:linear-gradient(145deg,#145c3a,#23945a);color:#fff;display:grid;place-items:center;font-size:23px;box-shadow:0 8px 18px rgba(20,92,58,.16);z-index:1}.crm-entry-body{background:#fff;border:1px solid var(--border);border-radius:16px;padding:15px 17px;box-shadow:var(--shadow-soft)}.crm-entry-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.crm-entry-head time{font-size:11px;color:var(--muted);font-weight:600}.crm-entry-body p{white-space:pre-line;line-height:1.55;margin:12px 0;color:#33463b}.crm-entry-body>small{color:var(--muted)}.crm-files{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.crm-files a{padding:7px 9px;background:#f0f6f2;border:1px solid #d9e8df;border-radius:8px;font-size:11px;font-weight:700}.worklog-layout{display:grid;grid-template-columns:minmax(300px,.65fr) minmax(0,1.5fr);gap:18px;align-items:start}.worklog-form{display:flex;flex-direction:column;gap:12px;position:sticky;top:102px}.worklog-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}.worklog-form input,.worklog-form select,.worklog-form textarea{border:1px solid var(--border);border-radius:10px;padding:10px;background:#fff}.message-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.site-message-card p{white-space:pre-line;line-height:1.55;color:#34473d}.site-message-card form{margin-top:14px;border-top:1px solid var(--border);padding-top:12px}.site-message-card select{border:1px solid var(--border);border-radius:9px;padding:8px;background:#fff}.compact-hero{margin-bottom:18px}.module-ntw_support .neo-module-accent,.module-site_messages .neo-module-accent{background:linear-gradient(90deg,#2b6ed6,#41a5dd)}

/* Portal público */
.public-site{margin:0;background:#f6f8f5;color:#183027;font-family:Inter,Segoe UI,Arial,sans-serif}.public-container{width:min(1180px,calc(100% - 40px));margin:0 auto}.public-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid #dde8e1}.public-nav{height:82px;display:flex;align-items:center;gap:28px}.public-brand img{display:block;width:190px;height:auto}.public-nav nav{display:flex;align-items:center;gap:26px;margin-left:auto}.public-nav nav a{font-size:14px;font-weight:700;color:#40574b}.public-nav nav a:hover{color:#167144}.public-admin{padding:10px 13px;border:1px solid #ccdbd2;border-radius:10px;color:#52655a;font-size:12px;font-weight:700}.public-hero{min-height:630px;display:flex;align-items:center;background:radial-gradient(circle at 83% 24%,rgba(39,157,93,.22),transparent 23%),radial-gradient(circle at 8% 90%,rgba(35,89,177,.12),transparent 24%),linear-gradient(135deg,#0c3827 0%,#145c3a 52%,#187148 100%);overflow:hidden}.public-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,.75fr);gap:70px;align-items:center;padding:70px 0}.public-kicker{display:inline-flex;color:#d9f1e2;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px;margin-bottom:13px}.public-kicker.dark{color:#218151}.public-hero-copy h1{font-size:56px;line-height:1.03;letter-spacing:-1.7px;margin:0 0 20px;color:#fff;max-width:730px}.public-hero-copy>p{font-size:18px;line-height:1.65;color:#dcebe4;max-width:690px;margin:0}.public-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.public-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;padding:13px 18px;font-weight:800;font-size:14px;border:1px solid transparent;cursor:pointer}.public-btn.primary{background:#30a764;color:#fff;box-shadow:0 12px 28px rgba(20,92,58,.20)}.public-btn.ghost{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff}.public-btn.full{width:100%}.public-proof{display:flex;flex-wrap:wrap;gap:9px 18px;margin-top:26px;color:#dbece4;font-size:12px;font-weight:700}.public-hero-card{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);border-radius:28px;padding:20px;box-shadow:0 30px 55px rgba(0,0,0,.16)}.public-logo-card{background:#fff;border-radius:21px;padding:28px 24px;display:grid;place-items:center}.public-logo-card img{width:min(330px,100%)}.public-hero-note{padding:22px 10px 8px;color:#fff}.public-hero-note span{font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:#cfe6da;font-weight:800}.public-hero-note b{display:block;font-size:22px;margin:7px 0 8px}.public-hero-note p{margin:0;color:#dcebe4;line-height:1.5}.public-section{padding:90px 0}.public-about{background:#fff}.public-about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.public-about h2,.public-section-head h2,.public-contact h2{font-size:38px;line-height:1.12;letter-spacing:-.8px;margin:0}.public-about-grid>div>p{font-size:17px;line-height:1.7;color:#607268;margin:0}.public-about-points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px}.public-about-points span{padding:16px;border-radius:14px;background:#f1f7f3;border:1px solid #dcebe2}.public-about-points b,.public-about-points small{display:block}.public-about-points b{color:#145c3a}.public-about-points small{margin-top:5px;color:#6b7c72;line-height:1.4}.public-services{background:linear-gradient(180deg,#eef5f0,#f8faf8)}.public-section-head{max-width:700px;margin-bottom:30px}.public-section-head p{color:#6b7b72}.public-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.public-service-card{min-height:230px;background:#fff;border:1px solid #dce7e0;border-radius:20px;padding:22px;display:flex;flex-direction:column;box-shadow:0 12px 28px rgba(16,56,36,.06)}.public-service-card>span{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:#278453;font-weight:800}.public-service-card h3{font-size:20px;margin:10px 0 11px;color:#183429}.public-service-card p{font-size:13px;line-height:1.6;color:#66776d;flex:1}.public-service-card a{font-size:13px;font-weight:800;color:#167344}.empty-public{grid-column:1/-1;min-height:auto}.public-contact{background:linear-gradient(135deg,#0f3e2c,#176b44);color:#fff}.public-contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}.public-contact p{font-size:16px;line-height:1.65;color:#dbe9e2}.public-contact-note{margin-top:20px;display:inline-flex;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.11);font-size:12px}.public-form-card{background:#fff;color:#20352b;border-radius:24px;padding:26px;box-shadow:0 28px 55px rgba(0,0,0,.15)}.public-form-card form{display:flex;flex-direction:column;gap:13px}.public-form-card label{font-size:12px;font-weight:800;display:flex;flex-direction:column;gap:6px}.public-form-card input,.public-form-card select,.public-form-card textarea{width:100%;border:1px solid #d4e1d9;border-radius:11px;padding:12px;background:#fff;outline:none}.public-form-card input:focus,.public-form-card select:focus,.public-form-card textarea:focus{border-color:#65a981;box-shadow:0 0 0 3px rgba(37,126,76,.09)}.public-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.public-footer{background:#092c1f;color:#c6d9cf;padding:24px 0}.public-footer .public-container{display:flex;align-items:center;gap:18px}.public-footer img{width:150px;background:#fff;border-radius:10px;padding:7px}.public-footer span{font-size:12px}.public-footer a{margin-left:auto;color:#bcd1c6;font-size:11px}

@media(max-width:980px){.crm-layout,.worklog-layout,.public-hero-grid,.public-about-grid,.public-contact-grid{grid-template-columns:1fr}.crm-compose,.worklog-form{position:static}.crm-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.message-grid,.public-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-hero{min-height:auto}.public-hero-copy h1{font-size:44px}.public-nav nav{display:none}.public-admin{margin-left:auto}.public-hero-grid{gap:32px}.public-about-grid,.public-contact-grid{gap:32px}}
@media(max-width:620px){.crm-summary,.message-grid,.public-service-grid,.public-about-points,.public-form-row{grid-template-columns:1fr}.public-container{width:min(100% - 24px,1180px)}.public-nav{height:70px}.public-brand img{width:150px}.public-admin{padding:8px 10px;font-size:10px}.public-hero-grid{padding:45px 0}.public-hero-copy h1{font-size:34px}.public-hero-copy>p{font-size:15px}.public-section{padding:60px 0}.public-about h2,.public-section-head h2,.public-contact h2{font-size:30px}.crm-entry{grid-template-columns:38px minmax(0,1fr)}.crm-entry-marker{width:38px;height:36px}.crm-entry:not(:last-child):before{left:18px}}

/* v3.6 - Editor do site e WhatsApp público */
.module-site-settings .neo-module-accent{background:linear-gradient(90deg,#1f78d1,#42a5f5)}
.module-site-settings .neo-module-icon{background:#eaf4ff;color:#245f99}
.module-switcher-item.module-site-settings .module-switcher-icon{background:#eaf4ff;color:#245f99}

.site-settings-shell{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;align-items:start}
.site-settings-nav{position:sticky;top:104px;padding:16px;display:flex;flex-direction:column;gap:7px}
.site-settings-nav>b{font-size:15px;margin-bottom:4px}.site-settings-nav>a{padding:10px 11px;border-radius:10px;color:#365548;font-weight:700;font-size:12px}.site-settings-nav>a:hover{background:#edf6f1;color:#17673f}.site-settings-preview{border-top:1px solid var(--border);margin-top:8px;padding-top:12px;display:flex;flex-direction:column;gap:7px}.site-settings-preview span{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-weight:800}.site-settings-preview a{font-size:12px;font-weight:700}
.site-settings-main{display:flex;flex-direction:column;gap:16px;min-width:0}.settings-section{scroll-margin-top:110px}.settings-section-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #e6eee9}.settings-section-head h2{margin:4px 0 4px;font-size:20px}.settings-section-head p{margin:0;color:var(--muted);font-size:12px}.settings-badge{font-size:10px;text-transform:uppercase;letter-spacing:.5px;padding:6px 9px;border-radius:999px;background:#eaf6ee;color:#217249;font-weight:800}
.settings-whatsapp-test{margin-top:16px;padding:13px 14px;border-radius:12px;background:#f0f8f3;border:1px solid #d8eade;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.settings-whatsapp-test span{font-size:11px;font-weight:800;color:#406150}.settings-whatsapp-test code{font-size:11px;color:#52645a;word-break:break-all;flex:1;min-width:220px}
.site-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.site-media-card{padding:16px;border:1px solid var(--border);border-radius:14px;background:#f8fbf9;display:flex;flex-direction:column;gap:12px;align-items:flex-start}.site-media-card>b{font-size:13px}.site-media-card>img{width:100%;height:170px;object-fit:contain;background:#fff;border:1px solid #e1eae5;border-radius:12px;padding:12px}.site-media-card>img.hero-preview{object-fit:cover;padding:0}.site-media-placeholder{height:170px;width:100%;border:1px dashed #bfd2c6;border-radius:12px;display:grid;place-items:center;text-align:center;color:var(--muted);font-size:12px;background:#fff}
.settings-toggles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.settings-toggles label{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#f9fbfa;cursor:pointer}.settings-toggles input{margin-top:3px}.settings-toggles b,.settings-toggles small{display:block}.settings-toggles b{font-size:13px}.settings-toggles small{color:var(--muted);margin-top:3px;line-height:1.35}.settings-footer-field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;margin-top:14px}.settings-footer-field input{border:1px solid #d4dfd8;border-radius:10px;padding:11px;background:#fff}
.site-settings-save{position:sticky;bottom:14px;z-index:5;background:#103c2a;color:#fff;border-radius:15px;padding:12px 14px;display:flex;justify-content:space-between;gap:14px;align-items:center;box-shadow:0 18px 40px rgba(13,47,31,.22)}.site-settings-save span{font-size:12px;color:#dcece3}.site-settings-save .btn{box-shadow:none}

.public-whatsapp-top{padding:10px 13px;border-radius:10px;background:#24a85a;color:#fff!important;font-size:12px;font-weight:800;white-space:nowrap;box-shadow:0 8px 18px rgba(36,168,90,.18)}
.public-btn.whatsapp{background:#25a95a;color:#fff;box-shadow:0 12px 28px rgba(20,120,62,.23)}.public-btn.whatsapp:hover,.public-whatsapp-top:hover{background:#1f914c}.contact-whatsapp{margin-top:18px}
.public-service-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:9px}.public-service-actions a{font-size:12px;font-weight:800;color:#167344}.public-service-actions a:first-child{color:#1d8e4c}
.public-contact-details{display:flex;flex-direction:column;gap:8px;margin-top:18px}.public-contact-details span{display:flex;flex-direction:column;gap:2px;color:#dbe9e2;font-size:13px}.public-contact-details b{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:#9fd1b3}
.public-socials{display:flex;gap:12px;margin-left:auto}.public-socials a{color:#d4e4dc!important;font-size:11px;font-weight:700}.public-footer .public-socials+a{margin-left:0}
.public-whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:80;background:#24a85a;color:#fff;border-radius:999px;padding:9px 15px 9px 9px;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;box-shadow:0 16px 35px rgba(7,71,35,.28);transition:.16s}.public-whatsapp-float:hover{transform:translateY(-2px);background:#1f914c}.public-whatsapp-float span{width:34px;height:34px;border-radius:50%;background:#fff;color:#22934f;display:grid;place-items:center;font-size:10px;font-weight:900}.public-whatsapp-float b{color:#fff}
.public-hero-photo{height:310px;border-radius:21px;overflow:hidden;background:#fff}.public-hero-photo img{width:100%;height:100%;object-fit:cover;display:block}.public-hero-card.has-photo{padding:14px}

@media(max-width:980px){.site-settings-shell{grid-template-columns:1fr}.site-settings-nav{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.site-settings-nav>b,.site-settings-preview{grid-column:1/-1}.public-whatsapp-top{margin-left:auto}.public-nav .public-whatsapp-top+.public-admin{margin-left:0}}
@media(max-width:700px){.site-settings-nav{grid-template-columns:1fr 1fr}.site-media-grid,.settings-toggles{grid-template-columns:1fr}.site-settings-save{position:static;align-items:stretch;flex-direction:column}.public-whatsapp-top{display:none}.public-socials{margin-left:0}.public-footer .public-container{flex-wrap:wrap}.public-footer .public-container>span{width:100%}.public-whatsapp-float{right:12px;bottom:12px}.public-whatsapp-float b{display:none}.public-whatsapp-float{padding:7px}}
