/* Controle de ponto */
.time-clock-head{align-items:flex-end}.time-clock-monthbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px;padding:14px 17px}.time-clock-monthbar form{display:flex;align-items:end;gap:10px;margin:0}.time-clock-monthbar label{display:grid;gap:5px;color:#52657a;font-size:9px;font-weight:850}.time-clock-monthbar input{min-height:36px}.time-clock-monthbar button{min-height:36px;padding:0 13px;font-size:10px}.time-clock-closure-state{display:grid;justify-items:end;gap:2px}.time-clock-closure-state small{color:#8090a1;font-size:8px;font-weight:800;text-transform:uppercase}.time-clock-closure-state strong{color:#b17a00;font-size:13px}.time-clock-closure-state strong.closed{color:#16764f}.time-clock-closure-state span{color:#8090a1;font-size:8px}.time-clock-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:0 0 15px}.time-clock-kpis article{display:grid;gap:4px;min-height:105px;padding:17px;border:1px solid #e0e6ed;border-radius:13px;background:#fff;box-shadow:0 7px 18px rgba(18,39,63,.045)}.time-clock-kpis span{color:#77879a;font-size:9px;font-weight:800;text-transform:uppercase}.time-clock-kpis b{color:#1c354e;font-size:24px;letter-spacing:-.7px}.time-clock-kpis small{color:#8593a3;font-size:9px}.time-clock-kpis .attention{border-color:#cde6dc;background:#f8fdfb}.time-clock-kpis .attention b{color:#168358}.time-clock-kpis .warning{border-color:#f0dba8;background:#fffdf7}.time-clock-kpis .warning b{color:#b67400}.time-clock-policy{margin:0 0 15px;padding:11px 13px;border:1px solid #d3e6ee;border-radius:9px;color:#356376;background:#f4fbfd;font-size:10px}.time-clock-policy.neutral{border-color:#e2e6ea;color:#708093;background:#fafbfc}.time-clock-table-panel{padding:20px}.time-clock-table-panel .panel-title-row a{font-size:10px;font-weight:800}.time-clock-balance{display:inline-flex;padding:4px 7px;border-radius:6px;color:#5c6b7d;background:#f1f4f7;font-size:9px;font-weight:850;white-space:nowrap}.time-clock-balance.positive{color:#157c54;background:#e5f6ed}.time-clock-balance.negative{color:#b33342;background:#fff0f1}.time-clock-settings-layout,.time-clock-schedules-layout,.time-clock-closure-layout,.time-clock-adjustment-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.time-clock-settings-form,.time-clock-info-card,.time-clock-adjustment-layout>.panel,.time-clock-closure-layout>.panel{padding:21px}.time-clock-info-card{background:linear-gradient(145deg,#f8fbfd,#edf5f8)}.time-clock-info-card h2{margin:5px 0 15px;color:#263d56;font-size:18px}.time-clock-info-card ol{display:grid;gap:12px;margin:0;padding:0;list-style:none}.time-clock-info-card li{display:flex;align-items:center;gap:10px;color:#5e7185;font-size:10px;line-height:1.45}.time-clock-info-card li b{display:grid;flex:0 0 auto;width:24px;height:24px;place-items:center;border-radius:7px;color:#815b00;background:#ffdf79;font-size:9px}.time-clock-info-card>p{margin:16px 0 0;color:#718295;font-size:9px;line-height:1.55}.time-clock-weekdays{margin:0;padding:0;border:0}.time-clock-weekdays legend{margin-bottom:7px;color:#52657a;font-size:9px;font-weight:850}.time-clock-weekdays>div{display:flex;flex-wrap:wrap;gap:7px}.time-clock-weekdays label{display:flex!important;align-items:center;gap:4px;padding:7px 8px;border:1px solid #dce3ea;border-radius:6px;color:#51657b;font-size:9px!important}.time-clock-weekdays input{width:auto;min-height:auto}.time-clock-schedule-list{margin-top:15px;padding:20px}.time-clock-schedule-cards{display:grid;gap:9px}.time-clock-schedule-card{overflow:hidden;border:1px solid #dee5eb;border-radius:9px;background:#fff}.time-clock-schedule-card summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;cursor:pointer}.time-clock-schedule-card summary span:first-child{display:grid;gap:3px}.time-clock-schedule-card summary b{color:#263d55;font-size:11px}.time-clock-schedule-card summary small{color:#758497;font-size:9px}.time-clock-schedule-card form{margin:0;padding:14px;border-top:1px solid #e6ebef;background:#f8fafb}.time-clock-access-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px;padding:20px;border-color:#d6e2f1;background:linear-gradient(115deg,#f7fbff,#fff)}.time-clock-access-card.compact{border-color:#e1e7ec;background:#fff}.time-clock-access-card h2{margin:4px 0;color:#263c54;font-size:17px}.time-clock-access-card p{max-width:680px;margin:0;color:#738398;font-size:10px;line-height:1.5}.time-clock-access-card code{display:block;max-width:720px;margin-top:11px;padding:9px 10px;overflow:auto;border:1px dashed #b8c9dc;border-radius:7px;color:#285681;background:#fff;font:9px ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap}.time-clock-access-card form{margin:0}.time-clock-mirror-panel{padding:20px}.time-clock-marks{display:grid;gap:4px;min-width:150px}.time-clock-marks>span{display:flex;align-items:center;flex-wrap:wrap;gap:4px;color:#596b7d;font-size:9px}.time-clock-marks b{color:#213b55}.time-clock-marks small{padding:2px 4px;border-radius:4px;color:#5b6e80;background:#edf2f5;font-size:7px}.time-clock-adjustment{display:grid;gap:2px;margin-bottom:5px;color:#67531b;font-size:8px}.time-clock-adjustment small{color:#8a806a;font-size:7px;line-height:1.3}.time-clock-public-body{min-height:100vh!important;background:radial-gradient(circle at 5% 0,#35597e,transparent 30%),linear-gradient(135deg,#142941,#1b3857)!important}.time-clock-public-main{display:grid!important;min-height:100vh;padding:0!important;place-items:center}.time-clock-public-shell{width:min(100%,510px);padding:30px 18px}.time-clock-public-brand{display:flex;align-items:center;justify-content:space-between;margin:0 0 16px;padding:0 4px}.time-clock-public-brand img{width:132px;filter:brightness(0) invert(1)}.time-clock-public-brand span{color:#b8cbe0;font-size:9px;font-weight:900;letter-spacing:1px}.time-clock-public-card{overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:#fff;box-shadow:0 24px 65px rgba(2,12,26,.38)}.time-clock-public-card>header{display:flex;align-items:center;gap:11px;padding:21px;border-bottom:1px solid #e7edf2}.time-clock-public-avatar{display:grid;flex:0 0 auto;width:42px;height:42px;place-items:center;border-radius:13px;color:#1d3048;background:#ffce48;font-size:16px;font-weight:900}.time-clock-public-card header div{display:grid;gap:2px}.time-clock-public-card header small{color:#8090a0;font-size:8px;font-weight:800;letter-spacing:.7px}.time-clock-public-card h1{margin:0;color:#223b54;font-size:20px}.time-clock-public-card header p{margin:0;color:#7d8c9b;font-size:9px}.time-clock-live{display:flex;align-items:center;gap:5px;margin-left:auto;color:#177e57;font-size:8px;font-weight:850}.time-clock-live i{width:6px;height:6px;border-radius:50%;background:#2abc7d;box-shadow:0 0 0 4px #dff6eb}.time-clock-public-date{display:grid;gap:3px;padding:15px 21px;color:#3b526a;background:#f8fafc}.time-clock-public-date strong{font-size:13px}.time-clock-public-date span{color:#8391a0;font-size:9px}.time-clock-public-actions{padding:21px}.time-clock-public-actions h2,.time-clock-public-marks h2{margin:0;color:#263d55;font-size:16px}.time-clock-public-actions>p{margin:6px 0 14px;color:#718297;font-size:10px;line-height:1.5}.time-clock-punch-form{margin:8px 0 0}.time-clock-punch-form button{width:100%;min-height:48px;border:0;border-radius:10px;color:#fff;background:#2761cb;font-size:12px;font-weight:850;cursor:pointer}.time-clock-punch-form button.break{color:#684a00;background:#ffe08a}.time-clock-punch-form button.return{background:#19845e}.time-clock-punch-form button.exit{background:#40556d}.time-clock-punch-form button:disabled{opacity:.65;cursor:wait}.time-clock-public-marks{display:grid;gap:7px;padding:18px 21px;border-top:1px solid #e7edf2;background:#fff}.time-clock-public-marks header{display:flex;align-items:center;justify-content:space-between;padding:0!important;border:0!important}.time-clock-public-marks header span{color:#23815d;font-size:9px;font-weight:850}.time-clock-public-marks>div{display:grid;grid-template-columns:1fr auto auto;gap:10px;padding:9px 0;border-bottom:1px solid #edf0f3;color:#617286;font-size:10px}.time-clock-public-marks>div:last-child{border:0}.time-clock-public-marks b{color:#213c57}.time-clock-public-marks small{color:#8291a0;font-size:8px}.time-clock-public-marks p{margin:3px 0;color:#7f8e9d;font-size:10px}.time-clock-public-card>footer{display:grid;gap:4px;padding:15px 21px;color:#708195;background:#f6f8fa;font-size:8px;line-height:1.5}.time-clock-public-card>footer b{color:#43586e;font-size:9px}.time-clock-public-notice{display:grid;gap:3px;margin:18px 21px;padding:12px;border-radius:9px;font-size:10px}.time-clock-public-notice.warning{color:#805700;background:#fff6d9}.time-clock-public-notice.success{color:#167655;background:#e9f8ef}.time-clock-public-card.invalid{display:grid;justify-items:center;padding:42px 26px;text-align:center}.time-clock-public-icon{display:grid;width:47px;height:47px;place-items:center;border-radius:15px;color:#a33341;background:#ffe8eb;font-size:25px;font-weight:900}.time-clock-public-card.invalid h1{margin:14px 0 8px}.time-clock-public-card.invalid p{max-width:340px;margin:0;color:#718296;font-size:12px;line-height:1.55}
@media(max-width:900px){.time-clock-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.time-clock-settings-layout,.time-clock-schedules-layout,.time-clock-closure-layout,.time-clock-adjustment-layout{grid-template-columns:1fr}.time-clock-access-card{align-items:flex-start;flex-direction:column}.time-clock-access-card .button{width:100%}}
@media(max-width:560px){.time-clock-head{align-items:flex-start}.time-clock-monthbar{align-items:stretch;flex-direction:column}.time-clock-monthbar form{align-items:stretch;flex-direction:column}.time-clock-monthbar button{width:100%}.time-clock-closure-state{justify-items:start}.time-clock-kpis{grid-template-columns:1fr 1fr;gap:8px}.time-clock-kpis article{min-height:92px;padding:13px}.time-clock-kpis b{font-size:20px}.time-clock-table-panel,.time-clock-mirror-panel,.time-clock-schedule-list{padding:14px}.time-clock-public-shell{padding:18px 12px}.time-clock-public-brand img{width:118px}.time-clock-public-card>header{padding:17px}.time-clock-public-actions,.time-clock-public-marks{padding:17px}.time-clock-public-marks>div{grid-template-columns:1fr auto}.time-clock-public-marks small{grid-column:1/-1}.time-clock-public-card>footer{padding:14px 17px}.time-clock-weekdays>div{gap:5px}}
.form-divider{width:100%;height:1px;margin:7px 0;border:0;background:#e2e7ec}.time-clock-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:158px}.time-clock-pdf-button{min-height:28px!important;padding:0 9px!important;border-radius:6px!important;font-size:8px!important;white-space:nowrap}.time-clock-detailed-wrap{max-width:100%;overflow-x:auto;border:1px solid #dce3ea;border-radius:7px}.time-clock-detailed-table{width:100%;min-width:1540px;border-collapse:separate;border-spacing:0}.time-clock-detailed-table th,.time-clock-detailed-table td{padding:8px 7px;border-right:1px solid #e3e8ed;border-bottom:1px solid #e3e8ed;text-align:center;white-space:nowrap}.time-clock-detailed-table thead th{color:#fff;background:#263d55;font-size:8px;line-height:1.25}.time-clock-detailed-table thead .time-clock-groups th{background:#182b43;font-size:8px;text-transform:uppercase}.time-clock-detailed-table tbody td{color:#536579;font-size:9px}.time-clock-detailed-table tbody td:first-child,.time-clock-detailed-table .time-clock-reason{text-align:left}.time-clock-detailed-table tbody tr:nth-child(even){background:#f8fafc}.time-clock-detailed-table .time-clock-row-pending{background:#fffaf0}.time-clock-detailed-table tfoot th,.time-clock-detailed-table tfoot td{color:#fff;background:#42566d;font-size:8px;font-weight:850}.time-clock-punch-cell{min-width:62px}.time-clock-punch-cell b{color:#203a54;font-size:10px}.time-clock-punch-cell sup{margin-left:2px;color:#b27a00;font-size:7px;font-weight:900}.time-clock-punch-cell small{display:block;max-width:72px;overflow:hidden;color:#8694a3;font-size:7px;text-overflow:ellipsis}.time-clock-reason{min-width:150px;max-width:230px;white-space:normal!important;line-height:1.35}.time-clock-reason small{display:block;margin-top:3px;color:#8190a0;font-size:7px}.time-clock-legend{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:11px;color:#748398;font-size:8px}.time-clock-legend span{display:flex;align-items:center;gap:4px}.time-clock-legend b{display:inline-grid;min-width:19px;height:19px;padding:0 4px;place-items:center;border-radius:4px;color:#263d55;background:#edf2f5;font-size:7px}

:root {
  --nav: #101c2f;
  --nav-soft: #172741;
  --accent: #0ea5e9;
  --accent-dark: #d95e0d;
  --blue: #9a6800;
  --green: #159a62;
  --red: #dc3f4d;
  --amber: #d98b13;
  --bg: #f3f6fa;
  --surface: #ffffff;
  --text: #192437;
  --muted: #66748a;
  --line: #e1e7ef;
  --shadow: 0 8px 24px rgba(20, 35, 60, .07);
  --shadow-lg: 0 20px 55px rgba(10, 25, 50, .16);
  --radius: 14px;
}

* { box-sizing: border-box; }
html { min-height: 100%; }
body { margin: 0; min-height: 100vh; font-family: "Segoe UI", Inter, Arial, sans-serif; color: var(--text); background: var(--bg); font-size: 15px; }
button, input, select, textarea { font: inherit; }
a { color: inherit; }

/* Navegação */
.sidebar { position: fixed; inset: 0 auto 0 0; z-index: 50; width: 260px; display: flex; flex-direction: column; padding: 24px 16px 18px; color: #fff; background: linear-gradient(180deg, #111e32 0%, #0c1728 100%); box-shadow: 12px 0 35px rgba(7, 18, 34, .12); }
.brand { display: block; padding: 0 7px 20px; color: #fff; text-decoration: none; }
.logo-crop { position: relative; display: block; overflow: hidden; background: #fff; }
.logo-crop img { display: block; width: 100%; height: auto; }
.sidebar-brand-logo { width: 100%; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; box-shadow: 0 10px 24px rgba(2,12,28,.24); }
.brand-mark { display: grid; place-items: center; flex: 0 0 auto; width: 42px; height: 42px; border-radius: 12px; color: #fff; background: linear-gradient(145deg, #ff8b37, #e35d0c); box-shadow: 0 8px 18px rgba(244, 118, 33, .3); font-size: 14px; font-weight: 900; letter-spacing: .5px; }
.brand-mark.large { width: 52px; height: 52px; border-radius: 15px; font-size: 17px; }
.brand-copy { display: grid; gap: 2px; }
.brand-copy strong { font-size: 19px; letter-spacing: 1.4px; }
.brand-copy small { color: #93a2b8; font-size: 11px; letter-spacing: .4px; }
.main-nav { display: flex; flex-direction: column; gap: 5px; flex: 1; overflow-y: auto; padding: 7px 0; }
.nav-label { padding: 7px 13px 4px; color: #6f819b; font-size: 10px; font-weight: 800; letter-spacing: 1.25px; }
.nav-label-spaced { margin-top: 12px; }
.nav-link { position: relative; display: flex; align-items: center; gap: 11px; min-height: 44px; padding: 8px 11px; border: 1px solid transparent; border-radius: 11px; color: #b8c4d5; text-decoration: none; font-weight: 600; transition: .18s ease; }
.nav-link:hover { color: #fff; background: rgba(255,255,255,.06); transform: translateX(2px); }
.nav-link.active { color: #fff; border-color: rgba(255,255,255,.07); background: linear-gradient(90deg, rgba(244,118,33,.2), rgba(244,118,33,.06)); }
.nav-link.active::before { content: ""; position: absolute; left: -16px; width: 4px; height: 25px; border-radius: 0 5px 5px 0; background: var(--accent); box-shadow: 0 0 15px rgba(244,118,33,.55); }
.nav-icon { display: grid; place-items: center; width: 29px; height: 29px; border-radius: 8px; color: #cbd5e4; background: rgba(255,255,255,.07); font-size: 12px; font-weight: 800; }
.nav-link.active .nav-icon { color: #fff; background: var(--accent); }
.assistant-nav > small { margin-left: auto; padding: 3px 6px; border-radius: 999px; color: #ffd9c0; background: rgba(244,118,33,.16); font-size: 8px; font-weight: 900; letter-spacing: .5px; text-transform: uppercase; }
.assistant-nav.active > small { color: #fff; background: var(--accent); }
.sidebar-footer { padding: 15px 7px 0; border-top: 1px solid rgba(255,255,255,.08); }
.sidebar-user { display: flex; align-items: center; gap: 10px; padding: 4px 3px 13px; }
.sidebar-user > span:last-child { display: grid; gap: 2px; min-width: 0; }
.sidebar-user strong { overflow: hidden; text-overflow: ellipsis; font-size: 13px; white-space: nowrap; }
.sidebar-user small { color: #8192aa; font-size: 11px; }
.avatar { display: grid; place-items: center; flex: 0 0 auto; width: 36px; height: 36px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; color: #fff; background: #263a58; font-size: 13px; font-weight: 800; }
.avatar.small { width: 30px; height: 30px; color: var(--nav); background: #e8eef7; border: 0; }
.logout-link { display: flex; justify-content: space-between; align-items: center; padding: 10px 8px; border-radius: 8px; color: #91a2b9; text-decoration: none; font-size: 13px; font-weight: 600; }
.logout-link:hover { color: #fff; background: rgba(255,255,255,.05); }
.sidebar-backdrop { display: none; }

/* Estrutura */
main { min-height: 100vh; margin-left: 260px; background: radial-gradient(circle at 95% 0%, rgba(14,165,233,.07), transparent 28%), var(--bg); }
.topbar { position: sticky; top: 0; z-index: 30; height: 72px; display: flex; align-items: center; justify-content: space-between; padding: 0 34px; border-bottom: 1px solid rgba(217,225,235,.9); background: rgba(255,255,255,.88); backdrop-filter: blur(14px); }
.topbar-left,.topbar-right,.topbar-user { display: flex; align-items: center; }
.topbar-left { gap: 13px; }
.topbar-title { display: flex; align-items: center; gap: 11px; }
.topbar-title small { color: var(--accent); font-size: 9px; font-weight: 900; letter-spacing: 1.4px; }
.topbar-title strong { font-size: 14px; }
.topbar-brand-logo { width: 124px; flex: 0 0 auto; border: 1px solid #e1e7ef; border-radius: 8px; }
.topbar-right { gap: 20px; color: #4d5b70; font-size: 13px; font-weight: 600; }
.topbar-user { gap: 8px; }
.system-status { display: flex; align-items: center; gap: 7px; padding: 7px 11px; border: 1px solid #dfe8e3; border-radius: 999px; color: #317158; background: #f4fbf7; font-size: 11px; }
.system-status i { width: 7px; height: 7px; border-radius: 50%; background: #24ae74; box-shadow: 0 0 0 4px rgba(36,174,116,.12); }
.menu-toggle { display: none; width: 40px; height: 40px; padding: 0; border: 1px solid var(--line); border-radius: 10px; color: var(--text); background: #fff; box-shadow: none; }
.content { width: 100%; max-width: 1680px; margin: 0 auto; padding: 31px 36px 48px; }
.page-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 22px; }
.page-head h1 { margin: 3px 0 0; font-size: clamp(25px, 2.2vw, 32px); line-height: 1.15; letter-spacing: -.65px; }
.page-head p { margin: 7px 0 0; color: var(--muted); line-height: 1.5; }
.eyebrow { color: var(--accent); font-size: 10px; font-weight: 900; letter-spacing: 1.45px; }

/* Botões e campos */
button,.button { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 42px; padding: 9px 16px; border: 0; border-radius: 10px; color: #fff; background: linear-gradient(135deg, #23b8ec, #087eae); box-shadow: 0 6px 14px rgba(231,95,14,.2); font-weight: 750; text-decoration: none; cursor: pointer; transition: transform .16s ease, box-shadow .16s ease, background .16s ease; }
button:hover,.button:hover { transform: translateY(-1px); box-shadow: 0 9px 20px rgba(231,95,14,.24); }
button:active,.button:active { transform: translateY(0); }
.secondary { color: #45536a; background: #e9eef5; box-shadow: none; }
.secondary:hover { background: #dfe6ef; box-shadow: none; }
input,select,textarea { width: 100%; min-height: 43px; padding: 10px 12px; border: 1px solid #ccd6e3; border-radius: 9px; outline: none; color: var(--text); background: #fff; transition: border-color .16s ease, box-shadow .16s ease; }
input::placeholder,textarea::placeholder { color: #98a4b5; }
input:focus,select:focus,textarea:focus { border-color: #f28a48; box-shadow: 0 0 0 4px rgba(244,118,33,.11); }
textarea { min-height: 96px; resize: vertical; }
label { color: #344156; }
.form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; padding: 24px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); }
.form-grid label,.form-stack label { display: grid; align-content: start; gap: 7px; font-size: 13px; font-weight: 750; }
.form-stack { display: grid; gap: 15px; }
.wide { grid-column: 1/-1; }
.form-actions { display: flex; align-items: center; justify-content: flex-start; gap: 10px; padding-top: 3px; }
.current-file { align-self: end; padding: 11px 0; color: var(--muted); font-size: 13px; }
.current-file a { color: var(--blue); font-weight: 750; }

/* Cards e painéis */
.cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 17px; }
.card,.panel { border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); }
.card { position: relative; min-height: 119px; overflow: hidden; padding: 21px 22px; transition: transform .18s ease, box-shadow .18s ease; }
.card::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: #8ea0b8; }
.card:nth-child(1)::before { background: var(--blue); }
.card:nth-child(2)::before { background: #7657d8; }
.card:nth-child(3)::before { background: var(--green); }
.card:nth-child(4)::before { background: var(--red); }
.card:nth-child(5)::before { background: var(--amber); }
.card:nth-child(6)::before { background: #5d718d; }
.card:hover { transform: translateY(-2px); box-shadow: 0 13px 28px rgba(20,35,60,.1); }
.card span { display: block; color: var(--muted); font-size: 13px; font-weight: 650; }
.card span small { font-size: 10px; }
.card b { display: block; margin-top: 12px; font-size: 27px; line-height: 1.05; letter-spacing: -.5px; }
.card-receivable b { color: var(--green); }
.card-payable b { color: var(--red); }
.panel { padding: 21px; }
.panel h2 { margin: 0 0 16px; font-size: 16px; letter-spacing: -.2px; }
.grid-3 { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 17px; margin-top: 18px; }
.line { display: flex; justify-content: space-between; gap: 13px; padding: 12px 0; border-top: 1px solid #edf0f4; font-size: 13px; }
.line span { min-width: 0; overflow: hidden; color: #48566b; text-overflow: ellipsis; white-space: nowrap; }
.line b { flex: 0 0 auto; font-size: 13px; }
.empty-state { padding: 24px; color: var(--muted); text-align: center; }
details.panel { margin-bottom: 17px; padding: 0; overflow: hidden; }
details.panel summary { padding: 18px 21px; border-bottom: 1px solid transparent; list-style: none; font-weight: 800; cursor: pointer; }
details.panel summary::-webkit-details-marker { display: none; }
details.panel summary::after { content: "+"; float: right; display: grid; place-items: center; width: 25px; height: 25px; margin-top: -4px; border-radius: 7px; color: var(--accent); background: #fff1e8; }
details.panel[open] summary { border-bottom-color: var(--line); }
details.panel[open] summary::after { content: "−"; }
details.panel .form-grid { border: 0; border-radius: 0; box-shadow: none; }

/* Agenda financeira do dia */
.today-due-panel { margin-top: 18px; }
.today-due-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.today-due-heading h2 { margin: 3px 0 0; font-size: 18px; }
.today-date { padding: 7px 11px; border: 1px solid #d5dde7; border-radius: 999px; color: #526277; background: #f7f9fc; font-size: 11px; font-weight: 800; }
.today-due-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }
.today-due-card { overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.today-due-card header { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 15px 17px; border-bottom: 1px solid var(--line); }
.today-due-card header > div { display: grid; gap: 4px; }
.today-due-card header span { color: var(--muted); font-size: 12px; font-weight: 750; }
.today-due-card header b { font-size: 22px; }
.today-due-card header small { padding: 5px 8px; border-radius: 999px; font-size: 10px; font-weight: 800; }
.today-payable header { border-left: 4px solid var(--red); background: #fff8f8; }
.today-payable header b { color: var(--red); }
.today-payable header small { color: #a92d39; background: #ffe4e7; }
.today-receivable header { border-left: 4px solid var(--green); background: #f6fcf9; }
.today-receivable header b { color: var(--green); }
.today-receivable header small { color: #087648; background: #dcf7e9; }
.today-due-list { max-height: 190px; overflow-y: auto; }
.today-due-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 11px 16px; border-bottom: 1px solid #edf0f4; }
.today-due-row > span { display: grid; min-width: 0; gap: 3px; }
.today-due-row b { overflow: hidden; color: #304257; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.today-due-row small { overflow: hidden; color: #778598; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.today-due-row strong { flex: 0 0 auto; color: #263b51; font-size: 12px; }
.today-empty { padding: 18px 16px; color: var(--muted); font-size: 11px; text-align: center; }
.today-due-card > a { display: block; padding: 9px 16px; color: var(--blue); background: #fafbfd; font-size: 11px; font-weight: 800; text-align: right; text-decoration: none; }
.today-due-card > a:hover { text-decoration: underline; }

/* Saúde financeira */
.financial-health { min-height: 320px; margin-top: 18px; padding: 26px; background: linear-gradient(135deg,#fff 0%,#fffaf0 100%); }
.financial-health-head,.health-label,.health-legend { display: flex; align-items: center; }
.financial-health-head { justify-content: space-between; gap: 20px; }
.financial-health-head h2 { margin: 0; font-size: 20px; }
.financial-health-head p { margin: 6px 0 0; color: var(--muted); font-size: 13px; }
.health-badge,.tag { display: inline-flex; align-items: center; width: max-content; border-radius: 999px; font-weight: 800; white-space: nowrap; }
.health-badge { padding: 8px 13px; font-size: 11px; }
.health-badge.positive,.status-success { color: #087648; background: #dcf7e9; }
.health-badge.warning,.status-warning { color: #98600b; background: #fff1cf; }
.health-badge.negative,.status-danger { color: #b62f3c; background: #ffe2e6; }
.status-info { color: #835800; background: #fff1b8; }
.health-content { display: grid; grid-template-columns: minmax(0,1fr) 300px; align-items: stretch; gap: 34px; margin-top: 25px; }
.health-chart { display: grid; align-content: center; gap: 23px; min-height: 190px; padding: 8px 0; }
.health-series { display: grid; gap: 8px; }
.health-series > small { color: #7b899b; font-size: 11px; }
.health-label { justify-content: space-between; gap: 18px; color: #35445a; font-size: 14px; }
.health-label span { display: flex; align-items: center; gap: 9px; font-weight: 750; }
.health-label b { color: #172b45; font-size: 18px; }
.health-label i { flex: 0 0 auto; width: 11px; height: 11px; border-radius: 50%; }
.health-track { height: 27px; overflow: hidden; border: 1px solid #dde5ef; border-radius: 8px; background: #edf2f7; box-shadow: inset 0 1px 2px rgba(20,43,72,.07); }
.health-bar { display: block; min-width: 4px; height: 100%; border-radius: 7px; box-shadow: inset 0 -3px 0 rgba(0,0,0,.07); }
.health-bar.income { background: linear-gradient(90deg,#118f59,#42c388); }
.health-bar.expense { background: linear-gradient(90deg,#d93848,#f06b77); }
.health-scale { display: flex; justify-content: space-between; margin-top: -12px; color: #8996a6; font-size: 10px; }
.health-summary { position: relative; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 9px; min-width: 0; padding: 24px; overflow: hidden; border: 1px solid #dfe7f1; border-radius: 13px; background: #fff; box-shadow: 0 9px 24px rgba(31,55,84,.07); text-align: center; }
.health-summary::before { content: ""; position: absolute; inset: 0 0 auto; height: 5px; background: linear-gradient(90deg,#118f59,#e9b63d,#d93848); }
.health-summary span,.health-summary small { color: var(--muted); }
.health-summary span { font-size: 12px; font-weight: 800; letter-spacing: .45px; text-transform: uppercase; }
.health-summary strong { font-size: 30px; line-height: 1.1; }
.health-summary small { font-size: 12px; }
.health-summary small b { color: #435168; }
.health-summary p { max-width: 225px; margin: 2px 0 0; color: #69788c; font-size: 11px; line-height: 1.45; }
.positive-text { color: var(--green); }
.negative-text { color: var(--red); }
.health-legend { gap: 22px; margin-top: 18px; color: var(--muted); font-size: 12px; }
.health-legend span { display: flex; align-items: center; gap: 6px; }
.health-legend i { width: 9px; height: 9px; border-radius: 50%; }
.income-dot { background: var(--green); }
.expense-dot { background: var(--red); }

/* Filtros */
.filters { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; padding: 13px; border: 1px solid var(--line); border-radius: 12px; background: #fff; box-shadow: var(--shadow); }
.filters input { flex: 1; }
.filters select { max-width: 265px; }
.month-filter,.month-picker-form { display: flex; align-items: center; gap: 8px; }
.month-picker { display: flex; align-items: center; min-width: 305px; height: 42px; overflow: hidden; border: 1px solid #ccd6e3; border-radius: 10px; background: #fff; box-shadow: 0 4px 12px rgba(25,45,75,.04); }
.month-picker > strong { flex: 1; padding: 0 12px; text-align: center; white-space: nowrap; }
.calendar-button { position: relative; display: grid; place-items: center; width: 112px; height: 100%; border-left: 1px solid #d8e0ea; color: var(--blue); background: #f7f9fc; cursor: pointer; }
.calendar-button span { font-size: 11px; font-weight: 800; }
.calendar-button input { position: absolute; inset: 0; height: 100%; opacity: 0; cursor: pointer; }
.month-arrow { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid #ccd6e3; border-radius: 10px; color: #435168; background: #fff; font-size: 24px; line-height: 1; text-decoration: none; transition: .16s ease; }
.month-arrow:hover { color: var(--accent); border-color: #f4a16b; transform: translateY(-1px); }
.month-arrow.disabled { pointer-events: none; opacity: .35; }
.apply-month { min-height: 42px; }

/* Tabelas e ações */
.table-wrap { overflow: auto; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); }
.table-wrap.borderless { border: 0; border-radius: 10px; box-shadow: none; }
table { width: 100%; min-width: 760px; border-collapse: separate; border-spacing: 0; }
th,td { padding: 14px 15px; border-bottom: 1px solid #e8edf3; text-align: left; vertical-align: middle; }
th { position: sticky; top: 0; z-index: 2; color: #718096; background: #f7f9fc; font-size: 10px; font-weight: 850; letter-spacing: .7px; text-transform: uppercase; white-space: nowrap; }
td { color: #3d4a5f; font-size: 13px; }
tbody tr { transition: background .14s ease; }
tbody tr:hover { background: #fbfcfe; }
tbody tr:last-child td { border-bottom: 0; }
.tag { padding: 6px 9px; color: #58677d; background: #edf1f6; font-size: 10px; }
.record-actions,.actions,.inline { display: flex; align-items: center; gap: 9px; }
.record-actions { min-width: max-content; }
.record-actions form { margin: 0; }
.record-actions a,.actions a,.edit-link,.link-btn { color: var(--blue); background: none; box-shadow: none; font-size: 12px; font-weight: 800; text-decoration: none; }
.link-btn { min-height: auto; padding: 3px 0; border-radius: 0; }
.link-btn:hover { transform: none; box-shadow: none; text-decoration: underline; }
.danger-link { color: var(--red)!important; }
.inline input { width: 108px; min-height: 36px; padding: 7px 9px; }
.inline input[type="date"] { width: 136px; }
.inline button { min-height: 36px; padding: 7px 11px; border-radius: 8px; font-size: 11px; }
.split { display: grid; grid-template-columns: 350px minmax(0,1fr); gap: 18px; align-items: start; }
.text-center { text-align: center; }

/* Avisos */
.alert { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 16px; padding: 13px 15px; border: 1px solid transparent; border-radius: 11px; box-shadow: 0 5px 14px rgba(20,35,60,.05); font-size: 13px; font-weight: 650; }
.alert button { min-height: auto; padding: 0; color: currentColor; background: transparent; box-shadow: none; font-size: 20px; }
.alert button:hover { transform: none; box-shadow: none; }
.alert.success { color: #0b6e45; border-color: #bae8d0; background: #e8f8f0; }
.alert.danger { color: #a92d39; border-color: #f3c2c8; background: #ffebee; }
.alert.warning { color: #8d5a0c; border-color: #f0d9a0; background: #fff6dc; }

/* Parcelamentos e recorrências */
.recurrence-box { display: grid; grid-template-columns: minmax(220px,1fr) 190px 140px; align-items: end; gap: 16px; padding: 17px 18px; border: 1px solid #dce6f2; border-radius: 12px; background: linear-gradient(135deg,#f7faff,#fff); }
.recurrence-box > div { align-self: center; display: grid; gap: 4px; }
.recurrence-box strong { color: #24334a; font-size: 14px; }
.recurrence-box small { color: var(--muted); line-height: 1.4; }

/* Fluxo de caixa */
.horizon-tabs { display: inline-flex; gap: 4px; padding: 4px; border: 1px solid var(--line); border-radius: 11px; background: #fff; box-shadow: var(--shadow); }
.horizon-tabs a { padding: 8px 13px; border-radius: 8px; color: var(--muted); text-decoration: none; font-size: 12px; font-weight: 800; }
.horizon-tabs a.active { color: #fff; background: var(--nav-soft); }
.balance-panel { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 17px; padding: 20px 22px; border: 1px solid #dce5ef; border-radius: var(--radius); background: linear-gradient(120deg,#fff,#f7faff); box-shadow: var(--shadow); }
.balance-panel > div:first-child { display: grid; gap: 4px; }
.balance-panel span,.balance-panel small { color: var(--muted); }
.balance-panel strong { font-size: 25px; }
.balance-input { display: flex; align-items: center; gap: 9px; width: min(430px,100%); }
.balance-input input { min-width: 0; }
.cash-cards { margin-bottom: 18px; }
.forecast-panel { margin-bottom: 18px; }
.section-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 16px; }
.section-head h2 { margin: 0 0 4px; font-size: 17px; }
.section-head p { margin: 0; color: var(--muted); font-size: 13px; }
.forecast-row { display: grid; grid-template-columns: 65px minmax(0,1fr) 170px; align-items: center; gap: 20px; padding: 17px 0; border-top: 1px solid #e8edf3; }
.forecast-days { display: grid; justify-items: center; padding: 9px; border-radius: 10px; color: #fff; background: var(--nav-soft); }
.forecast-days strong { font-size: 21px; line-height: 1; }
.forecast-days span { margin-top: 2px; font-size: 10px; }
.forecast-bars { display: grid; gap: 11px; }
.forecast-bars > div { display: grid; grid-template-columns: 60px minmax(100px,1fr) 120px; align-items: center; gap: 11px; }
.forecast-bars span { color: var(--muted); font-size: 11px; font-weight: 750; }
.forecast-bars b { font-size: 12px; text-align: right; }
.forecast-bars .health-track { height: 9px; }
.forecast-balance { display: grid; gap: 4px; justify-items: end; }
.forecast-balance span { color: var(--muted); font-size: 11px; }
.forecast-balance strong { font-size: 17px; }
.flow-events { margin-top: 18px; }
.flow-type { display: inline-flex; padding: 5px 8px; border-radius: 999px; font-size: 10px; font-weight: 850; }
.flow-in { color: #087648; background: #dcf7e9; }
.flow-out { color: #ad2e3b; background: #ffe3e7; }

/* Ordens de serviço */
.table-note { display: block; margin-top: 4px; color: var(--muted); font-size: 10px; font-weight: 600; }
.linked-label { padding: 4px 7px; border-radius: 7px; color: #087648; background: #dcf7e9; font-size: 10px; font-weight: 850; }

/* Resumo de reembolsos em aberto */
.reimbursement-overview { margin-bottom: 18px; overflow: hidden; border: 1px solid #d9e2ee; border-radius: var(--radius); background: #fff; box-shadow: var(--shadow); }
.reimbursement-overview-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 19px 22px; color: #fff; background: linear-gradient(120deg,#765000,#a87400); }
.reimbursement-overview-head > div { display: grid; gap: 4px; }
.reimbursement-overview-head span { color: #9fb0c7; font-size: 10px; font-weight: 900; letter-spacing: 1.15px; }
.reimbursement-overview-head strong { font-size: 27px; line-height: 1.05; }
.reimbursement-overview-head small { color: #aebcd0; text-align: right; }
.collaborator-totals { display: grid; grid-template-columns: repeat(auto-fit,minmax(330px,1fr)); gap: 1px; background: var(--line); }
.collaborator-total { display: grid; grid-template-columns: minmax(0,1fr) minmax(180px,auto); align-items: center; gap: 18px; min-height: 112px; padding: 17px 19px; background: #fff; }
.collaborator-person { display: flex; align-items: center; gap: 11px; min-width: 0; }
.collaborator-avatar { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 11px; color: #b64d0b; background: #fff0e5; font-size: 14px; font-weight: 900; }
.collaborator-person > div { display: grid; gap: 3px; min-width: 0; }
.collaborator-person > div strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.collaborator-total small { color: var(--muted); font-size: 10px; }
.collaborator-values { display: grid; gap: 5px; min-width: 180px; }
.collaborator-values > span { display: flex; justify-content: space-between; gap: 15px; color: var(--muted); font-size: 10px; }
.collaborator-values > span b { color: #4d5b70; font-size: 11px; }
.collaborator-values .advance-text { color: var(--blue); }
.payable-total,.credit-total { margin-top: 3px; padding-top: 7px; border-top: 1px solid var(--line); font-size: 13px; text-align: right; white-space: nowrap; }
.payable-total { color: var(--red); }
.credit-total { color: var(--green); }
.empty-open-total { padding: 20px; color: var(--muted); background: #fff; text-align: center; }
.advance-help { display: block; color: var(--muted); font-size: 11px; line-height: 1.5; }
.advance-list-panel { margin-bottom: 17px; }

/* Contratos e origem das receitas */
.contract-overview { margin-bottom: 10px; overflow: hidden; border: 1px solid #cfdce7; border-radius: 5px; background: #fff; }
.contract-overview-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 12px 14px; color: #30240a; background: linear-gradient(120deg,#0ea5e9,#ffd65a); }
.contract-overview-head > div { display: grid; gap: 3px; }
.contract-overview-head span { color: #704d00; font-size: 9px; font-weight: 900; letter-spacing: 1px; }
.contract-overview-head strong { font-size: 22px; line-height: 1.05; }
.contract-overview-head small { color: #644600; font-size: 10px; text-align: right; }
.contract-totals { display: grid; grid-template-columns: repeat(auto-fit,minmax(340px,1fr)); gap: 1px; background: #d7e0e8; }
.contract-total { display: grid; grid-template-columns: minmax(0,1fr) minmax(165px,auto); gap: 10px 16px; padding: 11px 12px 9px; background: #fff; }
.contract-main { display: flex; align-items: flex-start; gap: 9px; min-width: 0; }
.contract-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 34px; height: 34px; border-radius: 4px; color: #835800; background: #fff1b8; font-size: 13px; font-weight: 900; }
.contract-main > div { display: grid; gap: 3px; min-width: 0; }
.contract-name-line { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; }
.contract-name-line strong { color: #143a52; font-size: 13px; }
.contract-main small { overflow: hidden; color: #657887; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.contract-validity { color: #697c8b; font-size: 9px; }
.contract-values { display: grid; align-content: start; gap: 4px; min-width: 165px; }
.contract-values > span { display: flex; justify-content: space-between; gap: 12px; color: #6b7b88; font-size: 9px; }
.contract-values > span b { color: #314e61; font-size: 10px; }
.contract-values .received-text { color: #087648; }
.contract-values > strong { margin-top: 2px; padding-top: 5px; border-top: 1px solid #dfe6eb; color: #a96700; font-size: 12px; text-align: right; }
.contract-card-footer { grid-column: 1/-1; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-top: 7px; border-top: 1px solid #e1e7ec; }
.contract-card-footer > small { color: #778792; font-size: 9px; }
.income-source-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-bottom: 8px; }
.income-source { position: relative; min-height: 68px; overflow: hidden; padding: 9px 12px 8px 15px; border: 1px solid #d6dfe6; border-radius: 4px; background: #fff; }
.income-source::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; }
.income-source.fixed-income::before { background: #159a62; }
.income-source.sporadic-income::before { background: #7a55c5; }
.income-source span { color: #61717e; font-size: 9px; font-weight: 800; letter-spacing: .35px; }
.income-source strong { display: block; margin-top: 3px; color: #17384e; font-size: 18px; }
.income-source small { display: block; margin-top: 3px; color: #7a8792; font-size: 9px; }
.income-origin-tag { display: inline-flex; padding: 3px 6px; border-radius: 2px; font-size: 8px; font-weight: 850; }
.income-origin-tag.fixed { color: #087648; background: #dcf7e9; }
.income-origin-tag.sporadic { color: #65419f; background: #eee7fb; }
.income-origin-name { display: block; max-width: 145px; margin-top: 3px; overflow: hidden; color: #71818d; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }

/* Assistente inteligente */
.assistant-page-head { align-items: center; }
.assistant-head-status { display: flex; align-items: center; gap: 10px; }
.assistant-connection { display: inline-flex; align-items: center; gap: 8px; padding: 9px 13px; border: 1px solid; border-radius: 999px; font-size: 11px; font-weight: 850; white-space: nowrap; }
.assistant-connection i { width: 8px; height: 8px; border-radius: 50%; }
.assistant-connection.online { color: #087648; border-color: #bee8d3; background: #edfbf4; }
.assistant-connection.online i { background: #24ae74; box-shadow: 0 0 0 4px rgba(36,174,116,.13); }
.assistant-connection.offline { color: #9a6109; border-color: #eed7a0; background: #fff7df; }
.assistant-connection.offline i { background: #e2a332; box-shadow: 0 0 0 4px rgba(226,163,50,.13); }
.assistant-limit-notice { margin: 12px; padding: 14px 16px; border: 1px solid #eed7a0; border-radius: 10px; color: #8a5400; background: #fff7df; font-size: 11px; font-weight: 750; text-align: center; }
.assistant-layout { display: grid; grid-template-columns: 250px minmax(0,1fr); align-items: stretch; gap: 17px; }
.assistant-sidebar { display: flex; flex-direction: column; min-height: 670px; padding: 14px; }
.new-chat-button { width: 100%; justify-content: flex-start; box-shadow: none; }
.new-chat-button span { font-size: 20px; font-weight: 400; line-height: 1; }
.assistant-history-title { margin: 22px 8px 8px; color: #8a96a7; font-size: 9px; font-weight: 900; letter-spacing: 1.1px; }
.assistant-thread-list { display: grid; gap: 5px; max-height: 270px; overflow-y: auto; padding-right: 2px; }
.assistant-thread-list form { margin: 0; }
.assistant-thread { display: grid; justify-content: stretch; width: 100%; min-height: 0; padding: 10px 11px; border-radius: 9px; color: #58677d; background: transparent; box-shadow: none; text-align: left; }
.assistant-thread:hover { color: #25354c; background: #f3f6fa; box-shadow: none; transform: none; }
.assistant-thread.active { color: #33280e; background: #fff4cc; box-shadow: inset 3px 0 #0ea5e9; }
.assistant-thread span { overflow: hidden; font-size: 12px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.assistant-thread small { margin-top: 3px; color: #95a0af; font-size: 9px; }
.assistant-capabilities { display: grid; gap: 9px; margin-top: auto; padding: 16px 10px; border-top: 1px solid var(--line); color: #69778b; font-size: 11px; }
.assistant-capabilities strong { margin-bottom: 2px; color: #344156; font-size: 12px; }
.assistant-capabilities span { display: flex; align-items: center; gap: 7px; }
.assistant-capabilities i { display: grid; place-items: center; width: 16px; height: 16px; border-radius: 50%; color: #087648; background: #dcf7e9; font-size: 9px; font-style: normal; font-weight: 900; }
.assistant-settings { margin: 3px 0 0; border-top: 1px solid var(--line); }
.assistant-settings summary { padding: 13px 9px 6px; color: #7b8798; font-size: 10px; font-weight: 800; cursor: pointer; }
.assistant-settings-form { display: grid; gap: 9px; padding: 8px; }
.assistant-settings-form label { display: grid; gap: 5px; color: #657286; font-size: 10px; font-weight: 750; }
.assistant-settings-form input { min-height: 36px; padding: 7px 9px; font-size: 11px; }
.assistant-settings-form button { min-height: 35px; padding: 7px 9px; font-size: 10px; }
.assistant-chat { display: flex; flex-direction: column; min-width: 0; height: calc(100vh - 175px); min-height: 670px; padding: 0; overflow: hidden; }
.assistant-chat-header { display: flex; align-items: center; gap: 11px; min-height: 67px; padding: 12px 18px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.96); }
.assistant-avatar { display: grid; place-items: center; width: 39px; height: 39px; border-radius: 12px; color: #fff; background: linear-gradient(145deg,#ff8b37,#e35d0c); box-shadow: 0 7px 16px rgba(244,118,33,.22); font-size: 12px; font-weight: 900; }
.assistant-chat-header > div:nth-child(2) { display: grid; gap: 2px; }
.assistant-chat-header strong { font-size: 13px; }
.assistant-chat-header small { color: var(--muted); font-size: 10px; }
.assistant-safe-badge { margin-left: auto; padding: 6px 9px; border-radius: 999px; color: #835800; background: #fff4cc; font-size: 9px; font-weight: 850; }
.assistant-messages { flex: 1; min-height: 0; overflow-y: auto; padding: 26px clamp(18px,3vw,45px); background: radial-gradient(circle at 80% 0%,rgba(14,165,233,.07),transparent 30%),#fffdf8; scroll-behavior: smooth; }
.assistant-welcome { display: grid; place-items: center; max-width: 690px; margin: 8vh auto 0; text-align: center; }
.assistant-welcome-mark { display: grid; place-items: center; width: 55px; height: 55px; border-radius: 17px; color: #2d240e; background: linear-gradient(145deg,#ffd24a,#0ea5e9); box-shadow: 0 14px 30px rgba(131,88,0,.2); font-size: 15px; font-weight: 900; }
.assistant-welcome h2 { margin: 19px 0 7px; font-size: 24px; letter-spacing: -.4px; }
.assistant-welcome > p { max-width: 580px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.6; }
.assistant-suggestions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; width: 100%; margin-top: 24px; }
.assistant-suggestions button { justify-content: flex-start; min-height: 48px; padding: 11px 14px; border: 1px solid #e0e7ef; color: #415169; background: #fff; box-shadow: 0 5px 15px rgba(20,35,60,.04); font-size: 11px; text-align: left; }
.assistant-suggestions button:hover { color: #18283f; border-color: #c9d7e8; box-shadow: 0 8px 20px rgba(20,35,60,.07); }
.assistant-suggestions .budget-suggestion { grid-column: 1/-1; color: #a44b13; border-color: #f2d4bf; background: linear-gradient(120deg,#fff7f1,#fff); }
.assistant-suggestions .budget-suggestion::before { content: "O"; display: grid; place-items: center; flex: 0 0 auto; width: 27px; height: 27px; margin-right: 2px; border-radius: 8px; color: #fff; background: var(--accent); font-size: 10px; font-weight: 900; }
.assistant-suggestions .finance-suggestion { grid-column: 1/-1; color: #087648; border-color: #bee9d4; background: linear-gradient(120deg,#effcf6,#fff); }
.assistant-suggestions .finance-suggestion::before { content: "R$"; display: grid; place-items: center; flex: 0 0 auto; width: 29px; height: 27px; margin-right: 2px; border-radius: 8px; color: #fff; background: #169b68; font-size: 9px; font-weight: 900; }
.assistant-suggestions .inventory-suggestion { grid-column: 1/-1; color: #89520b; border-color: #f0d29a; background: linear-gradient(120deg,#fff8e8,#fff); }
.assistant-suggestions .inventory-suggestion::before { content: "A"; display: grid; place-items: center; flex: 0 0 auto; width: 29px; height: 27px; margin-right: 2px; border-radius: 8px; color: #fff; background: #d58615; font-size: 10px; font-weight: 900; }
.assistant-suggestions .production-suggestion { grid-column: 1/-1; color: #6f4200; border-color: #e9bd52; background: linear-gradient(120deg,#fff4cf,#fff); }
.assistant-suggestions .production-suggestion::before { content: "OP"; display: grid; place-items: center; flex: 0 0 auto; width: 29px; height: 27px; margin-right: 2px; border-radius: 8px; color: #4f3300; background: #ffc107; font-size: 9px; font-weight: 900; }
.assistant-setup-card { max-width: 630px; margin: 4vh auto 0; padding: 29px; border: 1px solid #dce4ef; border-radius: 18px; background: #fff; box-shadow: 0 15px 38px rgba(20,35,60,.08); text-align: center; }
.setup-icon { display: grid; place-items: center; width: 48px; height: 48px; margin: 0 auto; border-radius: 14px; color: #fff; background: linear-gradient(145deg,#ff8b37,#e35d0c); font-size: 22px; }
.assistant-setup-card h2 { margin: 16px 0 7px; }
.assistant-setup-card > p { margin: 0 auto; color: var(--muted); font-size: 12px; line-height: 1.6; }
.assistant-setup-form { display: grid; grid-template-columns: minmax(0,1fr) 150px; gap: 11px; margin-top: 21px; text-align: left; }
.assistant-setup-form label { display: grid; gap: 6px; color: #45536a; font-size: 11px; font-weight: 800; }
.assistant-setup-form button { grid-column: 1/-1; }
.assistant-setup-card > small { display: block; margin-top: 14px; color: #8995a5; line-height: 1.5; }
.assistant-setup-card a { color: var(--blue); font-weight: 750; }
.assistant-message { display: flex; align-items: flex-start; gap: 10px; max-width: 880px; margin: 0 auto 25px; }
.assistant-message.user { flex-direction: row-reverse; }
.message-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 31px; height: 31px; border-radius: 9px; color: #2d240e; background: #0ea5e9; font-size: 9px; font-weight: 900; }
.assistant-message.user .message-avatar { color: #935014; background: #ffeadb; }
.message-body { min-width: 0; max-width: min(760px,87%); }
.assistant-message.user .message-body { display: grid; justify-items: end; }
.message-meta { display: flex; align-items: center; gap: 8px; margin: 0 3px 6px; color: #8490a1; font-size: 9px; }
.message-meta strong { color: #4d5b70; font-size: 10px; }
.assistant-message.user .message-meta { flex-direction: row-reverse; }
.message-copy { padding: 12px 14px; border: 1px solid #e0e7ef; border-radius: 4px 14px 14px 14px; color: #344156; background: #fff; box-shadow: 0 5px 15px rgba(20,35,60,.035); font-size: 13px; line-height: 1.62; white-space: pre-wrap; }
.assistant-message.user .message-copy { color: #2d240e; border-color: #dca700; border-radius: 14px 4px 14px 14px; background: #ffd24a; }
.message-attachments { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 7px; }
.message-attachments a { display: flex; align-items: center; gap: 7px; max-width: 310px; padding: 8px 10px; border: 1px solid #dce4ed; border-radius: 10px; color: #415169; background: #fff; text-decoration: none; }
.message-attachments a > span:first-child { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 7px; color: #835800; background: #fff1b8; font-size: 11px; }
.message-attachments a > span:last-child { display: grid; min-width: 0; overflow: hidden; font-size: 10px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.message-attachments small { color: #94a0b0; font-size: 8px; }
.assistant-action-card { width: min(700px,100%); margin-top: 11px; overflow: hidden; border: 1px solid #dce4ed; border-radius: 13px; background: #fff; box-shadow: 0 9px 24px rgba(20,35,60,.07); }
.assistant-action-card > header { display: flex; align-items: center; gap: 10px; padding: 13px 14px; border-bottom: 1px solid #e7ecf2; background: #f8fafe; }
.action-icon { display: grid; place-items: center; flex: 0 0 auto; width: 31px; height: 31px; border-radius: 9px; color: #2d240e; background: #0ea5e9; font-size: 19px; }
.assistant-action-card > header > div { display: grid; gap: 2px; min-width: 0; }
.assistant-action-card > header small { color: #7c899a; font-size: 8px; font-weight: 900; letter-spacing: .8px; }
.assistant-action-card > header strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.action-status { margin-left: auto; padding: 5px 8px; border-radius: 999px; color: #97610b; background: #fff0ca; font-size: 8px; font-weight: 850; }
.assistant-action-card.confirmed .action-status { color: #087648; background: #dcf7e9; }
.assistant-action-card.cancelled .action-status { color: #6c7787; background: #e9edf2; }
.action-content { display: grid; gap: 10px; max-height: 320px; overflow-y: auto; padding: 13px 14px; }
.action-entity { display: flex; justify-content: space-between; padding: 9px 10px; border-radius: 9px; color: #617086; background: #f5f7fa; font-size: 10px; }
.action-entity strong { color: #26364d; }
.action-record { padding: 10px; border: 1px solid #e7ecf2; border-radius: 9px; }
.action-record > b { display: block; margin-bottom: 7px; color: #344156; font-size: 10px; }
.action-record > p { margin: 0; color: #58677d; font-size: 11px; }
.action-record dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px 13px; margin: 0; }
.action-record dl div { display: grid; gap: 2px; min-width: 0; }
.action-record dt { color: #909bad; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.action-record dd { overflow-wrap: anywhere; margin: 0; color: #3f4e63; font-size: 10px; }
.assistant-action-card > footer { display: flex; justify-content: flex-end; gap: 8px; padding: 11px 14px; border-top: 1px solid #e7ecf2; background: #fbfcfe; }
.assistant-action-card > footer form { margin: 0; }
.assistant-action-card > footer button { min-height: 35px; padding: 7px 11px; font-size: 10px; }
.assistant-composer { flex: 0 0 auto; padding: 12px 16px 10px; border-top: 1px solid var(--line); background: #fff; }
.composer-row { display: flex; align-items: flex-end; gap: 9px; padding: 7px; border: 1px solid #cfd9e5; border-radius: 14px; background: #fff; box-shadow: 0 5px 16px rgba(20,35,60,.045); transition: .16s ease; }
.composer-row:focus-within { border-color: #f28a48; box-shadow: 0 0 0 4px rgba(244,118,33,.1); }
.attach-button { position: relative; display: grid; place-items: center; flex: 0 0 auto; width: 38px; height: 38px; border-radius: 10px; color: #617086; background: #edf1f6; cursor: pointer; }
.attach-button input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.attach-button span { font-size: 21px; line-height: 1; }
.assistant-composer textarea { flex: 1; min-height: 38px; max-height: 150px; padding: 9px 4px 7px; border: 0; border-radius: 0; box-shadow: none; font-size: 13px; resize: none; }
.assistant-composer textarea:focus { box-shadow: none; }
.send-button { flex: 0 0 auto; min-height: 38px; padding: 8px 9px 8px 13px; box-shadow: none; }
.send-button b { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 7px; color: #d55b0d; background: #fff; font-size: 13px; }
.send-button.loading span { font-size: 0; }
.send-button.loading span::after { content: "Processando"; font-size: 11px; }
.send-button:disabled,.attach-button:has(input:disabled) { opacity: .45; cursor: not-allowed; }
.composer-files { display: flex; flex-wrap: wrap; gap: 6px; }
.composer-files:not(:empty) { padding: 0 2px 9px; }
.composer-files > span { max-width: 240px; overflow: hidden; padding: 6px 8px; border-radius: 8px; color: #835800; background: #fff4cc; font-size: 9px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.composer-footer { display: flex; justify-content: space-between; gap: 20px; padding: 7px 4px 0; color: #929dae; font-size: 8px; }
.composer-error { color: var(--red); font-weight: 750; }

/* Login */
.auth-body { background: #0d1829; }
.login-main { display: grid; min-height: 100vh; margin: 0; place-items: center; background: radial-gradient(circle at 18% 18%, rgba(244,118,33,.19), transparent 28%), radial-gradient(circle at 85% 85%, rgba(14,165,233,.2), transparent 32%), linear-gradient(145deg,#2f2a1b,#15130e); }
.login-main .content { display: grid; place-items: center; padding: 25px; }
.login-card { width: min(450px,94vw); padding: 32px; border: 1px solid rgba(255,255,255,.75); border-radius: 20px; background: rgba(255,255,255,.98); box-shadow: var(--shadow-lg); }
.login-brand { display: flex; align-items: center; justify-content: center; margin-bottom: 25px; }
.login-brand-logo { width: min(340px,100%); border: 0; border-radius: 0; box-shadow: none; }
.login-brand > div { display: grid; gap: 2px; }
.login-brand strong { font-size: 20px; letter-spacing: 1.5px; }
.login-brand small { color: var(--muted); font-size: 11px; }
.login-heading h1 { margin: 6px 0 7px; font-size: 27px; letter-spacing: -.5px; }
.login-heading p { margin: 0 0 23px; color: var(--muted); line-height: 1.5; }
.login-card form { display: grid; gap: 16px; }
.login-card label { display: grid; gap: 7px; font-size: 13px; font-weight: 750; }
.login-card form button { justify-content: space-between; width: 100%; margin-top: 4px; padding-inline: 18px; }
.login-help { display: block; margin-top: 20px; color: #8491a3; text-align: center; font-size: 11px; }
.auth-form-tools { display: flex; justify-content: flex-end; margin-top: -8px; }
.auth-form-tools a { color: #8a5a00; font-size: 11px; font-weight: 800; text-decoration: none; }
.auth-form-tools a:hover { text-decoration: underline; }
.recovery-card { position: relative; }
.recovery-result-icon { display: grid; place-items: center; width: 52px; height: 52px; margin: 0 auto 16px; border-radius: 50%; color: #fff; background: #16945e; font-size: 25px; font-weight: 900; }
.recovery-result-icon.is-invalid { background: #d64550; }
.recovery-heading { text-align: center; }
.recovery-primary-link { display: flex; justify-content: center; width: 100%; text-decoration: none; }
.recovery-support,.recovery-privacy { margin: 17px 0 0; color: #6f7c8e; font-size: 10px; line-height: 1.55; text-align: center; }
.recovery-support a { color: #815a00; font-weight: 800; }

@media (max-width: 1120px) {
  .sidebar { transform: translateX(-102%); transition: transform .22s ease; }
  body.menu-open .sidebar { transform: translateX(0); }
  .sidebar-backdrop { position: fixed; inset: 0; z-index: 45; background: rgba(5,14,28,.48); backdrop-filter: none; -webkit-backdrop-filter: none; }
  body.menu-open .sidebar-backdrop { display: block; }
  main { margin-left: 0; }
  .menu-toggle { display: inline-grid; place-items: center; }
  .cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .page-head { align-items: flex-start; flex-direction: column; }
  .assistant-chat { height: calc(100vh - 205px); }
}

@media (max-width: 760px) {
  .topbar { height: 64px; padding: 0 16px; }
  .system-status,.topbar-user { display: none; }
  .content { padding: 22px 15px 38px; }
  .page-head { gap: 15px; }
  .page-head h1 { font-size: 25px; }
  .assistant-head-status { align-items: stretch; flex-direction: column; width: 100%; }
  .assistant-connection { justify-content: center; }
  .cards,.grid-3,.split,.form-grid { grid-template-columns: 1fr; }
  .recovery-email-form { grid-template-columns: 1fr; }
  .wide { grid-column: auto; }
  .card { min-height: 106px; }
  .month-filter,.month-picker-form { width: 100%; flex-wrap: wrap; }
  .month-picker-form { flex: 1; }
  .month-picker { min-width: 235px; flex: 1; }
  .month-filter > .secondary { flex: 1; }
  .filters { align-items: stretch; flex-direction: column; }
  .filters select { max-width: none; }
  .health-content { grid-template-columns: 1fr; align-items: stretch; gap: 18px; }
  .health-summary { min-width: 0; padding: 18px 0 0; border-top: 1px solid var(--line); border-left: 0; }
  .health-legend { align-items: flex-start; flex-direction: column; gap: 8px; }
  .record-actions { align-items: flex-start; flex-direction: column; }
  .reimbursement-overview-head { align-items: flex-start; flex-direction: column; }
  .reimbursement-overview-head small { text-align: left; }
  .collaborator-totals { grid-template-columns: 1fr; }
  .collaborator-total { grid-template-columns: 1fr; }
  .collaborator-values { min-width: 0; padding-top: 12px; border-top: 1px solid var(--line); }
  .recurrence-box { grid-template-columns: 1fr; align-items: stretch; }
  .balance-panel,.balance-input { align-items: stretch; flex-direction: column; }
  .forecast-row { grid-template-columns: 52px minmax(0,1fr); gap: 13px; }
  .forecast-bars > div { grid-template-columns: 1fr; gap: 5px; }
  .forecast-bars b { text-align: left; }
  .forecast-balance { grid-column: 1/-1; grid-template-columns: 1fr auto; justify-items: stretch; padding-top: 10px; border-top: 1px dashed var(--line); }
  .inline { align-items: stretch; flex-direction: column; }
  .inline input,.inline input[type="date"] { width: 100%; }
  .form-actions { align-items: stretch; flex-direction: column; }
  .form-actions .button,.form-actions button { width: 100%; }
  .assistant-layout { grid-template-columns: 1fr; }
  .assistant-sidebar { min-height: 0; }
  .assistant-history-title,.assistant-thread-list,.assistant-capabilities { display: none; }
  .assistant-settings { margin-top: 9px; }
  .assistant-chat { height: calc(100vh - 270px); min-height: 620px; }
  .assistant-messages { padding: 20px 12px; }
  .assistant-safe-badge { display: none; }
  .assistant-suggestions { grid-template-columns: 1fr; }
  .assistant-welcome { margin-top: 3vh; }
  .assistant-setup-card { margin-top: 0; padding: 22px 17px; }
  .assistant-setup-form { grid-template-columns: 1fr; }
  .assistant-setup-form button { grid-column: auto; }
  .message-body { max-width: 90%; }
  .action-record dl { grid-template-columns: 1fr; }
  .assistant-action-card > footer { align-items: stretch; flex-direction: column-reverse; }
  .assistant-action-card > footer form,.assistant-action-card > footer button { width: 100%; }
  .send-button span { display: none; }
  .composer-footer span:last-child { display: none; }
}

/* Layout compacto tipo ERP/planilha */
:root {
  --nav: #9a6800;
  --nav-soft: #9a6800;
  --menu: #0ea5e9;
  --menu-dark: #dea600;
  --menu-ink: #272114;
  --accent: #d62831;
  --accent-dark: #b81f27;
  --blue: #9a6800;
  --bg: #edf0f3;
  --line: #cfd5dc;
  --shadow: none;
  --radius: 5px;
}

.app-body { color: #172b3f; background: var(--bg); font-size: 13px; }
.app-body .sidebar {
  position: sticky;
  inset: auto;
  top: 0;
  z-index: 60;
  width: 100%;
  height: 64px;
  min-height: 64px;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  padding: 0;
  overflow: hidden;
  color: var(--menu-ink);
  background: linear-gradient(90deg,#0ea5e9,#ffc928);
  box-shadow: 0 2px 7px rgba(125,91,0,.22);
  transform: none!important;
}
.app-body .brand {
  display: flex;
  align-items: center;
  flex: 0 0 170px;
  height: 64px;
  padding: 5px 13px;
  background: #fff;
  border-right: 1px solid rgba(0,0,0,.08);
}
.app-body .sidebar-brand-logo { width: 145px; border: 0; border-radius: 0; box-shadow: none; }
.app-body .main-nav {
  display: flex;
  flex: 1 1 auto;
  flex-direction: row;
  align-items: stretch;
  gap: 0;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0 5px;
  scrollbar-width: thin;
  scrollbar-color: #a97c00 #ffd347;
}
.app-body .nav-label { display: none; }
.app-body .nav-link {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  min-height: 64px;
  padding: 0 8px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  color: var(--menu-ink);
  background: transparent;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}
.app-body .nav-link:hover { color: #17130a; background: rgba(122,83,0,.12); transform: none; }
.app-body .nav-link.active { color: #8d1e25; border-bottom-color: #d62831; background: #fff; }
.app-body .nav-link.active::before { display: none; }
.app-body .nav-icon { display: none; }
.app-body .assistant-nav > small { display: none; }
.app-body .sidebar-footer {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  margin-left: auto;
  padding: 0 12px;
  border-top: 0;
  border-left: 1px solid rgba(92,63,0,.2);
}
.app-body .sidebar-user { display: none; }
.app-body .logout-link { min-width: max-content; padding: 8px; color: var(--menu-ink); font-size: 11px; }
.app-body .logout-link:hover { color: #8d1e25; background: rgba(122,83,0,.12); }
.app-body .sidebar-backdrop { display: none!important; }

.app-body main { min-height: calc(100vh - 64px); margin-left: 0; background: var(--bg); }
.app-body .topbar {
  position: sticky;
  top: 64px;
  z-index: 40;
  height: 42px;
  padding: 0 18px;
  border-bottom: 3px solid var(--menu);
  background: rgba(255,255,255,.97);
  backdrop-filter: none;
}
.app-body .topbar-title { display: flex; align-items: center; }
.app-body .topbar-title strong { color: #365064; font-size: 12px; font-weight: 650; }
.app-body .topbar-right { gap: 14px; font-size: 11px; }
.app-body .system-status { padding: 4px 8px; border-radius: 3px; font-size: 9px; }
.app-body .avatar.small { width: 24px; height: 24px; font-size: 9px; }
.app-body .menu-toggle { display: none!important; }
.app-body .content { width: 100%; max-width: none; padding: 12px 18px 34px; }

.app-body .page-head {
  align-items: center;
  gap: 14px;
  margin-bottom: 10px;
}
.app-body .page-head h1 { margin: 1px 0 0; font-size: 21px; line-height: 1.1; letter-spacing: -.25px; }
.app-body .page-head p { margin: 3px 0 0; font-size: 11px; line-height: 1.35; }
.app-body .eyebrow { font-size: 8px; letter-spacing: 1px; }

.app-body button,.app-body .button {
  min-height: 32px;
  padding: 6px 11px;
  border-radius: 3px;
  color: #272114;
  background: #0ea5e9;
  box-shadow: none;
  font-size: 11px;
  font-weight: 700;
}
.app-body button:hover,.app-body .button:hover { background: #dea600; box-shadow: none; transform: none; }
.app-body .secondary { color: #344a5e; background: #e2e6ea; }
.app-body .secondary:hover { background: #d5dae0; }
.app-body input,.app-body select,.app-body textarea {
  min-height: 32px;
  padding: 6px 8px;
  border-color: #bfc7cf;
  border-radius: 2px;
  font-size: 12px;
}
.app-body input:focus,.app-body select:focus,.app-body textarea:focus { border-color: #d69e00; box-shadow: 0 0 0 2px rgba(14,165,233,.18); }
.app-body textarea { min-height: 70px; }
.app-body label { font-size: 11px; }
.app-body .form-grid {
  grid-template-columns: repeat(4,minmax(150px,1fr));
  gap: 10px 12px;
  padding: 13px;
  border-radius: 4px;
  box-shadow: none;
}
.app-body .form-grid label,.app-body .form-stack label { gap: 4px; font-size: 11px; }
.app-body .form-grid label > small { color: #7a8792; font-size: 9px; font-weight: 500; }
.app-body .form-stack { gap: 9px; }
.app-body .form-actions { gap: 7px; padding-top: 0; }
.app-body .current-file { padding: 7px 0; font-size: 11px; }
.app-body .checkbox-field {
  display: flex!important;
  align-items: center;
  align-self: end;
  gap: 6px!important;
  min-height: 32px;
  padding: 5px 0;
  color: #9f2730;
}
.app-body .checkbox-field input[type="checkbox"] {
  flex: 0 0 auto;
  width: 15px;
  min-width: 15px;
  height: 15px;
  min-height: 15px;
  margin: 0;
  padding: 0;
}
.app-body .recurrence-box { grid-template-columns: minmax(220px,1fr) 170px 110px; gap: 10px; padding: 10px 12px; border-radius: 4px; }
.app-body .recurrence-box strong { font-size: 12px; }
.app-body .recurrence-box small { font-size: 10px; }

.app-body .cards { grid-template-columns: repeat(6,minmax(0,1fr)); gap: 8px; }
.app-body .card,.app-body .panel { border-radius: 4px; box-shadow: none; }
.app-body .card { min-height: 78px; padding: 11px 13px; }
.app-body .card::before { width: 3px; }
.app-body .card:hover { box-shadow: none; transform: none; }
.app-body .card span { font-size: 10px; }
.app-body .card b { margin-top: 7px; font-size: 20px; }
.app-body .panel { padding: 13px; }
.app-body .panel h2 { margin-bottom: 9px; font-size: 13px; }
.app-body .grid-3 { gap: 8px; margin-top: 9px; }
.app-body .line { gap: 8px; padding: 7px 0; font-size: 11px; }
.app-body .line b { font-size: 11px; }
.app-body .empty-state { padding: 15px; font-size: 11px; }
.app-body details.panel { margin-bottom: 8px; }
.app-body details.panel summary { padding: 11px 13px; font-size: 12px; }
.app-body details.panel summary::after { width: 20px; height: 20px; border-radius: 2px; }

.app-body .today-due-panel { margin-top: 8px; padding: 12px; }
.app-body .today-due-heading { margin-bottom: 8px; }
.app-body .today-due-heading h2 { margin-top: 1px; font-size: 14px; }
.app-body .today-date { padding: 4px 7px; border-radius: 3px; font-size: 9px; }
.app-body .today-due-grid { gap: 8px; }
.app-body .today-due-card { border-radius: 3px; }
.app-body .today-due-card header { padding: 8px 10px; }
.app-body .today-due-card header span { font-size: 10px; }
.app-body .today-due-card header b { font-size: 18px; }
.app-body .today-due-card header small { padding: 3px 6px; border-radius: 2px; font-size: 8px; }
.app-body .today-due-list { max-height: 126px; }
.app-body .today-due-row { padding: 6px 9px; }
.app-body .today-due-row b,.app-body .today-due-row strong { font-size: 10px; }
.app-body .today-due-row small { font-size: 9px; }
.app-body .today-empty { padding: 12px 9px; font-size: 9px; }
.app-body .today-due-card > a { padding: 6px 9px; font-size: 9px; }

.app-body .filters {
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 8px;
  padding: 8px;
  border-radius: 4px;
  box-shadow: none;
}
.app-body .filters input { min-width: 180px; }
.app-body .filters select { max-width: 220px; }
.app-body .budget-filters { align-items: end; }
.app-body .budget-filters .filter-field { display: grid; flex: 0 1 155px; gap: 3px; min-width: 145px; }
.app-body .budget-filters .filter-field > span { color: #566978; font-size: 9px; font-weight: 750; }
.app-body .budget-filters .filter-field input { width: 100%; min-width: 0; }
.app-body .budget-filters .filter-search { flex: 1 1 260px; }
.app-body .budget-filters .filter-status { flex-basis: 205px; }
.app-body .budget-filters .filter-status select { width: 100%; max-width: none; }
.app-body .month-filter,.app-body .month-picker-form { gap: 5px; }
.app-body .month-picker { min-width: 265px; height: 32px; border-radius: 3px; box-shadow: none; }
.app-body .month-arrow { width: 32px; height: 32px; border-radius: 3px; font-size: 19px; }
.app-body .calendar-button { width: 90px; }
.app-body .apply-month { min-height: 32px; }

.app-body .financial-health { min-height: 300px; margin-top: 11px; padding: 22px; }
.app-body .financial-health-head h2 { font-size: 19px; }
.app-body .financial-health-head p { margin-top: 4px; font-size: 12px; }
.app-body .health-badge { padding: 7px 11px; border-radius: 999px; font-size: 10px; }
.app-body .health-content { gap: 28px; margin-top: 22px; }
.app-body .health-chart { gap: 21px; min-height: 180px; }
.app-body .health-label { font-size: 13px; }
.app-body .health-label b { font-size: 17px; }
.app-body .health-track { height: 25px; }
.app-body .health-summary { min-width: 0; gap: 8px; padding: 22px; }
.app-body .health-summary strong { font-size: 28px; }
.app-body .health-legend { margin-top: 16px; }

.app-body .finance-summary-cards {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 8px;
  margin-bottom: 8px;
}
.app-body .employee-summary-cards { grid-template-columns: repeat(5,minmax(0,1fr)); }
.app-body .inventory-summary-cards { grid-template-columns: repeat(6,minmax(0,1fr)); }
.app-body .finance-summary-card {
  position: relative;
  min-height: 76px;
  overflow: hidden;
  padding: 10px 12px 9px 15px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: #fff;
}
.app-body .finance-summary-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: #0ea5e9;
}
.app-body .finance-summary-card span { display: block; color: #5e6f7e; font-size: 10px; font-weight: 700; }
.app-body .finance-summary-card b { display: block; margin-top: 4px; color: #18384f; font-size: 19px; line-height: 1.1; }
.app-body .finance-summary-card small { display: block; margin-top: 4px; color: #7a8792; font-size: 9px; }
.app-body .summary-settled::before { background: #159a62; }
.app-body .summary-settled b { color: #087648; }
.app-body .summary-open::before { background: #e39a16; }
.app-body .summary-open b { color: #a96700; }
.app-body .summary-overdue::before { background: #d62831; }
.app-body .summary-overdue b { color: #b82029; }

.app-body .table-wrap {
  border-radius: 3px;
  box-shadow: none;
  scrollbar-color: #aeb7c0 #e8ebee;
}
.app-body table { min-width: 900px; border-collapse: collapse; border-spacing: 0; }
.app-body th,.app-body td {
  padding: 7px 8px;
  border-right: 1px solid #c9cfd5;
  border-bottom: 1px solid #c9cfd5;
  line-height: 1.22;
}
.app-body th:last-child,.app-body td:last-child { border-right: 0; }
.app-body th {
  color: #244056;
  background: #d9dde1;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: 0;
  text-transform: none;
}
.app-body td { color: #263d51; font-size: 11px; }
.app-body tbody tr:nth-child(even) { background: #f0f1f2; }
.app-body tbody tr:hover { background: #fff7d6; }
.app-body .tag { padding: 3px 6px; border-radius: 2px; font-size: 9px; }
.app-body .record-actions,.app-body .actions,.app-body .inline { flex-direction: row; flex-wrap: nowrap; gap: 6px; }
.app-body .record-actions a,.app-body .actions a,.app-body .edit-link,.app-body .link-btn { font-size: 10px; }
.app-body .inline input { width: 90px; min-height: 28px; padding: 4px 6px; }
.app-body .inline input[type="date"] { width: 125px; }
.app-body .inline button { min-height: 28px; padding: 4px 7px; border-radius: 2px; font-size: 9px; }
.app-body .split { grid-template-columns: 300px minmax(0,1fr); gap: 8px; }

.app-body .alert { margin-bottom: 8px; padding: 8px 10px; border-radius: 3px; box-shadow: none; font-size: 11px; }
.app-body .reimbursement-overview { margin-bottom: 8px; border-radius: 4px; box-shadow: none; }
.app-body .reimbursement-overview-head { padding: 11px 13px; }
.app-body .reimbursement-overview-head strong { font-size: 20px; }
.app-body .collaborator-total { min-height: 80px; padding: 10px 12px; }
.app-body .collaborator-avatar { width: 32px; height: 32px; border-radius: 4px; }
.app-body .employee-document-count { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 6px; min-width: 150px; }
.app-body .employee-document-count > b { color: #173c55; font-size: 14px; }
.app-body .employee-document-count > span { color: #687987; font-size: 9px; }
.app-body .employee-document-count .tag { font-size: 8px; }
.app-body .form-stack label > small { color: #778693; font-size: 9px; font-weight: 500; line-height: 1.3; }
.app-body .salary-start { display: block; margin-top: 3px; color: #738290; font-size: 9px; }
.app-body .muted { color: #7a8792; }
.app-body .advance-list-panel { margin-bottom: 8px; }
.app-body .balance-panel { gap: 14px; margin-bottom: 8px; padding: 11px 13px; border-radius: 4px; box-shadow: none; }
.app-body .balance-panel strong { font-size: 19px; }
.app-body .horizon-tabs { border-radius: 3px; box-shadow: none; }
.app-body .horizon-tabs a { padding: 6px 10px; border-radius: 2px; font-size: 10px; }
.app-body .cash-cards,.app-body .forecast-panel { margin-bottom: 8px; }
.app-body .forecast-row { gap: 12px; padding: 10px 0; }
.app-body .section-head { margin-bottom: 9px; }

.app-body .inventory-form { margin-bottom: 8px; }
.app-body .form-section-title {
  display: flex;
  align-items: baseline;
  gap: 9px;
  margin: 4px -2px -1px;
  padding: 7px 8px 5px;
  border-bottom: 2px solid #dce5eb;
  color: #163e59;
  background: #f7fafc;
}
.app-body .form-section-title:first-child { margin-top: -2px; }
.app-body .form-section-title b { font-size: 12px; }
.app-body .form-section-title span { color: #6f7f8c; font-size: 9px; }
.app-body .inventory-table { min-width: 1500px; }
.app-body .inventory-table td:nth-child(2) { min-width: 190px; }
.app-body .inventory-item-name { color: #153d59; font-size: 12px; }
.app-body .inventory-alert-tag { display: flex; margin-top: 4px; }
.app-body .inventory-date-overdue { color: #bd2029; font-weight: 800; }
.app-body .inventory-movements-panel { margin-top: 8px; }
.app-body .inventory-movement-table { min-width: 1020px; }
.app-body .movement-changes { min-width: 360px; }
.app-body .movement-changes > span,.app-body .movement-changes > small { display: block; margin: 2px 0; }
.app-body .movement-changes > small { color: #6e7e8c; }

.app-body .assistant-chat { height: calc(100vh - 175px); min-height: 610px; }
.app-body .assistant-sidebar { min-height: 610px; }

@media (max-width: 1250px) {
  .app-body .brand { flex-basis: 155px; padding-inline: 9px; }
  .app-body .sidebar-brand-logo { width: 137px; }
  .app-body .nav-link { padding-inline: 9px; font-size: 11px; }
  .app-body .sidebar-footer { padding-inline: 7px; }
  .app-body .logout-link { font-size: 0; }
  .app-body .logout-link span { font-size: 16px; }
  .app-body .cards { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .app-body .form-grid { grid-template-columns: repeat(2,minmax(160px,1fr)); }
  .app-body .finance-summary-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .app-body .inventory-summary-cards { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 760px) {
  .app-body .sidebar { height: 58px; min-height: 58px; }
  .app-body .brand { flex-basis: 132px; height: 58px; padding-inline: 7px; }
  .app-body .sidebar-brand-logo { width: 118px; }
  .app-body .nav-link { min-height: 58px; padding-inline: 9px; font-size: 10px; }
  .app-body .sidebar-footer { display: none; }
  .app-body main { min-height: calc(100vh - 58px); }
  .app-body .topbar { top: 58px; height: 36px; padding: 0 10px; }
  .app-body .topbar-right { display: none; }
  .app-body .content { padding: 9px 8px 24px; }
  .app-body .page-head { align-items: center; flex-direction: row; flex-wrap: wrap; gap: 8px; }
  .app-body .page-head > :last-child { margin-left: auto; }
  .app-body .page-head h1 { font-size: 18px; }
  .app-body .cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .app-body .grid-3,.app-body .split,.app-body .form-grid { grid-template-columns: 1fr; }
  .app-body .filters { align-items: stretch; flex-direction: row; }
  .app-body .filters input,.app-body .filters select,.app-body .filters button,.app-body .filters .button { flex: 1 1 140px; max-width: none; }
  .app-body .record-actions,.app-body .inline { align-items: center; flex-direction: row; }
  .app-body .form-actions { align-items: stretch; flex-direction: row; flex-wrap: wrap; }
  .app-body .form-actions .button,.app-body .form-actions button { width: auto; flex: 1 1 130px; }
  .app-body .assistant-chat { height: calc(100vh - 155px); min-height: 560px; }
  .app-body .financial-month-filter { width: 100%; }
  .app-body .financial-month-filter .month-picker-form { flex: 1 1 270px; }
  .app-body .inventory-summary-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .app-body .form-section-title { align-items: flex-start; flex-direction: column; gap: 2px; }
  .today-due-grid { grid-template-columns: 1fr; }
}

/* Exclusão discreta: mantém a ação disponível sem competir com os demais comandos. */
button.danger-link {
  width: 28px;
  min-width: 28px;
  height: 28px;
  min-height: 28px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 4px;
  color: #7b8794!important;
  background: transparent;
  box-shadow: none;
  font-size: 0!important;
  line-height: 1;
  text-decoration: none;
}
button.danger-link::before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5M14 11v5'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v5M14 11v5'/%3E%3C/svg%3E") center/contain no-repeat;
}
button.danger-link:hover {
  border-color: #efc5c8;
  color: #b82029!important;
  background: #fff4f4;
  box-shadow: none;
  transform: none;
  text-decoration: none;
}
button.danger-link:focus-visible {
  border-color: #d99197;
  outline: 2px solid rgba(214,40,49,.18);
  outline-offset: 1px;
}

/* Inadimplências: módulo de controle isolado do financeiro. */
.off-finance-badge {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 11px;
  border: 1px solid #c8d6e2;
  border-radius: 999px;
  color: #456071;
  background: #f7fafc;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}
.off-finance-badge::before {
  content: "";
  width: 8px;
  height: 8px;
  margin-right: 7px;
  border-radius: 50%;
  background: #7d8c99;
}
.module-notice {
  margin-bottom: 8px;
  padding: 9px 11px;
  border: 1px solid #ead48a;
  border-left: 4px solid #0ea5e9;
  border-radius: 4px;
  color: #5f4a12;
  background: #fffaf0;
  font-size: 11px;
  line-height: 1.45;
}
.module-notice.warning {
  border-color: #ead49c;
  border-left-color: #d98b13;
  color: #72531b;
  background: #fff9e9;
}
.summary-protest::before { background: #8a45b8!important; }
.summary-protest b { color: #71369a!important; }
.table-subtext { display: block; margin-top: 3px; color: #748492; font-size: 9px; }
.schedule-link { color: #087648!important; }
.delinquency-table { min-width: 1240px!important; }
.schedule-source-panel {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  gap: 14px;
  margin-bottom: 8px;
}
.schedule-source-panel > div { display: grid; gap: 4px; min-width: 0; }
.schedule-source-panel span { color: #71808c; font-size: 9px; font-weight: 800; text-transform: uppercase; }
.schedule-source-panel b { overflow-wrap: anywhere; color: #233e52; font-size: 12px; }

@media (max-width: 760px) {
  .off-finance-badge { min-height: 30px; padding: 5px 8px; font-size: 9px; }
  .schedule-source-panel { grid-template-columns: 1fr; }
}

/* Dashboard anual */
.dashboard-bars-icon {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 2px;
  padding: 6px;
}
.dashboard-bars-icon i { display: block; width: 3px; border-radius: 2px 2px 0 0; background: currentColor; }
.dashboard-bars-icon i:nth-child(1) { height: 7px; }
.dashboard-bars-icon i:nth-child(2) { height: 13px; }
.dashboard-bars-icon i:nth-child(3) { height: 10px; }
.neutral-text { color: var(--muted); }
.year-filter { display: flex; align-items: center; gap: 6px; }
.year-filter > strong {
  display: grid;
  min-width: 82px;
  min-height: 42px;
  place-items: center;
  border: 1px solid #ccd6e3;
  border-radius: 10px;
  background: #fff;
  font-size: 17px;
}
.annual-chart-panel { margin-bottom: 17px; padding: 22px 24px 18px; }
.annual-chart-legend { display: flex; align-items: center; gap: 16px; color: var(--muted); font-size: 12px; }
.annual-chart-legend span { display: flex; align-items: center; gap: 6px; }
.annual-chart-legend i { display: block; width: 10px; height: 10px; border-radius: 3px; }
.profit-swatch { background: var(--green); }
.loss-swatch { background: var(--red); }
.annual-chart-scroll { width: 100%; overflow-x: auto; padding: 3px 0 5px; }
.annual-chart-layout { display: grid; grid-template-columns: 72px minmax(760px,1fr); min-width: 832px; }
.annual-chart-axis {
  position: relative;
  height: 268px;
  color: #7b8794;
  font-size: 10px;
  font-weight: 700;
  white-space: nowrap;
}
.annual-chart-axis span { position: absolute; right: 12px; }
.annual-chart-axis span:first-child { top: 25px; }
.annual-chart-axis span:nth-child(2) { top: 132px; transform: translateY(-50%); }
.annual-chart-axis span:last-child { bottom: 25px; }
.annual-result-chart { display: grid; grid-template-columns: repeat(12,minmax(52px,1fr)); gap: 7px; min-width: 760px; }
.annual-chart-month { display: grid; grid-template-rows: 25px 220px 23px; min-width: 0; text-align: center; }
.annual-result-compact {
  align-self: end;
  overflow: hidden;
  padding-bottom: 5px;
  font-size: 9px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.annual-month-plot {
  position: relative;
  border-top: 1px solid #e4e8ed;
  border-bottom: 1px solid #e4e8ed;
  background: linear-gradient(to bottom, rgba(14,165,233,.035) 0 49.7%, rgba(214,40,49,.02) 50.3% 100%);
}
.annual-month-plot::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 50%;
  right: 0;
  left: 0;
  height: 1px;
  background: #9aa7b2;
}
.annual-result-bar {
  position: absolute;
  z-index: 1;
  left: 18%;
  width: 64%;
  min-height: 3px;
}
.annual-result-bar.profit { bottom: 50%; border-radius: 4px 4px 0 0; background: linear-gradient(180deg,#26b878,#159a62); }
.annual-result-bar.loss { top: 50%; border-radius: 0 0 4px 4px; background: linear-gradient(180deg,#dc3f4d,#be2633); }
.annual-chart-month > b { padding-top: 7px; color: #3a4e61; font-size: 11px; }
.annual-detail-section { margin-top: 0; }
.annual-dashboard-note { margin: 11px 2px 0; color: var(--muted); font-size: 11px; }

.app-body .annual-dashboard-nav { padding-inline: 9px; }
.app-body .annual-dashboard-nav .nav-icon {
  display: flex;
  width: 22px;
  height: 22px;
  padding: 3px;
  color: rgba(255,255,255,.92);
  background: rgba(255,255,255,.12);
}
.app-body .annual-dashboard-nav.active .nav-icon { color: #fff; background: #d62831; }
.app-body .annual-dashboard-label { display: none; }
.app-body .year-filter { gap: 4px; }
.app-body .year-filter > strong { min-width: 70px; min-height: 32px; border-radius: 3px; font-size: 14px; }
.app-body .annual-chart-panel { margin-bottom: 9px; padding: 14px 16px 10px; }
.app-body .annual-chart-legend { font-size: 10px; }
.app-body .annual-detail-section .section-head { padding-inline: 1px; }
.app-body .annual-dashboard-note { font-size: 10px; }

@media (max-width: 760px) {
  .annual-page-head { align-items: flex-start!important; }
  .year-filter { width: 100%; }
  .year-filter .button { margin-left: auto; }
  .annual-chart-head { align-items: flex-start; flex-direction: column; }
  .annual-chart-layout { grid-template-columns: 58px minmax(700px,1fr); min-width: 758px; }
  .annual-result-chart { min-width: 700px; }
  .annual-chart-axis span { right: 8px; }
}

/* Pedidos de compra vinculados aos orçamentos */
.page-head-actions,.purchase-order-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
}
.purchase-order-link { color: #8b4a15!important; }
.purchase-order-budget-strip {
  display: grid;
  grid-template-columns: 1.3fr .7fr .8fr .8fr 1fr;
  gap: 1px;
  margin-bottom: 8px;
  overflow: hidden;
  border: 1px solid #cdd7df;
  border-radius: 4px;
  background: #cdd7df;
}
.purchase-order-budget-strip > div {
  display: grid;
  align-content: center;
  min-height: 60px;
  padding: 9px 11px;
  background: #fff;
}
.purchase-order-budget-strip span,
.purchase-order-meta span,
.purchase-order-card-total > span:first-child {
  color: #6d7c89;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}
.purchase-order-budget-strip b { margin-top: 3px; color: #284255; font-size: 12px; }
.document-pair a { margin-top: 4px; font-size: 11px; font-weight: 800; }
.purchase-order-summary { margin-bottom: 8px; }
.purchase-order-card { margin-bottom: 8px; padding: 13px 14px; }
.purchase-order-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 10px;
  border-bottom: 1px solid #d8e0e6;
}
.purchase-order-card-head h2 { margin: 2px 0 3px; font-size: 19px; }
.purchase-order-card-head p { margin: 0; color: #6d7c89; font-size: 10px; }
.purchase-order-card-total { display: grid; justify-items: end; gap: 4px; white-space: nowrap; }
.purchase-order-card-total > b { color: #173b57; font-size: 20px; }
.purchase-order-meta {
  display: grid;
  grid-template-columns: repeat(5,minmax(110px,1fr));
  gap: 7px;
  padding: 9px 0;
}
.purchase-order-meta > div {
  display: grid;
  gap: 3px;
  min-height: 49px;
  padding: 7px 9px;
  border: 1px solid #d9e1e7;
  border-radius: 3px;
  background: #f9fbfc;
}
.purchase-order-meta b { color: #284255; font-size: 12px; }
.purchase-order-meta a { font-size: 11px; font-weight: 800; }
.settled-text { color: #087648!important; }
.purchase-order-note {
  margin: 3px 0 7px;
  padding: 8px 10px;
  border-left: 3px solid #9bb5c6;
  color: #4d6272;
  background: #f5f8fa;
  font-size: 10px;
  line-height: 1.45;
}
.purchase-installment-table { margin-top: 7px; }
.purchase-installment-table table { min-width: 880px; }
.purchase-order-actions {
  justify-content: flex-end;
  margin-top: 9px;
  padding-top: 9px;
  border-top: 1px solid #d8e0e6;
}
.purchase-order-form .form-help,.form-help {
  color: #667887;
  font-size: 10px;
  line-height: 1.45;
}

@media (max-width: 950px) {
  .purchase-order-budget-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .purchase-order-budget-strip .document-pair { grid-column: 1/-1; }
  .purchase-order-meta { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 760px) {
  .purchase-order-page-head { align-items: flex-start!important; }
  .page-head-actions { width: 100%; }
  .page-head-actions .button { flex: 1 1 150px; text-align: center; }
  .purchase-order-budget-strip { grid-template-columns: 1fr; }
  .purchase-order-budget-strip .document-pair { grid-column: auto; }
  .purchase-order-card-head { flex-direction: column; gap: 9px; }
  .purchase-order-card-total { justify-items: start; }
  .purchase-order-meta { grid-template-columns: 1fr; }
}

/* Calendário operacional das ordens de serviço */
.service-calendar-panel { margin-bottom: 10px; padding: 14px; overflow: hidden; }
.service-calendar-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 12px;
}
.service-calendar-heading h2 { margin: 2px 0 3px; color: #173b57; font-size: 18px; }
.service-calendar-heading p { margin: 0; color: #6b7b89; font-size: 11px; }
.service-calendar-nav { flex: 0 0 auto; }
.service-calendar-scroll { overflow-x: auto; border: 1px solid #cbd5dd; border-radius: 4px; background: #fff; }
.service-calendar { min-width: 1040px; }
.service-calendar-weekdays,
.service-calendar-grid { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); }
.service-calendar-weekdays {
  position: sticky;
  top: 0;
  z-index: 3;
  border-bottom: 1px solid #bec9d2;
  background: #8a6200;
}
.service-calendar-weekdays div {
  padding: 8px 6px;
  border-right: 1px solid rgba(255,255,255,.16);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  text-align: center;
}
.service-calendar-weekdays div:last-child { border-right: 0; }
.service-calendar-day {
  min-height: 126px;
  padding: 6px;
  border-right: 1px solid #d5dce2;
  border-bottom: 1px solid #d5dce2;
  background: #fff;
}
.service-calendar-day:nth-child(7n) { border-right: 0; }
.service-calendar-day.outside { color: #9ba7b0; background: #f3f5f6; }
.service-calendar-day.today { box-shadow: inset 0 0 0 2px #0ea5e9; background: #fffaf6; }
.service-calendar-day > header { display: flex; align-items: center; justify-content: space-between; gap: 5px; min-height: 22px; margin-bottom: 4px; }
.service-calendar-day > header span {
  display: grid;
  place-items: center;
  width: 23px;
  height: 23px;
  border-radius: 50%;
  color: #344f63;
  font-size: 11px;
  font-weight: 850;
}
.service-calendar-day.today > header span { color: #fff; background: #0ea5e9; }
.service-calendar-day > header b { color: #d65c0b; font-size: 8px; text-transform: uppercase; }
.service-calendar-events { display: grid; gap: 4px; }
.service-calendar-event {
  display: grid;
  min-width: 0;
  gap: 2px;
  padding: 6px 7px;
  border-left: 4px solid #c2410c;
  border-radius: 3px;
  color: #7c2d12;
  background: #fff2e8;
  box-shadow: inset 0 0 0 1px rgba(194,65,12,.08);
  text-decoration: none;
  transition: filter .15s ease, transform .15s ease;
}
.service-calendar-event:hover { filter: brightness(.98); transform: translateY(-1px); }
.service-calendar-event.status-warning { border-left-color: #b45309; background: #fff1d6; }
.service-calendar-event.status-danger { border-left-color: #b91c1c; background: #ffe4e6; }
.service-calendar-event.status-success { border-left-color: #087648; background: #dcf7e9; }
.service-calendar-event.status-info { border-left-color: #c2410c; background: #fff2e8; }
.service-calendar-event strong,
.service-calendar-event span,
.service-calendar-event small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.service-calendar-event strong { color: #8f2d0a; font-size: 11px; font-weight: 900; }
.service-calendar-event span { color: #b42318; font-size: 9px; font-weight: 850; }
.service-calendar-event small { color: #334155; font-size: 8px; font-weight: 750; }
.service-calendar-event.status-danger strong,
.service-calendar-event.status-danger span { color: #991b1b; }
.service-calendar-event.status-warning strong { color: #92400e; }
.service-calendar-event.status-warning span { color: #b45309; }
.service-calendar-event.status-success strong { color: #075e3a; }
.service-calendar-event.status-success span { color: #087648; }

.service-agenda-panel { margin-bottom: 10px; padding: 14px; }
.service-agenda-list { display: grid; gap: 6px; }
.service-agenda-day {
  display: grid;
  grid-template-columns: 155px minmax(0,1fr);
  overflow: hidden;
  border: 1px solid #d5dde4;
  border-radius: 4px;
  background: #fff;
}
.service-agenda-date {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  align-items: center;
  gap: 1px 9px;
  padding: 9px 11px;
  border-right: 1px solid #d5dde4;
  background: #f2f6f9;
}
.service-agenda-date strong { grid-row: 1/3; color: #173b57; font-size: 27px; line-height: 1; text-align: center; }
.service-agenda-date span { color: #273f52; font-size: 11px; font-weight: 850; }
.service-agenda-date small { color: #748490; font-size: 9px; }
.service-agenda-activities { display: grid; }
.service-agenda-activities > a {
  display: grid;
  grid-template-columns: 4px minmax(0,1fr) auto;
  align-items: center;
  gap: 9px;
  padding: 8px 11px;
  border-bottom: 1px solid #e3e8ec;
  color: #284255;
  text-decoration: none;
}
.service-agenda-activities > a:last-child { border-bottom: 0; }
.service-agenda-activities > a:hover { background: #f7fafc; }
.service-agenda-activities > a > span:nth-child(2) { display: grid; min-width: 0; gap: 2px; }
.service-agenda-activities b,
.service-agenda-activities small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.service-agenda-activities b { color: #8f2d0a; font-size: 11px; font-weight: 900; }
.service-agenda-activities small { color: #334155; font-size: 9px; font-weight: 700; }
.service-agenda-activities em { color: #b42318; font-size: 9px; font-style: normal; font-weight: 900; }
.service-agenda-status { align-self: stretch; border-radius: 3px; background: #0ea5e9; }
.service-agenda-status.status-warning { background: #d98b13; }
.service-agenda-status.status-danger { background: #dc3f4d; }
.service-agenda-status.status-success { background: #159a62; }
.service-agenda-status.status-info { background: #0ea5e9; }
.service-orders-list-heading { margin: 12px 0 7px; }
.service-schedule-note {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 11px 13px;
  border: 1px solid #cdddeb;
  border-left: 4px solid #0ea5e9;
  border-radius: 4px;
  background: #f4f8fc;
}
.service-schedule-note > span { padding: 4px 6px; border-radius: 3px; color: #835800; background: #fff1b8; font-size: 8px; font-weight: 900; letter-spacing: .6px; }
.service-schedule-note > div { display: grid; gap: 2px; }
.service-schedule-note b { color: #274156; font-size: 12px; }
.service-schedule-note small,
.service-order-form label > small { color: #6c7d8b; font-size: 10px; font-weight: 500; }

@media (max-width: 1050px) {
  .service-calendar-heading { align-items: flex-start; flex-direction: column; }
  .service-calendar-nav { width: 100%; }
  .service-calendar-nav .month-picker-form { flex: 1; }
  .service-calendar-nav .month-picker { flex: 1; }
}

@media (max-width: 760px) {
  .contract-overview-head { align-items: flex-start; flex-direction: column; }
  .contract-overview-head small { text-align: left; }
  .contract-totals,.income-source-summary { grid-template-columns: 1fr; }
  .contract-total { grid-template-columns: 1fr; }
  .contract-card-footer { grid-column: 1; }
  .service-calendar-panel,.service-agenda-panel { padding: 9px; }
  .service-calendar { min-width: 850px; }
  .service-calendar-day { min-height: 112px; }
  .service-calendar-nav { flex-wrap: wrap; }
  .service-calendar-nav .month-picker-form { flex: 1 1 calc(100% - 80px); }
  .service-calendar-nav .apply-month { display: none; }
  .service-agenda-day { grid-template-columns: 1fr; }
  .service-agenda-date { grid-template-columns: 42px minmax(0,1fr); border-right: 0; border-bottom: 1px solid #d5dde4; }
  .service-agenda-activities > a { grid-template-columns: 4px minmax(0,1fr); }
  .service-agenda-activities em { display: none; }
  .service-schedule-note { align-items: flex-start; }
}

/* Baixa de contas em lote */
.sr-only {
  position: absolute!important;
  width: 1px!important;
  height: 1px!important;
  padding: 0!important;
  overflow: hidden!important;
  clip: rect(0,0,0,0)!important;
  white-space: nowrap!important;
  border: 0!important;
}
.app-body .bulk-settlement-bar {
  position: sticky;
  top: 108px;
  z-index: 12;
  display: flex;
  align-items: end;
  gap: 9px;
  margin: 0 0 8px;
  padding: 9px 10px;
  border: 1px solid #b9c9d6;
  border-left: 4px solid #0ea5e9;
  border-radius: 4px;
  background: rgba(247,250,252,.98);
  box-shadow: 0 3px 9px rgba(26,57,80,.09);
}
.app-body .bulk-selection-control {
  display: grid;
  align-self: stretch;
  align-content: center;
  gap: 3px;
  min-width: 165px;
  padding-right: 9px;
  border-right: 1px solid #d6dfe6;
}
.app-body .bulk-select-all {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #183b54;
  font-size: 11px;
  font-weight: 850;
  cursor: pointer;
}
.app-body .bulk-selection-control > span { color: #627585; font-size: 9px; }
.app-body .bulk-selection-control > span strong { color: #9a6800; font-size: 12px; }
.app-body .bulk-date-mode,.app-body .bulk-custom-date { display: grid; gap: 3px; color: #516879; font-size: 9px; font-weight: 750; }
.app-body .bulk-date-mode { flex: 1 1 260px; max-width: 360px; }
.app-body .bulk-custom-date { flex: 0 0 165px; }
.app-body .bulk-custom-date[hidden] { display: none; }
.app-body .bulk-settlement-bar select,.app-body .bulk-settlement-bar input[type="date"] { width: 100%; min-height: 32px; }
.app-body .bulk-settlement-bar button { flex: 0 0 auto; white-space: nowrap; }
.app-body .bulk-settlement-bar button:disabled { color: #7d8992; background: #d9dee2; cursor: not-allowed; opacity: .82; }
.app-body .bulk-settlement-bar input[type="checkbox"],
.app-body .row-select-checkbox {
  flex: 0 0 auto;
  width: 16px;
  min-width: 16px;
  height: 16px;
  min-height: 16px;
  margin: 0;
  padding: 0;
  accent-color: #d19b00;
  cursor: pointer;
}
.app-body .selection-column { width: 38px; min-width: 38px; padding-right: 5px; padding-left: 9px; text-align: center; }
.app-body .selection-unavailable { color: #aeb8c0; }
.app-body tr.bulk-row-selected td { background: #fff2bd!important; }

@media (max-width: 1000px) {
  .app-body .bulk-settlement-bar { position: static; flex-wrap: wrap; align-items: end; }
  .app-body .bulk-selection-control { flex: 1 1 100%; grid-template-columns: auto auto; justify-content: space-between; border-right: 0; border-bottom: 1px solid #d6dfe6; padding: 0 0 7px; }
  .app-body .bulk-date-mode { max-width: none; }
}

@media (max-width: 620px) {
  .app-body .bulk-date-mode,.app-body .bulk-custom-date,.app-body .bulk-settlement-bar button { flex: 1 1 100%; max-width: none; }
  .app-body .bulk-settlement-bar button { width: 100%; }
}

/* Ordens de produção */
.app-body .production-summary-cards { grid-template-columns: repeat(5,minmax(0,1fr)); }
.app-body .production-order-filters input { flex: 1 1 360px; }
.app-body .production-orders-table { min-width: 1680px; }
.production-progress { display: block; width: 100%; height: 5px; margin: 5px 0 2px; overflow: hidden; border-radius: 999px; background: #ece7d6; }
.production-progress i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#d99f00,#0ea5e9); }
.production-progress.large { height: 10px; margin: 8px 0 5px; }
.production-positive { color: #087648!important; font-weight: 800; }
.production-negative { color: #b82029!important; font-weight: 800; }
.production-order-link { color: #8a6200!important; font-weight: 850; }
.app-body .production-default-steps { padding: 10px 12px; border: 1px solid #e6cf79; border-radius: 3px; background: #fff8da; }
.page-head-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.production-overview { margin-bottom: 8px; border-left: 5px solid #0ea5e9!important; background: linear-gradient(120deg,#fff,#fffaf0)!important; }
.production-overview-main { display: grid; grid-template-columns: minmax(0,1fr) 230px; align-items: center; gap: 24px; }
.production-overview-main h2 { margin: 8px 0 3px!important; color: #2e3d4b; font-size: 16px!important; }
.production-overview-main p { margin: 0; color: #677785; font-size: 11px; }
.production-overview-progress { display: grid; justify-items: end; }
.production-overview-progress strong { color: #9a6800; font-size: 25px; line-height: 1; }
.production-overview-progress span,.production-overview-progress small { color: #687987; font-size: 9px; }
.production-overview-progress .production-progress { width: 100%; }
.production-kpi-grid { display: grid; grid-template-columns: repeat(7,minmax(130px,1fr)); gap: 8px; margin-bottom: 8px; }
.production-kpi-grid article { position: relative; min-height: 82px; overflow: hidden; padding: 11px 12px 9px 15px; border: 1px solid var(--line); border-radius: 4px; background: #fff; }
.production-kpi-grid article::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: #0ea5e9; }
.production-kpi-grid span { display: block; color: #607180; font-size: 9px; font-weight: 750; }
.production-kpi-grid b { display: block; margin-top: 5px; color: #263d51; font-size: 17px; line-height: 1.1; }
.production-kpi-grid small { display: block; margin-top: 5px; color: #7b8792; font-size: 8px; }
.production-kpi-grid .production-total-card::before { background: #d62831; }
.production-kpi-grid .production-total-card b { color: #b82029; }
.production-kpi-grid .production-margin-card::before { background: #159a62; }
.production-kpi-grid .production-margin-card b { color: #087648; }
.production-kpi-grid .production-loss-card::before { background: #d62831; }
.production-kpi-grid .production-loss-card b { color: #b82029; }
.production-section { margin-bottom: 8px; scroll-margin-top: 116px; }
.production-section .section-head h2 { margin: 1px 0 3px; font-size: 15px; }
.production-section .section-head p { margin: 0; color: #6b7b88; font-size: 10px; }
.production-section-total { color: #9a6800; font-size: 19px; white-space: nowrap; }
.production-entry-panel { margin: 8px 0; overflow: hidden; border: 1px solid #d7d1bd; border-radius: 4px; background: #fff; }
.production-entry-panel > summary { display: flex; align-items: center; min-height: 38px; padding: 8px 11px; color: #6f4c00; background: #fff8da; font-size: 11px; font-weight: 850; cursor: pointer; }
.production-entry-panel[open] > summary { border-bottom: 1px solid #e8d996; }
.production-entry-panel .production-inline-form { border: 0; border-radius: 0; }
.app-body .production-inline-form { grid-template-columns: repeat(4,minmax(135px,1fr)); }
.production-field-grow { grid-column: span 2; }
.production-steps-table { min-width: 1050px!important; }
.production-finance-tip { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 8px 0; padding: 10px 12px; border: 1px solid #e4cf7d; border-left: 4px solid #0ea5e9; border-radius: 4px; background: #fffaf0; }
.production-finance-tip > div { display: grid; gap: 2px; }
.production-finance-tip b { color: #5d470c; font-size: 11px; }
.production-finance-tip span { color: #786b49; font-size: 9px; }
.production-subtitle { margin: 14px 0 6px; color: #4f6271; font-size: 11px; text-transform: uppercase; letter-spacing: .45px; }
.production-calculated-total { display: flex; align-items: center; min-height: 32px; padding: 6px 8px; border: 1px solid #e4cf7d; border-radius: 2px; color: #755000; background: #fff8da; font-size: 13px; font-weight: 900; }

@media (max-width: 1400px) {
  .production-kpi-grid { grid-template-columns: repeat(4,minmax(140px,1fr)); }
  .app-body .production-summary-cards { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 900px) {
  .production-detail-head { align-items: flex-start!important; flex-direction: column; }
  .page-head-actions { width: 100%; justify-content: flex-start; }
  .production-overview-main { grid-template-columns: 1fr; }
  .production-overview-progress { justify-items: start; }
  .production-kpi-grid,.app-body .production-summary-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .app-body .production-inline-form { grid-template-columns: repeat(2,minmax(135px,1fr)); }
  .production-finance-tip { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 560px) {
  .production-kpi-grid,.app-body .production-summary-cards,.app-body .production-inline-form { grid-template-columns: 1fr; }
  .production-field-grow { grid-column: auto; }
  .page-head-actions .button { flex: 1 1 130px; }
}

/* Plataforma multiempresa */
.sidebar-company { padding: 0 2px 12px; margin-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,.14); display: grid; gap: 3px; }
.sidebar-company strong { color: #fff; font-size: 11px; line-height: 1.3; }
.sidebar-company small { color: rgba(255,255,255,.65); font-size: 9px; }
.topbar-title { display: grid; gap: 1px; }
.topbar-title small { color: #718096; font-size: 9px; font-weight: 600; }
.auth-switch { display: flex; justify-content: center; gap: 6px; margin-top: 18px; color: #667085; font-size: 11px; }
.auth-switch a { color: #9b6500; font-weight: 800; }
.register-shell { width: min(1120px,calc(100vw - 32px)); margin: 28px auto; display: grid; grid-template-columns: .82fr 1.18fr; overflow: hidden; border-radius: 24px; background: #fff; border: 1px solid #e1e6ed; box-shadow: 0 28px 70px rgba(21,32,50,.13); }
.register-intro { padding: 48px 42px; color: #2e2205; background: linear-gradient(145deg,#ffc107,#ffd75d); }
.register-brand-logo { display: flex; width: 180px; height: 58px; margin-bottom: 44px; background: #fff; border-radius: 12px; padding: 8px 12px; }
.register-intro h1 { max-width: 430px; margin: 8px 0 14px; font-size: clamp(30px,4vw,48px); line-height: 1.02; }
.register-intro>p { max-width: 460px; color: #59440e; line-height: 1.65; }
.register-benefits { display: grid; gap: 12px; margin: 30px 0; }
.register-benefits span { display: flex; align-items: center; gap: 9px; font-size: 12px; font-weight: 700; }
.register-benefits i { width: 23px; height: 23px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.8); font-style: normal; }
.register-price { display: grid; gap: 4px; padding: 20px; border: 1px solid rgba(77,54,0,.17); border-radius: 16px; background: rgba(255,255,255,.46); }
.register-price strong { font-size: 26px; }.register-price em { margin-left: 4px; font-size: 11px; font-style: normal; font-weight: 700; }
.register-price small,.register-price span { color: #624c14; font-weight: 700; }
.register-price .register-regular-price { color: #7b6223; font-size: 12px; }.register-price .register-regular-price s { color: #9a3412; font-size: 15px; font-weight: 900; }
.register-card { padding: 42px; }
.register-card .login-heading { text-align: left; margin-bottom: 24px; }
.register-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.register-form .span-2 { grid-column: 1/-1; }
.register-form [hidden] { display: none!important; }
.register-form input[readonly] { color: #354052; background: #f3f5f7; }
.register-cnpj-note { display: block; margin-top: 6px; color: #687588; font-size: 9px; font-weight: 650; line-height: 1.45; }
.register-cnpj-note.is-loading { color: #876100; }
.register-cnpj-note.is-success { color: #147344; }
.register-cnpj-note.is-error { color: #b42318; }
.form-section-title { margin-top: 6px; color: #8a650b; font-size: 10px; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.terms-check { display: flex!important; flex-direction: row!important; align-items: flex-start; gap: 9px!important; padding: 12px; border-radius: 10px; background: #fff8df; }
.terms-check input { width: 16px!important; min-width: 16px; margin-top: 1px; }
.terms-check span { color: #5d6470; font-size: 10px; line-height: 1.5; }
.user-limit-badge { display: flex; align-items: center; gap: 7px; padding: 9px 13px; border: 1px solid #e2c264; border-radius: 10px; color: #694800; background: #fff8da; font-size: 10px; }
.user-limit-badge strong { font-size: 15px; }
.users-layout { display: grid; grid-template-columns: minmax(0,1.7fr) minmax(280px,.7fr); gap: 14px; }
.users-list-panel,.new-user-panel,.profile-guide { padding: 18px; }
.panel-title { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.panel-title h2 { margin: 0 0 3px; font-size: 16px; }.panel-title p { margin: 0; color: #78869a; font-size: 10px; }
.user-access-grid { display: grid; gap: 8px; }
.user-access-card { display: grid; grid-template-columns: 38px minmax(0,1fr) auto auto; align-items: center; gap: 11px; padding: 12px; border: 1px solid #e1e6ed; border-radius: 12px; background: #fff; }
.user-access-card.inactive { opacity: .62; background: #f5f6f8; }
.user-access-avatar { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; color: #4e3600; background: #ffd256; font-weight: 900; }
.user-access-info { display: grid; gap: 2px; min-width: 0; }.user-access-info strong { font-size: 12px; }.user-access-info span { overflow: hidden; color: #6f7c8e; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }.user-access-info small { color: #9b6500; font-size: 9px; font-weight: 800; }
.stack-form { display: grid; gap: 11px; }.form-warning { color: #b42318; font-weight: 700; }
.profile-guide { margin-top: 14px; }.profile-guide h2 { margin: 0 0 13px; font-size: 15px; }
.profile-guide-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(160px,1fr)); gap: 8px; }.profile-guide-grid div { display: grid; gap: 4px; padding: 12px; border-radius: 10px; background: #f7f8fa; }.profile-guide-grid strong { font-size: 11px; }.profile-guide-grid span { color: #6f7c8e; font-size: 9px; line-height: 1.5; }
.narrow-form-panel { max-width: 820px; padding: 20px; }
.subscription-grid { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(280px,.7fr); gap: 14px; }
.subscription-main,.subscription-company { padding: 24px; }.subscription-main h2 { margin: 6px 0; font-size: 26px; }
.subscription-regular-price { margin-top: 12px; color: #8a5c00; font-size: 11px; font-weight: 800; }.subscription-regular-price s { color: #a1261d; font-size: 13px; }.subscription-price { margin: 4px 0 20px; color: #17734b; font-size: 31px; font-weight: 900; }.subscription-price small { margin-left: 5px; color: #718096; font-size: 10px; }
.subscription-features { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; color: #3c4b60; font-size: 10px; font-weight: 700; }
.trial-callout,.subscription-blocked { display: grid; gap: 4px; margin-top: 22px; padding: 14px; border-radius: 11px; background: #fff7d7; color: #6c4a00; }.subscription-blocked { background: #fff0f0; color: #a82020; font-weight: 700; }
.billing-connected { display: grid; gap: 4px; margin-top: 18px; padding: 14px; border: 1px solid #bfe6d1; border-radius: 11px; background: #effaf4; color: #12613d; }.billing-connected span { font-size: 10px; }
.seat-plan-summary { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin: 12px 0 18px; padding: 11px; border: 1px solid #ead27e; border-radius: 11px; background: #fffbeb; }
.seat-plan-summary>span { display: grid; min-width: 110px; gap: 2px; padding-right: 12px; border-right: 1px solid #eadba8; }
.seat-plan-summary small { color: #806b2e; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.seat-plan-summary strong { color: #493500; font-size: 13px; }.seat-plan-summary>a { margin-left: auto; }
.compact-summary { margin-top: 0; }.compact-summary>span { min-width: 90px; }
.subscription-seat-summary { max-width: 580px; margin-top: 18px; }
.seat-upgrade-card { display: grid; gap: 8px; margin-top: 14px; padding: 14px; border: 1px solid #e5bf4e; border-radius: 11px; background: #fff8da; }
.seat-upgrade-card strong { color: #624600; }.seat-upgrade-card p { margin: 0; color: #715f2b; font-size: 10px; line-height: 1.5; }
.seat-upgrade-card form { margin: 0; }.seat-upgrade-card button { width: 100%; }
.next-invoice-box { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 10px; padding: 14px; border: 1px solid #dfc46e; border-radius: 11px; background: #fffaf0; }
.next-invoice-box>div { display: grid; flex: 1 1 240px; gap: 3px; }.next-invoice-box span { color: #5f4b13; font-size: 10px; font-weight: 800; }.next-invoice-box small { color: #7b704f; font-size: 9px; }
.next-invoice-box form { margin: 0; }
.billing-activation-form { display: flex; align-items: end; gap: 10px; margin-top: 18px; padding: 14px; border: 1px solid #f0cf68; border-radius: 11px; background: #fffaf0; }.billing-activation-form label { flex: 1; }.billing-activation-form select { min-width: 210px; }
.billing-error { margin-top: 12px; padding: 9px; border-radius: 8px; background: #fff0f0; color: #a82020; font-size: 9px; font-weight: 700; }
.subscription-company>span { color: #718096; font-size: 10px; }.subscription-company dl { display: grid; gap: 10px; margin: 22px 0; }.subscription-company dl div { display: flex; justify-content: space-between; gap: 10px; padding-bottom: 9px; border-bottom: 1px solid #e7ebf0; }.subscription-company dt { color: #718096; font-size: 10px; }.subscription-company dd { margin: 0; font-size: 10px; font-weight: 800; text-align: right; }.subscription-company>small { color: #7a8798; line-height: 1.6; }
.platform-company-list { display: grid; gap: 12px; }.platform-company-card { padding: 16px; }.platform-company-card>header { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 13px; }.platform-company-card>header div { display: grid; gap: 3px; }.platform-company-card>header span { color: #718096; font-size: 9px; }
.platform-company-form { display: grid; grid-template-columns: repeat(6,minmax(100px,1fr)) auto; align-items: end; gap: 9px; }.platform-company-form button { min-height: 35px; }
.platform-client-summary { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; margin-bottom: 12px; }.platform-client-summary .panel { padding: 15px 17px; border-left: 4px solid #718096; }.platform-client-summary span,.platform-client-summary small { display: block; color: #728095; font-size: 9px; }.platform-client-summary strong { display: block; margin: 4px 0; color: #15253a; font-size: 22px; }.platform-client-summary .summary-trial { border-left-color: #d79d00; }.platform-client-summary .summary-trial strong { color: #9a6800; }.platform-client-summary .summary-active { border-left-color: #159663; }.platform-client-summary .summary-active strong { color: #087648; }.platform-client-summary .summary-overdue,.platform-client-summary .summary-blocked { border-left-color: #d33b4b; }.platform-client-summary .summary-overdue strong,.platform-client-summary .summary-blocked strong { color: #ba2838; }
.platform-client-filter { display: grid; grid-template-columns: minmax(260px,1fr) 210px auto auto; align-items: end; gap: 9px; margin-bottom: 12px; padding: 12px; }.platform-client-filter label { display: grid; gap: 5px; color: #5f6e82; font-size: 9px; font-weight: 800; }.platform-client-filter input,.platform-client-filter select { min-height: 39px; }
.platform-company-card { border-left: 4px solid #e0b10a; }.platform-company-card.client-needs-attention { border-left-color: #d33b4b; }.platform-company-card>header .platform-company-identity { min-width: 0; }.platform-company-identity>strong { color: #16263a; font-size: 15px; }.platform-company-identity>span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.platform-company-identity>small { color: #8390a1; font-size: 9px; }.platform-company-statuses { display: flex!important; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 6px!important; }.platform-company-statuses .tag { font-size: 8px; }
.platform-company-facts { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); overflow: hidden; border: 1px solid #e1e6ed; border-radius: 10px; background: #f8f9fb; }.platform-company-facts>div { min-width: 0; padding: 12px 13px; border-right: 1px solid #e1e6ed; }.platform-company-facts>div:last-child { border: 0; }.platform-company-facts span,.platform-company-facts small { display: block; overflow: hidden; color: #778497; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }.platform-company-facts strong { display: block; margin: 4px 0; color: #25374d; font-size: 12px; }.platform-company-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; margin-top: 12px; }.platform-company-actions form,.platform-detail-actions form,.platform-billing-history header form { margin: 0; }.platform-company-actions .button,.platform-company-actions button,.platform-detail-actions button { min-height: 36px; padding: 7px 11px; font-size: 9px; }
.platform-block-button { color: #9d2634; border: 1px solid #f0b9c0; background: #fff0f2; box-shadow: none; }.platform-block-button:hover { color: #fff; background: #bd3040; box-shadow: none; }
.platform-billing-alert { margin-top: 10px; padding: 9px 11px; border: 1px solid #efc2c8; border-radius: 8px; color: #9e2936; background: #fff0f2; font-size: 9px; font-weight: 700; }
.platform-detail-back { margin-bottom: 9px; }.platform-detail-back a { color: #735400; font-size: 10px; font-weight: 800; text-decoration: none; }.platform-company-detail-head { align-items: center; }.platform-detail-actions { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }.platform-detail-summary { grid-template-columns: repeat(4,minmax(0,1fr)); }
.platform-company-detail-grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(420px,1.1fr); gap: 12px; margin-bottom: 12px; }.platform-client-data-card,.platform-client-control-card { padding: 19px; }.platform-client-data-card>header,.platform-client-control-card>header,.platform-client-users>header { margin-bottom: 14px; }.platform-client-data-card h2,.platform-client-control-card h2,.platform-client-users h2,.platform-billing-history h2 { margin: 3px 0; font-size: 16px; }.platform-client-data-card dl { display: grid; gap: 1px; margin: 0; overflow: hidden; border: 1px solid #e0e5ec; border-radius: 10px; }.platform-client-data-card dl>div { display: grid; grid-template-columns: 125px minmax(0,1fr); gap: 10px; padding: 10px 12px; background: #f8f9fb; }.platform-client-data-card dt { color: #768396; font-size: 9px; }.platform-client-data-card dd { margin: 0; color: #26384e; font-size: 9px; font-weight: 800; overflow-wrap: anywhere; }
.platform-company-control-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }.platform-company-control-form label { display: grid; gap: 5px; color: #637287; font-size: 9px; font-weight: 800; }.platform-company-control-form button { grid-column: 1/-1; }.platform-access-explanation { display: grid; gap: 4px; margin-top: 12px; padding: 11px; border-radius: 9px; color: #5c4a13; background: #fff7d8; }.platform-access-explanation strong { font-size: 10px; }.platform-access-explanation span { font-size: 9px; line-height: 1.45; }
.platform-billing-history,.platform-client-users { margin-bottom: 12px; padding: 0; overflow: hidden; }.platform-billing-history>header,.platform-client-users>header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0; padding: 16px 18px; border-bottom: 1px solid #e1e6ed; }.platform-billing-history header p,.platform-client-users header p { margin: 0; color: #788598; font-size: 9px; }.platform-provider-data { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; background: #e1e6ed; }.platform-provider-data>span { min-width: 0; padding: 11px 16px; background: #f8f9fb; }.platform-provider-data small,.platform-provider-data strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.platform-provider-data small { color: #788598; font-size: 8px; }.platform-provider-data strong { margin-top: 4px; color: #2b3c51; font-size: 9px; }.platform-billing-history>.platform-billing-alert,.platform-client-users>.platform-billing-alert { margin: 12px 16px; }.platform-billing-history a { color: #805c00; font-weight: 800; }
.platform-admin-body { min-height: 100vh; margin: 0; background: #eef1f5; color: #162234; }
.platform-admin-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 72px; padding: 10px clamp(20px,4vw,64px); border-bottom: 3px solid #0ea5e9; background: #fff; box-shadow: 0 3px 16px rgba(24,36,52,.08); }
.platform-admin-header>a img { display: block; width: 150px; max-height: 46px; object-fit: contain; }
.platform-admin-header>div { display: flex; align-items: center; gap: 14px; font-size: 10px; }.platform-admin-header>div span { color: #6e7b8d; }.platform-admin-header>div strong { color: #162234; }.platform-admin-header>div a { padding: 8px 12px; border-radius: 7px; background: #162234; color: #fff; text-decoration: none; font-weight: 800; }
.platform-admin-main { width: min(1500px,calc(100% - 32px)); margin: 24px auto 50px; }
.account-grid { display: grid; grid-template-columns: minmax(260px,.7fr) minmax(360px,1.3fr); gap: 16px; align-items: start; }
.account-summary-card { text-align: center; padding: 28px; }
.account-avatar { width: 64px; height: 64px; margin: 0 auto 12px; font-size: 24px; }
.account-summary-card h2 { margin: 0; }
.account-summary-card > p { color: #718096; margin: 4px 0 20px; }
.account-summary-card dl { margin: 0; text-align: left; display: grid; gap: 1px; border: 1px solid #e1e6ed; border-radius: 12px; overflow: hidden; }
.account-summary-card dl div { display: grid; grid-template-columns: 90px 1fr; gap: 10px; padding: 10px 12px; background: #f7f8fa; }
.account-summary-card dt { color: #718096; }.account-summary-card dd { margin: 0; font-weight: 800; overflow-wrap: anywhere; }
.account-password-card { padding: 24px; }
.account-recovery-card { grid-column: 1/-1; padding: 24px; }
.recovery-email-form { display: grid; grid-template-columns: minmax(240px,1fr) minmax(220px,.8fr) auto; align-items: end; gap: 12px; }
.recovery-email-form label { display: grid; gap: 6px; }
.recovery-email-form button { min-height: 42px; }
.account-security-note { display: block; margin-top: 11px; color: #728095; font-size: 9px; line-height: 1.5; }
.account-team-panel { margin-top: 16px; padding: 22px; }
.account-team-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(280px,.55fr); gap: 16px; align-items: start; }
.account-new-user { padding: 16px; border: 1px solid #e1e6ed; border-radius: 12px; background: #f8f9fb; }.account-new-user h3 { margin: 0 0 13px; font-size: 14px; }
.profile-home-card { margin-top: 16px; padding: 28px; }.profile-home-card h2 { margin: 6px 0; }
.profile-home-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.nav-count { margin-left: auto; display: grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 999px; color: #fff!important; background: #d62831!important; font-size: 9px!important; font-weight: 900!important; }
.support-page-head { position: relative; }
.support-new-ticket { position: relative; z-index: 10; }
.support-new-ticket>summary { list-style: none; }.support-new-ticket>summary::-webkit-details-marker { display: none; }
.support-new-ticket>form { position: absolute; top: calc(100% + 8px); right: 0; width: min(420px,calc(100vw - 40px)); padding: 18px; border: 1px solid #e0c36b; border-radius: 13px; background: #fff; box-shadow: 0 22px 55px rgba(22,29,40,.2); }
.support-layout { display: grid; grid-template-columns: minmax(270px,340px) minmax(0,1fr); gap: 14px; min-height: 650px; }
.support-thread-list,.support-conversation { min-height: 650px; padding: 0; overflow: hidden; }
.support-thread-list>.panel-title { margin: 0; padding: 17px 18px; border-bottom: 1px solid #e2e7ed; }
.support-thread-scroll { max-height: 585px; overflow-y: auto; }
.support-thread-item { display: grid; gap: 5px; padding: 14px 16px; border-bottom: 1px solid #e7ebf0; color: #26394e; text-decoration: none; transition: background .15s ease; }
.support-thread-item:hover,.support-thread-item.active { background: #fff7d6; }.support-thread-item.active { box-shadow: inset 4px 0 #0ea5e9; }
.support-thread-item>div { display: flex; align-items: center; gap: 8px; }.support-thread-item strong { min-width: 0; overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.support-thread-item h3 { margin: 0; font-size: 11px; }.support-thread-item>span { overflow: hidden; color: #748194; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.support-thread-item footer { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; margin-top: 3px; }.support-thread-item footer small { margin-right: auto; color: #8591a1; font-size: 8px; }
.support-thread-item .tag { padding: 4px 6px; font-size: 7px; font-style: normal; }
.support-unread { display: grid; place-items: center; min-width: 19px; height: 19px; margin-left: auto; padding: 0 5px; border-radius: 999px; color: #fff; background: #d62831; font-size: 8px; }
.support-priority { display: inline-flex; width: max-content; padding: 4px 7px; border-radius: 999px; font-size: 7px; font-style: normal; font-weight: 900; text-transform: uppercase; }.priority-normal { color: #536275; background: #edf1f5; }.priority-alta { color: #8a5900; background: #fff0bf; }.priority-urgente { color: #ae2634; background: #ffe0e4; }
.support-conversation { display: grid; grid-template-rows: auto minmax(0,1fr) auto auto; }
.support-conversation-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; padding: 18px 20px; border-bottom: 1px solid #e2e7ed; background: #fff; }
.support-conversation-head h2 { margin: 4px 0; font-size: 17px; }.support-conversation-head p { margin: 0; color: #798698; font-size: 9px; }.support-conversation-head>div:last-child { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }
.support-messages { display: flex; flex-direction: column; gap: 10px; min-height: 300px; max-height: 470px; overflow-y: auto; padding: 20px; background: #f5f7fa; }
.support-message { align-self: flex-start; width: min(78%,720px); padding: 12px 14px; border: 1px solid #dfe5ec; border-radius: 4px 14px 14px 14px; background: #fff; box-shadow: 0 3px 9px rgba(23,36,53,.05); }
.support-message.from-customer { align-self: flex-end; border-color: #ecd06f; border-radius: 14px 4px 14px 14px; background: #fff8dc; }
.platform-admin-body .support-message.from-admin { align-self: flex-end; border-color: #ecd06f; border-radius: 14px 4px 14px 14px; background: #fff8dc; }.platform-admin-body .support-message.from-customer { align-self: flex-start; border-color: #dfe5ec; border-radius: 4px 14px 14px 14px; background: #fff; }
.support-message header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }.support-message header strong { font-size: 10px; }.support-message header span { color: #8190a1; font-size: 8px; }
.support-message p { margin: 8px 0 0; color: #34445a; font-size: 11px; line-height: 1.55; white-space: pre-wrap; overflow-wrap: anywhere; }
.support-attachments { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }.support-attachments a { padding: 6px 8px; border: 1px solid #dce3eb; border-radius: 7px; color: #7b5700; background: #fff; font-size: 8px; font-weight: 800; text-decoration: none; }
.support-reply-form { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: end; gap: 8px; padding: 13px 16px; border-top: 1px solid #e2e7ed; background: #fff; }.support-reply-form textarea { min-height: 68px; max-height: 150px; }
.support-file-button { position: relative; display: grid; place-items: center; min-height: 42px; padding: 9px 12px; border: 1px solid #d6dee8; border-radius: 9px; color: #4e5d71; background: #edf1f5; font-size: 9px; font-weight: 800; cursor: pointer; }.support-file-button input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.support-close-form { padding: 0 16px 13px; text-align: right; }.support-empty-conversation { display: grid; place-items: center; align-content: center; min-height: 640px; padding: 30px; color: #788598; text-align: center; }.support-empty-conversation>span { display: grid; place-items: center; width: 55px; height: 55px; border-radius: 16px; color: #765600; background: #ffe17b; font-size: 25px; font-weight: 900; }.support-empty-conversation h2 { margin: 14px 0 4px; color: #25364a; }.support-empty-conversation p { margin: 0; }
.support-summary-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin-bottom: 12px; }.platform-admin-body .finance-summary-card { position: relative; padding: 14px 16px; overflow: hidden; border: 1px solid #dfe5ec; border-radius: 10px; background: #fff; }.platform-admin-body .finance-summary-card span,.platform-admin-body .finance-summary-card small { display: block; color: #728095; font-size: 9px; }.platform-admin-body .finance-summary-card b { display: block; margin: 4px 0; font-size: 20px; }.platform-admin-body .summary-overdue b { color: #c92f3f; }
.support-admin-filter { display: flex; align-items: end; gap: 8px; margin-bottom: 12px; padding: 10px; border: 1px solid #dfe5ec; border-radius: 10px; background: #fff; }.support-admin-filter label { width: min(280px,100%); font-size: 9px; font-weight: 800; }
.support-status-form { display: flex; align-items: center; gap: 7px; }.support-status-form select { min-width: 150px; }.support-status-form button { min-height: 36px; padding: 7px 10px; }
.platform-admin-nav { display: flex; gap: 5px; }.platform-admin-nav a { position: relative; background: #eef1f5!important; color: #33445a!important; }.platform-admin-nav a.active { color: #5b4200!important; background: #ffe17b!important; }.platform-admin-nav b { display: inline-grid; place-items: center; min-width: 18px; height: 18px; margin-left: 5px; border-radius: 999px; color: #fff; background: #d62831; font-size: 8px; }
.platform-funnel-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 18px; }.platform-funnel-head h1 { margin: 3px 0 4px; font-size: 28px; }.platform-funnel-head p { margin: 0; color: #66758a; }.platform-funnel-head .eyebrow { color: #c48600; font-size: 9px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.platform-period-filter label { display: grid; gap: 5px; color: #657388; font-size: 9px; font-weight: 800; }.platform-period-filter select { min-width: 150px; height: 38px; border: 1px solid #ccd4df; border-radius: 8px; background: #fff; color: #19283b; font-weight: 800; }
.platform-funnel-controls { display: flex; align-items: flex-end; gap: 9px; }.platform-funnel-reset { position: relative; }.platform-funnel-reset>summary { min-height: 38px; padding: 10px 13px; border: 1px solid #d5af33; border-radius: 8px; color: #654900; background: #fff7d7; font-size: 9px; font-weight: 900; cursor: pointer; list-style: none; }.platform-funnel-reset>summary::-webkit-details-marker { display: none; }.platform-funnel-reset>summary::before { content: '↻'; margin-right: 6px; font-size: 13px; }.platform-funnel-reset[open]>summary { background: #ffe17b; }.platform-funnel-reset>form { position: absolute; z-index: 30; top: calc(100% + 7px); right: 0; display: grid; gap: 9px; width: 330px; padding: 15px; border: 1px solid #e0c259; border-radius: 11px; background: #fff; box-shadow: 0 16px 38px rgba(25,36,53,.18); }.platform-funnel-reset label { display: grid; gap: 5px; color: #4f5f74; font-size: 9px; font-weight: 900; }.platform-funnel-reset input { height: 38px; border: 1px solid #cfd7e2; border-radius: 8px; }.platform-funnel-reset p { color: #6f7c8d; font-size: 9px; line-height: 1.45; }.platform-funnel-reset button { min-height: 39px; border: 0; border-radius: 8px; color: #342500; background: #0ea5e9; font-size: 9px; font-weight: 900; cursor: pointer; }.platform-funnel-reset button:hover { background: #eeb200; }
.platform-current-period { display: flex; align-items: center; gap: 7px; width: fit-content; margin: -7px 0 14px; padding: 7px 10px; border: 1px solid #dce4ec; border-radius: 999px; color: #718095; background: #fff; font-size: 9px; }.platform-current-period i { width: 7px; height: 7px; border-radius: 50%; background: #13a46f; box-shadow: 0 0 0 3px rgba(19,164,111,.13); }.platform-current-period strong { color: #293b51; }
.platform-funnel-steps { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 8px; margin-bottom: 12px; }.platform-funnel-step { position: relative; display: flex; align-items: flex-start; gap: 10px; min-height: 118px; padding: 16px 13px; overflow: hidden; border: 1px solid #dce2ea; border-top: 4px solid #0ea5e9; border-radius: 11px; background: #fff; box-shadow: 0 4px 14px rgba(27,42,62,.05); }.platform-funnel-step:not(:last-child)::after { content: '›'; position: absolute; right: -1px; top: 39px; color: #d39e00; font-size: 28px; font-weight: 900; }.platform-funnel-step .step-number { display: grid; place-items: center; flex: 0 0 24px; width: 24px; height: 24px; border-radius: 999px; background: #fff0b3; color: #755500; font-size: 10px; font-weight: 900; }.platform-funnel-step div { min-width: 0; }.platform-funnel-step small { display: block; min-height: 24px; color: #607087; font-size: 9px; font-weight: 800; }.platform-funnel-step strong { display: block; margin: 4px 0; color: #15253a; font-size: 27px; }.platform-funnel-step p { margin: 0; color: #8490a0; font-size: 8px; line-height: 1.35; }
.platform-funnel-kpis { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin: 0 0 12px; }.platform-funnel-kpis .panel { padding: 14px 17px; border-left: 4px solid #0ea5e9; }.platform-funnel-kpis span,.platform-funnel-kpis small { display: block; color: #6c7a8d; font-size: 9px; }.platform-funnel-kpis strong { display: block; margin: 3px 0; color: #12805c; font-size: 22px; }
.platform-funnel-grid { display: grid; grid-template-columns: 1.35fr 1fr; gap: 12px; margin-bottom: 12px; }.platform-funnel-panel { padding: 0; overflow: hidden; }.platform-funnel-panel>header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px; border-bottom: 1px solid #e1e6ed; }.platform-funnel-panel h2 { margin: 0 0 3px; font-size: 15px; }.platform-funnel-panel header p { margin: 0; color: #758296; font-size: 9px; }.platform-funnel-table { width: 100%; border-collapse: collapse; font-size: 9px; }.platform-funnel-table th { padding: 10px 12px; background: #f0f3f7; color: #647287; text-align: left; text-transform: uppercase; letter-spacing: .04em; }.platform-funnel-table td { padding: 11px 12px; border-top: 1px solid #e5e9ef; color: #26384e; }.platform-funnel-table tr:hover td { background: #fffaf0; }.platform-funnel-table .empty-cell { padding: 28px 16px; color: #7b8797; text-align: center; }.privacy-badge { padding: 6px 9px; border-radius: 999px; background: #e8f7ef; color: #16704f; font-size: 8px; font-weight: 900; }.platform-privacy-note { margin: 12px 4px 0; color: #768497; font-size: 9px; text-align: center; }
.platform-period-history { margin-top: 12px; }.platform-period-history .history-count { padding: 6px 9px; border-radius: 999px; color: #664a00; background: #fff0b3; font-size: 8px; font-weight: 900; white-space: nowrap; }
@media (max-width: 900px) {
  .register-shell,.users-layout,.subscription-grid,.account-grid,.account-team-grid,.support-layout,.platform-funnel-grid,.platform-company-detail-grid { grid-template-columns: 1fr; }
  .platform-funnel-steps { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .platform-client-summary { grid-template-columns: repeat(3,minmax(0,1fr)); }.platform-company-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }.platform-company-facts>div { border-bottom: 1px solid #e1e6ed; }.platform-client-filter { grid-template-columns: minmax(0,1fr) 180px auto; }.platform-client-filter .secondary { grid-column: 1/-1; }
  .support-thread-list { min-height: auto; }.support-thread-scroll { max-height: 300px; }.support-conversation { min-height: 620px; }
  .register-intro { padding: 32px 24px; }.register-brand-logo { margin-bottom: 24px; }
  .register-card { padding: 28px 22px; }.profile-guide-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .platform-company-form { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .platform-admin-header { align-items: flex-start; }.platform-admin-header>div { align-items: flex-end; flex-direction: column; gap: 4px; }.platform-admin-header>div span { display: none; }
}
@media (max-width: 560px) {
  .platform-funnel-head { align-items: stretch; flex-direction: column; }.platform-funnel-controls { align-items: stretch; flex-direction: column; }.platform-period-filter select,.platform-funnel-reset>summary { width: 100%; }.platform-funnel-reset>form { position: fixed; inset: 90px 12px auto; width: auto; }.platform-current-period { align-items: flex-start; flex-wrap: wrap; width: auto; border-radius: 10px; }.platform-funnel-steps { grid-template-columns: repeat(2,minmax(0,1fr)); }.platform-funnel-kpis { grid-template-columns: 1fr; }.platform-funnel-panel>header { align-items: flex-start; flex-direction: column; }.table-scroll { overflow-x: auto; }.platform-funnel-table { min-width: 560px; }
  .register-form,.subscription-features,.profile-guide-grid { grid-template-columns: 1fr; }
  .billing-activation-form { align-items: stretch; flex-direction: column; }
  .next-invoice-box { align-items: stretch; flex-direction: column; }.next-invoice-box form button,.next-invoice-box>a { width: 100%; text-align: center; }
  .support-page-head { align-items: stretch; }.support-new-ticket>summary { width: 100%; }.support-new-ticket>form { position: fixed; inset: 70px 12px auto; width: auto; max-height: calc(100vh - 90px); overflow-y: auto; }
  .support-conversation-head { flex-direction: column; }.support-message { width: 92%; }.support-reply-form { grid-template-columns: 1fr 1fr; }.support-reply-form textarea { grid-column: 1/-1; }.support-summary-grid { grid-template-columns: 1fr; }
  .platform-admin-header { flex-direction: column; }.platform-admin-header>div { width: 100%; }.platform-admin-nav { width: 100%; }.platform-admin-nav a { flex: 1; text-align: center; }
  .platform-client-summary,.platform-detail-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }.platform-client-filter,.platform-company-control-form { grid-template-columns: 1fr; }.platform-client-filter .secondary { grid-column: auto; }.platform-company-card>header,.platform-billing-history>header,.platform-client-users>header,.platform-company-detail-head,.platform-detail-actions { align-items: stretch; flex-direction: column; }.platform-company-statuses { justify-content: flex-start; }.platform-company-facts,.platform-provider-data { grid-template-columns: 1fr; }.platform-company-facts>div { border-right: 0; }.platform-company-actions { align-items: stretch; flex-direction: column; }.platform-company-actions .button,.platform-company-actions button,.platform-company-actions form { width: 100%; }.platform-detail-actions { justify-content: flex-start; }.platform-client-data-card dl>div { grid-template-columns: 1fr; }
  .register-form .span-2 { grid-column: auto; }.user-access-card { grid-template-columns: 36px minmax(0,1fr); }.user-access-card>.tag,.user-access-card>a { grid-column: 2; justify-self: start; }
}

/* Site público */
.public-body { color: #172033; background: #fff; }
.public-main { display: block; min-height: 100vh; margin: 0; background: #fff; }
.public-main>.content { display: block; width: 100%; max-width: none; margin: 0; padding: 0; }
.landing-page { overflow: hidden; background: #fff; }
.landing-main { width: 100%; min-height: 0; margin-left: 0; }
.landing-header { position: sticky; top: 0; z-index: 40; display: flex; align-items: center; justify-content: space-between; gap: 28px; height: 78px; padding: 0 max(28px,calc((100vw - 1240px)/2)); border-bottom: 1px solid rgba(222,226,232,.9); background: rgba(255,255,255,.94); backdrop-filter: blur(16px); }
.landing-brand { display: flex; width: 178px; text-decoration: none; }
.landing-brand img { display: block; width: 100%; }
.landing-nav { display: flex; align-items: center; gap: 30px; margin-left: auto; }
.landing-nav a,.landing-login { color: #4d5869; font-size: 13px; font-weight: 700; text-decoration: none; }
.landing-nav a:hover,.landing-login:hover { color: #9a6800; }
.landing-header-actions { display: flex; align-items: center; gap: 18px; }
.landing-small-cta { min-height: 39px; padding: 8px 15px; border-radius: 9px; font-size: 12px; box-shadow: none; }
.landing-hero { position: relative; display: grid; grid-template-columns: minmax(0,.9fr) minmax(520px,1.1fr); align-items: center; gap: 70px; min-height: 690px; padding: 76px max(32px,calc((100vw - 1240px)/2)) 88px; background: radial-gradient(circle at 91% 10%,rgba(14,165,233,.18),transparent 30%), linear-gradient(145deg,#fff 20%,#fffaf0 100%); }
.landing-hero::before { content: ""; position: absolute; left: -140px; bottom: -230px; width: 440px; height: 440px; border: 80px solid rgba(14,165,233,.07); border-radius: 50%; }
.landing-hero-copy { position: relative; z-index: 2; }
.landing-pill { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; border: 1px solid #f0dc9f; border-radius: 999px; color: #76540a; background: #fff9e4; font-size: 10px; font-weight: 850; letter-spacing: .45px; text-transform: uppercase; }
.landing-pill i { width: 8px; height: 8px; border-radius: 50%; background: #0ea5e9; box-shadow: 0 0 0 4px rgba(244,118,33,.12); }
.landing-hero h1 { max-width: 650px; margin: 22px 0 22px; color: #172033; font-size: clamp(44px,5.3vw,72px); line-height: .98; letter-spacing: -3.1px; }
.landing-hero h1 em { color: #b87800; font-style: normal; }
.landing-hero-copy>p { max-width: 600px; margin: 0; color: #606c7d; font-size: 18px; line-height: 1.7; }
.landing-hero-actions { display: flex; align-items: center; gap: 22px; margin-top: 31px; }
.landing-primary-cta { min-height: 52px; padding: 13px 22px; }
.landing-text-link { color: #253149; font-size: 13px; font-weight: 800; text-decoration: none; }
.landing-text-link:hover { color: #9a6800; }
.landing-trust-row { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 27px; color: #5d6878; font-size: 11px; font-weight: 700; }
.landing-trust-row span::first-letter { color: #159a62; }
.landing-product-preview { position: relative; z-index: 2; overflow: hidden; border: 1px solid #dce2e9; border-radius: 18px; background: #fff; box-shadow: 0 35px 85px rgba(30,40,58,.2),0 8px 20px rgba(30,40,58,.08); transform: perspective(1400px) rotateY(-3deg) rotateX(1deg); }
.preview-window-bar { display: flex; align-items: center; gap: 6px; height: 37px; padding: 0 14px; border-bottom: 1px solid #e6eaf0; color: #8791a0; background: #fafbfc; font-size: 8px; }
.preview-window-bar i { width: 7px; height: 7px; border-radius: 50%; background: #d8dde5; }.preview-window-bar i:first-child { background:#ed6a5e; }.preview-window-bar i:nth-child(2) { background:#f4bf4f; }.preview-window-bar i:nth-child(3) { background:#61c454; }.preview-window-bar span { margin-left: 7px; }
.preview-layout { display: grid; grid-template-columns: 65px 1fr; min-height: 410px; }
.preview-layout>aside { display: flex; align-items: center; flex-direction: column; gap: 15px; padding: 19px 13px; background: #151c28; }
.preview-layout>aside b { display: grid; place-items: center; width: 32px; height: 32px; margin-bottom: 10px; border-radius: 8px; color: #382700; background: #0ea5e9; font-size: 10px; }
.preview-layout>aside span { width: 28px; height: 6px; border-radius: 5px; background: #344052; }.preview-layout>aside span.on { background: #0ea5e9; }
.preview-content { padding: 24px; background: #f3f6fa; }
.preview-title { display: flex; align-items: flex-start; justify-content: space-between; }.preview-title>span { display: grid; gap: 4px; }.preview-title small { color: #b97800; font-size: 6px; font-weight: 900; letter-spacing: 1px; }.preview-title strong { font-size: 18px; }.preview-title>i { padding: 5px 7px; border-radius: 999px; color: #168257; background: #eaf8f2; font-size: 6px; font-style: normal; font-weight: 800; }
.preview-kpis { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin: 21px 0 11px; }.preview-kpis>div { display: grid; gap: 7px; padding: 13px; border: 1px solid #e1e6ed; border-radius: 9px; background: #fff; }.preview-kpis small { color: #788494; font-size: 7px; }.preview-kpis strong { font-size: 12px; }.preview-kpis .positive { color: #159a62; }.preview-kpis .negative { color: #dc3f4d; }
.preview-chart { padding: 15px; border: 1px solid #e1e6ed; border-radius: 10px; background: #fff; }.preview-chart-head { display: flex; align-items: center; justify-content: space-between; }.preview-chart-head strong { font-size: 9px; }.preview-chart-head span { color: #8993a3; font-size: 6px; }
.preview-bars { display: flex; align-items: flex-end; gap: 13px; height: 116px; margin-top: 14px; padding: 0 8px; border-bottom: 1px solid #dbe1e9; background: repeating-linear-gradient(to bottom,#fff,#fff 37px,#edf0f4 38px); }.preview-bars i { flex: 1; min-height: 12px; border-radius: 4px 4px 0 0; background: linear-gradient(#ffd963,#f0ae00); }
.preview-assistant { display: grid; grid-template-columns: 30px 1fr 25px; align-items: center; gap: 9px; margin-top: 11px; padding: 10px; border: 1px solid #f0d47d; border-radius: 9px; background: #fffaf0; }.preview-assistant>b { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; color: #fff; background: #0ea5e9; font-size: 8px; }.preview-assistant>span { display: grid; gap: 2px; }.preview-assistant strong { font-size: 8px; }.preview-assistant small { color: #738094; font-size: 6px; }.preview-assistant>i { color: #b87800; font-style: normal; font-weight: 900; }
.landing-proof-strip { display: flex; align-items: center; justify-content: center; gap: 28px; min-height: 76px; padding: 20px; color: #6d7786; background: #171e2b; font-size: 10px; font-weight: 900; letter-spacing: 1.8px; }.landing-proof-strip i { width: 4px; height: 4px; border-radius: 50%; background: #0ea5e9; }
.landing-section { padding: 104px max(32px,calc((100vw - 1240px)/2)); }
.landing-section-heading { max-width: 730px; margin: 0 auto 48px; text-align: center; }.landing-section-heading h2,.landing-ai-copy h2,.landing-pricing h2 { margin: 9px 0 13px; color: #172033; font-size: clamp(34px,4vw,48px); line-height: 1.08; letter-spacing: -1.7px; }.landing-section-heading p,.landing-pricing>div>p { margin: 0; color: #697486; font-size: 16px; line-height: 1.65; }
.landing-feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.landing-feature { position: relative; min-height: 235px; padding: 28px; border: 1px solid #e3e7ed; border-radius: 16px; background: #fff; transition: transform .18s ease,box-shadow .18s ease,border-color .18s ease; }.landing-feature:hover { transform: translateY(-4px); border-color: #eccb6d; box-shadow: 0 18px 38px rgba(28,38,56,.09); }.landing-feature.featured { border-color: #e9c75d; background: linear-gradient(145deg,#fffdf7,#fff7dc); }
.feature-icon { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 12px; color: #3f2b00; background: #0ea5e9; font-size: 12px; font-weight: 900; }.landing-feature h3 { margin: 21px 0 10px; font-size: 18px; }.landing-feature p { margin: 0; color: #6a7586; font-size: 13px; line-height: 1.7; }.landing-feature>b { display: block; margin-top: 18px; color: #9a6800; font-size: 11px; }
.landing-ai-section { display: grid; grid-template-columns: minmax(0,.85fr) minmax(500px,1.15fr); align-items: center; gap: 90px; padding: 105px max(32px,calc((100vw - 1120px)/2)); color: #fff; background: radial-gradient(circle at 80% 10%,rgba(14,165,233,.14),transparent 30%),#171e2b; }
.landing-ai-copy h2 { color: #fff; }.landing-ai-copy>p { color: #b8c1ce; font-size: 16px; line-height: 1.7; }.landing-ai-copy ul { display: grid; gap: 18px; margin: 29px 0 0; padding: 0; list-style: none; }.landing-ai-copy li { display: flex; align-items: flex-start; gap: 12px; }.landing-ai-copy li>i { display: grid; place-items: center; flex: 0 0 auto; width: 25px; height: 25px; border-radius: 8px; color: #3b2a00; background: #0ea5e9; font-style: normal; font-weight: 900; }.landing-ai-copy li>span { display: grid; gap: 3px; color: #9da9b9; font-size: 12px; }.landing-ai-copy li strong { color: #fff; font-size: 13px; }
.landing-chat-card { overflow: hidden; border: 1px solid #3b4555; border-radius: 18px; background: #f7f8fa; box-shadow: 0 30px 70px rgba(0,0,0,.26); }.landing-chat-card>header { display: grid; grid-template-columns: 40px 1fr auto; align-items: center; gap: 10px; padding: 16px 18px; color: #172033; background: #fff; border-bottom: 1px solid #e3e7ed; }.landing-chat-card>header>b { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; color: #fff; background: #0ea5e9; font-size: 11px; }.landing-chat-card>header>span { display: grid; gap: 2px; }.landing-chat-card>header strong { font-size: 12px; }.landing-chat-card>header small { color: #7d8899; font-size: 8px; }.landing-chat-card>header>i { padding: 6px 9px; border-radius: 999px; color: #18825a; background: #eaf8f2; font-size: 8px; font-style: normal; font-weight: 800; }
.landing-chat-messages { display: flex; flex-direction: column; gap: 17px; min-height: 340px; padding: 25px; }.landing-chat-messages p { margin: 0; }.user-message { align-self: flex-end; max-width: 72%; padding: 13px 15px; border-radius: 14px 14px 4px 14px; color: #fff; background: #253149; font-size: 11px; line-height: 1.55; }.ai-message { display: grid; grid-template-columns: 30px minmax(0,1fr); align-items: flex-start; gap: 9px; max-width: 84%; }.ai-message>b { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; color: #3b2a00; background: #0ea5e9; font-size: 8px; }.ai-message p { padding: 13px 15px; border: 1px solid #e0e5ec; border-radius: 4px 14px 14px; color: #4d596c; background: #fff; font-size: 11px; line-height: 1.6; }.ai-message strong { color: #172033; }
.landing-chat-card>footer { display: flex; align-items: center; justify-content: space-between; margin: 0 15px 15px; padding: 10px 10px 10px 15px; border: 1px solid #d8dee7; border-radius: 12px; color: #909aab; background: #fff; font-size: 9px; }.landing-chat-card>footer b { display: grid; place-items: center; width: 29px; height: 29px; border-radius: 8px; color: #fff; background: #0ea5e9; }
.landing-security { background: #f5f7fa; }.landing-security-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; max-width: 1080px; margin: 0 auto; }.landing-security-grid article { padding: 30px; border: 1px solid #e0e5ec; border-radius: 16px; background: #fff; }.landing-security-grid article>span { color: #bd8000; font-size: 10px; font-weight: 900; letter-spacing: 1px; }.landing-security-grid h3 { margin: 18px 0 9px; font-size: 17px; }.landing-security-grid p { margin: 0; color: #6c7788; font-size: 12px; line-height: 1.7; }
.landing-pricing { display: grid; grid-template-columns: minmax(0,1fr) 390px; align-items: center; gap: 90px; padding: 105px max(32px,calc((100vw - 1080px)/2)); background: #fff; }.landing-pricing>div { max-width: 570px; }.landing-price-card { padding: 34px; border: 1px solid #e5c45a; border-radius: 20px; background: linear-gradient(145deg,#fffdf6,#fff7d9); box-shadow: 0 24px 55px rgba(55,42,10,.12); }.landing-price-card>span { color: #936400; font-size: 11px; font-weight: 900; letter-spacing: .6px; text-transform: uppercase; }.landing-price-card>strong { display: block; margin: 13px 0 23px; color: #172033; font-size: 33px; }.landing-price-card>strong small { margin-left: 5px; color: #6d7787; font-size: 10px; }.landing-price-card ul { display: grid; gap: 12px; margin: 0 0 25px; padding: 0; list-style: none; }.landing-price-card li { color: #505c6e; font-size: 12px; font-weight: 700; }.landing-price-card li::before { content: "✓"; margin-right: 9px; color: #138b59; font-weight: 900; }.landing-price-card .button { width: 100%; justify-content: space-between; }.landing-price-card>small { display: block; margin-top: 12px; color: #7b8492; text-align: center; font-size: 9px; }
.landing-regular-price { margin-top: 13px; color: #7b6223; font-size: 12px; font-weight: 800; }.landing-regular-price s { color: #a1261d; font-size: 17px; font-weight: 900; }.landing-regular-price+strong { margin-top: 3px; }
.landing-footer { display: grid; grid-template-columns: 185px 1fr auto; align-items: center; gap: 28px; padding: 40px max(32px,calc((100vw - 1240px)/2)); color: #9da8b7; background: #171e2b; }.landing-footer img { width: 175px; padding: 7px 10px; border-radius: 9px; background: #fff; }.landing-footer p { margin: 0; font-size: 11px; }.landing-footer div { display: flex; gap: 18px; }.landing-footer a { color: #fff; font-size: 11px; font-weight: 700; text-decoration: none; }.landing-footer>small { grid-column: 1/-1; padding-top: 18px; border-top: 1px solid #2d3746; font-size: 9px; }
.auth-back-link,.register-back-link { display: inline-block; margin-bottom: 19px; color: #7a6750; font-size: 10px; font-weight: 800; text-decoration: none; }.register-back-link { color: #614600; }

@media (max-width: 1050px) {
  .landing-nav { display: none; }
  .landing-hero { grid-template-columns: 1fr; gap: 55px; text-align: center; }
  .landing-hero-copy { display: grid; justify-items: center; }.landing-trust-row,.landing-hero-actions { justify-content: center; }
  .landing-product-preview { width: min(780px,100%); margin: 0 auto; transform: none; text-align: left; }
  .landing-feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .landing-ai-section { grid-template-columns: 1fr; gap: 55px; }.landing-ai-copy { max-width: 700px; }
}
@media (max-width: 720px) {
  .landing-header { height: 68px; padding: 0 16px; }.landing-brand { width: 142px; }.landing-header-actions { gap: 10px; }.landing-login { font-size: 11px; }.landing-small-cta { padding: 7px 10px; font-size: 10px; }
  .landing-hero { min-height: 0; padding: 64px 18px; }.landing-hero h1 { font-size: 42px; letter-spacing: -2px; }.landing-hero-copy>p { font-size: 15px; }.landing-hero-actions { align-items: stretch; flex-direction: column; width: 100%; }.landing-primary-cta { width: 100%; }.landing-trust-row { gap: 10px; font-size: 9px; }
  .preview-layout { grid-template-columns: 45px 1fr; min-height: 340px; }.preview-layout>aside { padding: 14px 8px; }.preview-content { padding: 14px; }.preview-kpis { grid-template-columns: 1fr; }.preview-kpis>div:nth-child(n+2) { display: none; }.preview-bars { height: 90px; gap: 7px; }.preview-assistant { display: none; }
  .landing-proof-strip { flex-wrap: wrap; gap: 14px; }.landing-proof-strip i { display: none; }
  .landing-section,.landing-ai-section,.landing-pricing { padding: 75px 18px; }.landing-section-heading { margin-bottom: 34px; }.landing-section-heading h2,.landing-ai-copy h2,.landing-pricing h2 { font-size: 34px; }
  .landing-feature-grid,.landing-security-grid { grid-template-columns: 1fr; }.landing-feature { min-height: 0; }
  .landing-ai-section { gap: 40px; }.landing-chat-messages { min-height: 300px; padding: 16px; }.user-message,.ai-message { max-width: 94%; }
  .landing-pricing { grid-template-columns: 1fr; gap: 35px; }.landing-price-card { padding: 26px 22px; }
  .landing-footer { grid-template-columns: 1fr; justify-items: start; padding: 36px 20px; }.landing-footer>small { grid-column: auto; width: 100%; }
}

/* Apresentação industrial */
.industrial-landing { --industrial-dark:#111821; --industrial-deep:#0b1018; --industrial-steel:#637083; --industrial-yellow:#0ea5e9; --industrial-orange:#0ea5e9; }
.industrial-landing .landing-header { height: 74px; border-bottom-color:#dfe3e8; box-shadow:0 8px 28px rgba(14,21,31,.06); }
.industrial-landing .landing-nav { gap:25px; }
.industrial-landing .landing-nav a { color:#354052; font-size:12px; }
.industrial-landing .landing-small-cta { color:#211800; background:var(--industrial-yellow); }
.landing-industrial-hero { isolation:isolate; grid-template-columns:minmax(0,.92fr) minmax(480px,.82fr); gap:70px; min-height:750px; padding-top:88px; padding-bottom:92px; color:#fff; background-image:linear-gradient(90deg,rgba(7,12,19,.97) 0%,rgba(7,12,19,.84) 40%,rgba(7,12,19,.3) 72%,rgba(7,12,19,.16) 100%),url('/static/industrial-hero.webp'); background-position:center; background-size:cover; }
.landing-industrial-hero::before { z-index:-1; inset:0; width:auto; height:auto; border:0; border-radius:0; background:linear-gradient(180deg,rgba(255,255,255,0) 70%,rgba(7,12,19,.72)); }
.landing-industrial-hero::after { content:""; position:absolute; z-index:-1; inset:auto 0 0; height:7px; background:linear-gradient(90deg,var(--industrial-yellow) 0 38%,var(--industrial-orange) 38% 51%,transparent 51%); }
.landing-industrial-hero .landing-pill { border-color:rgba(14,165,233,.44); color:#ffe59a; background:rgba(14,165,233,.11); backdrop-filter:blur(8px); }
.landing-industrial-hero .landing-pill i { background:var(--industrial-yellow); box-shadow:0 0 0 4px rgba(14,165,233,.14); }
.landing-industrial-hero h1 { max-width:710px; margin-top:25px; color:#fff; font-size:clamp(48px,5.3vw,76px); line-height:.98; letter-spacing:-3.6px; text-shadow:0 2px 24px rgba(0,0,0,.22); }
.landing-industrial-hero h1 em { display:block; margin-top:10px; color:var(--industrial-yellow); }
.landing-industrial-hero .landing-hero-copy>p { max-width:650px; color:#c8d0db; font-size:17px; line-height:1.72; }
.landing-industrial-hero .landing-text-link { color:#fff; }
.landing-industrial-hero .landing-text-link:hover { color:var(--industrial-yellow); }
.landing-industrial-hero .landing-trust-row { color:#d3dae3; }
.landing-industrial-hero .landing-trust-row span::first-letter { color:var(--industrial-yellow); }
.landing-industrial-hero .landing-primary-cta { color:#241a00; background:var(--industrial-yellow); box-shadow:0 13px 32px rgba(14,165,233,.22); }
.landing-industrial-hero .landing-primary-cta:hover { background:#ffd24d; }
.industrial-live-card { position:relative; z-index:2; overflow:hidden; align-self:center; border:1px solid rgba(255,255,255,.28); border-radius:20px; color:#182131; background:rgba(248,250,252,.94); box-shadow:0 36px 90px rgba(0,0,0,.38); backdrop-filter:blur(18px); }
.industrial-live-card>header { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 22px; border-bottom:1px solid #dce2e9; background:#fff; }
.industrial-live-card>header>span { display:grid; gap:3px; }.industrial-live-card>header small { color:#8a95a5; font-size:7px; font-weight:900; letter-spacing:1.15px; }.industrial-live-card>header strong { font-size:13px; }.industrial-live-card>header>i { padding:7px 9px; border-radius:999px; color:#8b5d00; background:#fff4ca; font-size:7px; font-style:normal; font-weight:900; letter-spacing:.6px; }
.industrial-order-name { padding:22px 22px 19px; }.industrial-order-name>span { color:#bd7c00; font-size:8px; font-weight:900; letter-spacing:.8px; text-transform:uppercase; }.industrial-order-name h2 { margin:7px 0 19px; color:#141c29; font-size:22px; letter-spacing:-.5px; }.industrial-order-name>div { display:flex; justify-content:space-between; color:#778395; font-size:8px; font-weight:750; }.industrial-order-name>div strong { color:#141c29; font-size:10px; }.industrial-order-name>b { display:block; overflow:hidden; height:7px; margin-top:8px; border-radius:99px; background:#e5e9ee; }.industrial-order-name>b i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#f2a900,var(--industrial-yellow)); }
.industrial-kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:0 22px 18px; }.industrial-kpis article { display:grid; gap:5px; padding:13px; border:1px solid #dfe4ea; border-radius:11px; background:#fff; }.industrial-kpis small { color:#8591a2; font-size:7px; }.industrial-kpis strong { color:#172033; font-size:12px; }.industrial-kpis span { color:#8c97a6; font-size:6px; }.industrial-kpis .industrial-ok { color:#11845a; font-weight:850; }
.industrial-stage-list { display:grid; padding:2px 22px 21px; }.industrial-stage-list>span { display:grid; grid-template-columns:25px 1fr auto; align-items:center; gap:9px; min-height:43px; border-top:1px solid #e1e5eb; }.industrial-stage-list i { display:grid; place-items:center; width:21px; height:21px; border-radius:7px; color:#7d8796; background:#edf0f4; font-size:7px; font-style:normal; font-weight:900; }.industrial-stage-list b { font-size:8px; }.industrial-stage-list small { color:#909aa8; font-size:6px; }.industrial-stage-list .done i { color:#fff; background:#159a62; }.industrial-stage-list .active i { color:#3d2b00; background:var(--industrial-yellow); }.industrial-stage-list .active small { color:#aa7000; font-weight:850; }
.industrial-proof-strip { min-height:70px; color:#d2d8e1; background:#080d14; }
.industrial-proof-strip span { font-size:9px; letter-spacing:1.45px; }.industrial-proof-strip i { background:var(--industrial-yellow); }
.industrial-audience { background:#f4f6f8; }
.industrial-audience-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.industrial-audience-grid article { position:relative; overflow:hidden; min-height:330px; padding:31px; border:1px solid #dde2e8; border-radius:16px; background:#fff; box-shadow:0 14px 35px rgba(22,31,45,.04); }
.industrial-audience-grid article::after { content:""; position:absolute; right:-38px; bottom:-38px; width:110px; height:110px; border:19px solid #edf0f3; transform:rotate(45deg); }
.industrial-audience-grid article.featured { color:#fff; border-color:#1c2634; background:linear-gradient(145deg,#1a2431,#0f1620); box-shadow:0 24px 50px rgba(19,27,39,.18); }
.industrial-audience-grid article.featured::after { border-color:rgba(14,165,233,.13); }.industrial-audience-grid article>span { color:#bd8000; font-size:9px; font-weight:950; letter-spacing:1px; }.industrial-audience-grid article.featured>span { color:var(--industrial-yellow); }.industrial-audience-grid h3 { margin:22px 0 12px; font-size:21px; letter-spacing:-.4px; }.industrial-audience-grid p { position:relative; z-index:1; margin:0; color:#667284; font-size:13px; line-height:1.7; }.industrial-audience-grid article.featured p { color:#b6c0cd; }.industrial-audience-grid ul { position:relative; z-index:1; display:grid; gap:10px; margin:25px 0 0; padding:0; list-style:none; }.industrial-audience-grid li { color:#455164; font-size:10px; font-weight:800; }.industrial-audience-grid article.featured li { color:#eef2f7; }.industrial-audience-grid li::before { content:""; display:inline-block; width:6px; height:6px; margin-right:9px; border-radius:2px; background:var(--industrial-yellow); }
.landing-production-section { display:grid; grid-template-columns:minmax(0,.84fr) minmax(540px,1.16fr); align-items:center; gap:85px; padding:110px max(32px,calc((100vw - 1180px)/2)); color:#fff; background:radial-gradient(circle at 10% 20%,rgba(14,165,233,.1),transparent 24%),linear-gradient(145deg,#111924,#090e15); }
.landing-production-copy .eyebrow { color:var(--industrial-yellow); }.landing-production-copy h2 { margin:13px 0 20px; color:#fff; font-size:clamp(38px,4vw,52px); line-height:1.05; letter-spacing:-2px; }.landing-production-copy>p { margin:0; color:#aeb8c6; font-size:15px; line-height:1.75; }
.production-benefits { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:30px; }.production-benefits span { display:grid; grid-template-columns:28px 1fr; align-items:center; gap:9px; min-height:52px; padding:10px 12px; border:1px solid #2b3747; border-radius:10px; background:rgba(255,255,255,.035); }.production-benefits i { display:grid; place-items:center; width:26px; height:26px; border-radius:7px; color:#3b2a00; background:var(--industrial-yellow); font-size:7px; font-style:normal; font-weight:950; }.production-benefits b { font-size:9px; line-height:1.4; }
.production-flow { overflow:hidden; border:1px solid #dfe4ea; border-radius:18px; color:#172033; background:#f7f9fb; box-shadow:0 32px 70px rgba(0,0,0,.25); }.production-flow>header { display:grid; gap:5px; padding:20px 23px; border-bottom:1px solid #e0e5eb; background:#fff; }.production-flow>header span { color:#b57600; font-size:7px; font-weight:950; letter-spacing:1px; }.production-flow>header strong { font-size:15px; }.production-flow ol { margin:0; padding:8px 23px 17px; list-style:none; }.production-flow li { position:relative; display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:12px; min-height:66px; border-bottom:1px solid #e2e6ec; }.production-flow li:last-child { border:0; }.production-flow li>i { display:grid; place-items:center; width:30px; height:30px; border-radius:9px; color:#453100; background:var(--industrial-yellow); font-size:9px; font-style:normal; font-weight:950; }.production-flow li>span { display:grid; gap:4px; }.production-flow li b { font-size:10px; }.production-flow li small { color:#7e8999; font-size:7px; }.production-flow li>em { padding:5px 7px; border-radius:6px; color:#647083; background:#e9edf2; font-size:6px; font-style:normal; font-weight:900; letter-spacing:.45px; }
.industrial-solutions { background:#fff; }.industrial-feature-grid .landing-feature { border-radius:13px; border-top:3px solid #dce1e7; }.industrial-feature-grid .production-feature { color:#fff; border-color:var(--industrial-yellow); background:linear-gradient(145deg,#1a2431,#101721); box-shadow:0 20px 42px rgba(19,27,39,.17); }.industrial-feature-grid .production-feature p { color:#bac3cf; }.industrial-feature-grid .production-feature b { color:var(--industrial-yellow); }
.industrial-ai-section { background:radial-gradient(circle at 74% 10%,rgba(14,165,233,.12),transparent 26%),#111821; }
.industrial-pricing { background:linear-gradient(145deg,#fff 35%,#fff8df 100%); }.pricing-proof { display:flex; flex-wrap:wrap; gap:10px 18px; margin-top:25px; }.pricing-proof span { color:#4b5769; font-size:10px; font-weight:800; }.pricing-proof span::first-letter { color:#159a62; }
.industrial-landing .landing-price-card { border-width:2px; box-shadow:0 30px 70px rgba(67,48,5,.15); }
.industrial-landing .landing-footer { background:#080d14; }

@media (max-width:1050px) {
  .landing-industrial-hero { grid-template-columns:1fr; background-position:68% center; text-align:left; }
  .landing-industrial-hero .landing-hero-copy { justify-items:start; max-width:760px; }.landing-industrial-hero .landing-hero-actions,.landing-industrial-hero .landing-trust-row { justify-content:flex-start; }
  .industrial-live-card { width:min(680px,100%); }
  .landing-production-section { grid-template-columns:1fr; gap:48px; }.landing-production-copy { max-width:760px; }
}
@media (max-width:820px) {
  .industrial-audience-grid { grid-template-columns:1fr; }.industrial-audience-grid article { min-height:0; }
  .industrial-kpis { grid-template-columns:1fr; }.industrial-kpis article { grid-template-columns:1fr auto; }.industrial-kpis article span { grid-column:1/-1; }
}
@media (max-width:720px) {
  .industrial-landing .landing-header { height:66px; }.industrial-landing .landing-brand { width:132px; }
  .landing-industrial-hero { min-height:0; padding:56px 18px 64px; background-position:70% center; }.landing-industrial-hero h1 { font-size:43px; letter-spacing:-2.2px; }.landing-industrial-hero .landing-hero-copy>p { font-size:14px; }.landing-industrial-hero .landing-hero-actions { width:100%; }.landing-industrial-hero .landing-text-link { padding:8px 0; text-align:center; }
  .industrial-live-card>header,.industrial-order-name { padding-right:16px; padding-left:16px; }.industrial-kpis,.industrial-stage-list { padding-right:16px; padding-left:16px; }.industrial-order-name h2 { font-size:18px; }
  .industrial-proof-strip span { width:46%; text-align:center; }.industrial-proof-strip i { display:none; }
  .landing-production-section { padding:76px 18px; }.landing-production-copy h2 { font-size:36px; letter-spacing:-1.3px; }.production-benefits { grid-template-columns:1fr; }
  .production-flow>header { padding:18px; }.production-flow ol { padding-right:16px; padding-left:16px; }.production-flow li { grid-template-columns:32px minmax(0,1fr); }.production-flow li>em { display:none; }
  .pricing-proof { display:grid; }
}

/* Remodelação 2026: navegação lateral e painel executivo limpo */
.app-body {
  --app-sidebar-width: 248px;
  --app-shell-bg: #f4f6f8;
  --app-sidebar-bg: #171a20;
  --app-sidebar-muted: #9aa3b2;
  --app-card-border: #e2e7ec;
  color: #172234;
  background: var(--app-shell-bg);
  font-size: 13px;
}
.app-body .sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 70;
  width: var(--app-sidebar-width);
  height: 100vh;
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 0;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(180deg,#191d24 0%,#12151a 100%);
  border-right: 1px solid rgba(255,255,255,.06);
  box-shadow: 12px 0 30px rgba(16,24,40,.08);
  transform: none!important;
}
.app-body .brand {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 82px;
  width: 100%;
  height: 82px;
  padding: 14px 20px;
  background: #fff;
  border: 0;
  border-bottom: 1px solid #e7eaee;
}
.app-body .sidebar-brand-logo { width: 174px; max-width: 100%; border: 0; border-radius: 0; box-shadow: none; }
.app-body .main-nav {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: stretch;
  gap: 3px;
  min-width: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 18px 13px 20px;
  scrollbar-width: thin;
  scrollbar-color: #424854 transparent;
}
.app-body .nav-label {
  display: block;
  margin: 10px 11px 6px;
  color: #687180;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 1.35px;
}
.app-body .nav-label:first-child { margin-top: 0; }
.app-body .nav-label-spaced { margin-top: 18px; }
.app-body .nav-link {
  display: grid;
  grid-template-columns: 32px minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 5px 10px;
  border: 0;
  border-radius: 10px;
  color: #c7cdd6;
  background: transparent;
  font-size: 12px;
  font-weight: 650;
  white-space: nowrap;
  transition: color .16s ease, background .16s ease, transform .16s ease;
}
.app-body .nav-link:hover { color: #fff; background: rgba(255,255,255,.07); transform: translateX(2px); }
.app-body .nav-link.active {
  color: #2a2109;
  border: 0;
  background: linear-gradient(135deg,#0ea5e9,#ffd24d);
  box-shadow: 0 7px 18px rgba(14,165,233,.13);
}
.app-body .nav-link.active::before { display: none; }
.app-body .nav-icon {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border-radius: 8px;
  color: #f1c33a;
  background: rgba(14,165,233,.1);
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
}
.app-body .nav-link.active .nav-icon { color: #342700; background: rgba(255,255,255,.43); }
.app-body .assistant-nav > small,.app-body .nav-count {
  display: inline-flex;
  align-items: center;
  min-height: 19px;
  padding: 2px 6px;
  border-radius: 99px;
  color: #5d4500;
  background: #ffe38a;
  font-size: 8px;
  font-weight: 900;
}
.app-body .annual-dashboard-label { display: inline; }
.app-body .sidebar-footer {
  display: grid;
  flex: 0 0 auto;
  gap: 10px;
  margin: 0;
  padding: 15px 16px 17px;
  border: 0;
  border-top: 1px solid rgba(255,255,255,.08);
  background: rgba(0,0,0,.12);
}
.app-body .sidebar-company { display: grid; gap: 3px; margin: 0; padding: 0; border: 0; }
.app-body .sidebar-company strong { overflow: hidden; color: #fff; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.app-body .sidebar-company small { color: #7f8998; font-size: 9px; }
.app-body .sidebar-user { display: none; }
.app-body .logout-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-width: 0;
  padding: 8px 10px;
  border-radius: 8px;
  color: #aeb6c2;
  font-size: 11px;
  text-decoration: none;
}
.app-body .logout-link:hover { color: #fff; background: rgba(255,255,255,.07); }
.app-body main { min-height: 100vh; margin-left: var(--app-sidebar-width); background: var(--app-shell-bg); }
.app-body .topbar {
  position: sticky;
  top: 0;
  z-index: 45;
  height: 64px;
  padding: 0 28px;
  border: 0;
  border-bottom: 1px solid #e1e5e9;
  background: rgba(255,255,255,.94);
  backdrop-filter: blur(12px);
}
.app-body .topbar-title { display: grid; gap: 2px; }
.app-body .topbar-title strong { color: #253449; font-size: 13px; font-weight: 800; }
.app-body .topbar-title small { color: #8a96a5; font-size: 9px; font-weight: 650; letter-spacing: .2px; }
.app-body .topbar-right { gap: 16px; color: #5e6b7a; font-size: 11px; }
.app-body .system-status { padding: 6px 9px; border-radius: 99px; }
.app-body .menu-toggle { display: none!important; }
.app-body .content { width: 100%; max-width: 1760px; margin: 0 auto; padding: 24px 28px 42px; }
.app-body .page-head { gap: 20px; margin-bottom: 18px; }
.app-body .page-head h1 { margin-top: 3px; font-size: 27px; letter-spacing: -.65px; }
.app-body .page-head p { margin-top: 5px; color: #718092; font-size: 12px; }
.app-body .eyebrow { color: #b68100; font-size: 8px; letter-spacing: 1.2px; }
.app-body .card,.app-body .panel,.app-body .table-wrap,.app-body .filters,.app-body .form-grid {
  border-color: var(--app-card-border);
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(25,38,58,.035);
}
.app-body .panel { padding: 20px; }
.app-body .table-wrap { border-radius: 12px; }
.app-body .filters { border-radius: 12px; }

/* Painel executivo */
.dashboard-shell { display: flex; flex-direction: column; gap: 14px; }
.dashboard-shell > .page-head { order: 1; margin-bottom: 0; }
.dashboard-shell > .dashboard-kpis { order: 2; }
.dashboard-shell > .executive-health { order: 3; }
.dashboard-shell > .today-due-panel { order: 4; }
.dashboard-shell > .grid-3,.dashboard-shell > .profile-home-card { order: 5; }
.app-body .dashboard-kpis { grid-template-columns: repeat(6,minmax(0,1fr)); gap: 12px; }
.app-body .dashboard-kpis .card {
  min-height: 104px;
  padding: 17px 17px 15px;
  border: 1px solid var(--app-card-border);
  border-radius: 14px;
  background: linear-gradient(145deg,#fff,#fbfcfd);
  transition: border-color .16s ease, box-shadow .16s ease;
}
.app-body .dashboard-kpis .card::before { inset: 15px auto 15px 0; width: 4px; border-radius: 0 5px 5px 0; }
.app-body .dashboard-kpis .card::after {
  content: "";
  position: absolute;
  right: -16px;
  bottom: -22px;
  width: 72px;
  height: 72px;
  border: 12px solid rgba(32,48,68,.025);
  border-radius: 50%;
}
.app-body .dashboard-kpis .card:hover { border-color: #d4dae1; box-shadow: 0 9px 22px rgba(25,38,58,.06); transform: none; }
.app-body .dashboard-kpis .card span { color: #718092; font-size: 10px; font-weight: 750; }
.app-body .dashboard-kpis .card b { margin-top: 12px; color: #19283c; font-size: 24px; letter-spacing: -.7px; }
.app-body .dashboard-kpis .card-receivable b { color: #12825a; }
.app-body .dashboard-kpis .card-payable b { color: #c93645; }
.app-body .executive-health {
  min-height: 0;
  margin-top: 0;
  padding: 23px;
  background: #fff;
}
.executive-health > .financial-health-head,
.executive-health > .health-content,
.executive-health > .health-legend { display: none; }
.executive-health-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 19px; }
.executive-health-head h2 { margin: 4px 0 0!important; color: #1d2b3d; font-size: 20px!important; }
.executive-health-head p { margin: 5px 0 0; color: #778495; font-size: 11px; }
.executive-health-grid { display: grid; grid-template-columns: minmax(280px,.78fr) minmax(580px,1.72fr); gap: 16px; }
.executive-balance-card {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  min-height: 224px;
  overflow: hidden;
  padding: 26px;
  border: 1px solid #e2e7ec;
  border-radius: 15px;
  background: linear-gradient(145deg,#f9fafb,#fff);
}
.executive-balance-card::after {
  content: "";
  position: absolute;
  right: -70px;
  bottom: -90px;
  width: 220px;
  height: 220px;
  border: 38px solid rgba(31,48,69,.035);
  border-radius: 50%;
}
.executive-balance-card.positive { border-left: 5px solid #159a62; }
.executive-balance-card.warning { border-left: 5px solid #d99a1d; }
.executive-balance-card.negative { border-left: 5px solid #dc3f4d; }
.executive-card-label { color: #758294; font-size: 9px; font-weight: 900; letter-spacing: 1.15px; }
.executive-balance-card > strong { position: relative; z-index: 1; display: block; margin: 10px 0 5px; font-size: clamp(28px,2.6vw,39px); line-height: 1; letter-spacing: -1.4px; }
.executive-balance-card > p { position: relative; z-index: 1; margin: 0; color: #6d7a8b; font-size: 11px; line-height: 1.45; }
.executive-balance-flow { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 13px; width: 100%; margin-top: 24px; padding-top: 17px; border-top: 1px solid #e7eaee; }
.executive-balance-flow > span { display: grid; gap: 4px; }
.executive-balance-flow small { color: #8894a2; font-size: 9px; }
.executive-balance-flow b { color: #27384d; font-size: 12px; }
.executive-balance-flow i { color: #a6aeb8; font-size: 18px; font-style: normal; }
.health-ring-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.health-ring-card {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  min-width: 0;
  min-height: 224px;
  padding: 20px 15px 16px;
  border: 1px solid #e2e7ec;
  border-radius: 15px;
  background: #fff;
  text-align: center;
}
.health-ring {
  --ring-color: #0ea5e9;
  position: relative;
  display: grid;
  flex: 0 0 auto;
  width: 112px;
  height: 112px;
  place-items: center;
  border-radius: 50%;
  background: conic-gradient(var(--ring-color) calc(var(--progress) * 1%),#edf0f3 0);
}
.health-ring::before { content: ""; position: absolute; inset: 10px; border-radius: 50%; background: #fff; box-shadow: inset 0 0 0 1px #eef1f4; }
.health-ring > span { position: relative; z-index: 1; display: grid; gap: 2px; }
.health-ring b { color: #1c2b3e; font-size: 22px; line-height: 1; letter-spacing: -.7px; }
.health-ring small { color: #8994a2; font-size: 8px; font-weight: 750; text-transform: uppercase; }
.ring-income { --ring-color: #19a36c; }
.ring-expense { --ring-color: #dc4553; }
.ring-coverage { --ring-color: #e1a900; }
.health-ring-card > div:last-child { display: grid; gap: 5px; margin-top: 13px; }
.health-ring-card strong { color: #2c3b4e; font-size: 11px; }
.health-ring-card p { max-width: 180px; margin: 0; color: #86919f; font-size: 9px; line-height: 1.4; }
.app-body .today-due-panel { margin-top: 0; padding: 18px 20px; }
.app-body .today-due-heading { margin-bottom: 12px; }
.app-body .today-due-heading h2 { font-size: 16px; }
.app-body .today-due-card { border-radius: 11px; box-shadow: none; }
.app-body .today-due-card header { padding: 12px 14px; }
.app-body .today-due-list { max-height: 122px; }
.app-body .grid-3 { gap: 12px; margin-top: 0; }
.app-body .grid-3 .panel { padding: 17px; }
.app-body .grid-3 .panel h2 { color: #304054; font-size: 13px; }

@media (max-width: 1450px) {
  .app-body .dashboard-kpis { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .executive-health-grid { grid-template-columns: minmax(270px,.7fr) minmax(520px,1.3fr); }
  .health-ring { width: 98px; height: 98px; }
  .health-ring b { font-size: 19px; }
}
@media (max-width: 1120px) {
  .executive-health-grid { grid-template-columns: 1fr; }
  .executive-balance-card { min-height: 190px; }
  .health-ring-card { min-height: 205px; }
}
@media (max-width: 900px) {
  .app-body { --app-sidebar-width: 248px; }
  .app-body .sidebar { transform: translateX(-102%)!important; transition: transform .22s ease; }
  .app-body.menu-open .sidebar { transform: translateX(0)!important; }
  .app-body .sidebar-backdrop { display: none!important; }
  .app-body.menu-open .sidebar-backdrop { position: fixed; inset: 0; z-index: 65; display: block!important; background: rgba(13,20,30,.5); backdrop-filter: blur(2px); }
  .app-body main { margin-left: 0; }
  .app-body .topbar { height: 58px; padding: 0 15px; }
  .app-body .menu-toggle { display: grid!important; place-items: center; width: 38px; height: 38px; min-height: 38px; padding: 0; border: 1px solid #dce1e6; border-radius: 9px; color: #26364a; background: #fff; }
  .app-body .content { padding: 18px 15px 34px; }
  .app-body .form-grid { grid-template-columns: repeat(2,minmax(150px,1fr)); }
  .app-body .finance-summary-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 680px) {
  .app-body .topbar-right { display: none; }
  .app-body .page-head { align-items: stretch; flex-direction: column; }
  .app-body .page-head > :last-child { margin-left: 0; }
  .app-body .page-head h1 { font-size: 23px; }
  .app-body .month-filter { width: 100%; overflow-x: auto; padding-bottom: 3px; }
  .app-body .month-picker { min-width: 235px; }
  .app-body .dashboard-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  .app-body .dashboard-kpis .card { min-height: 91px; padding: 14px; }
  .app-body .dashboard-kpis .card b { margin-top: 9px; font-size: 19px; }
  .executive-health { padding: 16px!important; }
  .executive-health-head { align-items: flex-start; }
  .executive-health-grid { grid-template-columns: 1fr; }
  .health-ring-grid { grid-template-columns: 1fr; }
  .health-ring-card { min-height: 0; flex-direction: row; justify-content: flex-start; gap: 16px; padding: 15px; text-align: left; }
  .health-ring { width: 86px; height: 86px; }
  .health-ring-card > div:last-child { margin-top: 0; }
  .health-ring-card p { max-width: none; }
  .app-body .today-due-grid,.app-body .grid-3,.app-body .form-grid { grid-template-columns: minmax(0,1fr); }
  .app-body .grid-3 > * { min-width: 0; }
}

/* Estoque comercial de produtos */
.app-body .sales-stock-summary,.app-body .stock-product-summary { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; }
.app-body .sales-stock-form { grid-template-columns:repeat(4,minmax(150px,1fr)); }
.app-body .sales-stock-table { min-width:1420px; }
.app-body .sales-stock-table th:nth-child(2),.app-body .sales-stock-table td:nth-child(2) { min-width:210px; }
.app-body .sales-stock-table th:last-child,.app-body .sales-stock-table td:last-child { min-width:210px; }
.app-body .sales-stock-movement-table { min-width:1050px; }
.stock-row-attention td { background:#fffaf0!important; }
.stock-movement-panel { margin-top:12px; }
.stock-move-card { margin-bottom:12px; border-left:4px solid #0ea5e9!important; }
.stock-move-card .section-head { margin-bottom:15px; }
.app-body .stock-movement-form { grid-template-columns:repeat(4,minmax(150px,1fr)); }
.stock-edit-details { margin-bottom:12px!important; }
@media (max-width:1450px) {
  .app-body .sales-stock-summary,.app-body .stock-product-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:1050px) {
  .app-body .sales-stock-form,.app-body .stock-movement-form { grid-template-columns:repeat(2,minmax(150px,1fr)); }
}
@media (max-width:680px) {
  .app-body .sales-stock-summary,.app-body .stock-product-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .app-body .sales-stock-form,.app-body .stock-movement-form { grid-template-columns:minmax(0,1fr); }
}

/* Demonstração pública isolada */
.demo-body { min-height:100vh; color:#172235; background:#edf1f5; }
.demo-main,.demo-main>.content { display:block; width:100%; min-height:100vh; margin:0; padding:0; }
.demo-app { --demo-yellow:#0ea5e9; --demo-dark:#142033; --demo-muted:#718096; min-height:100vh; padding-bottom:76px; background:#edf1f5; }
.demo-header { position:sticky; top:0; z-index:50; display:flex; align-items:center; gap:24px; min-height:70px; padding:9px clamp(18px,3vw,48px); border-bottom:3px solid var(--demo-yellow); background:#fff; box-shadow:0 4px 18px rgba(22,34,53,.08); }
.demo-brand { display:flex; width:156px; }.demo-brand img { width:100%; object-fit:contain; }
.demo-header-message { display:flex; align-items:center; gap:9px; margin-right:auto; }.demo-header-message>span:last-child { display:grid; gap:2px; }.demo-header-message strong { font-size:11px; }.demo-header-message small { color:#78869a; font-size:8px; }.demo-live-dot { width:9px; height:9px; border-radius:99px; background:#18a36b; box-shadow:0 0 0 5px #dff6ed; }
.demo-header-actions { display:flex; align-items:center; gap:11px; }.demo-timer { padding:8px 10px; border-radius:8px; color:#5e6d82; background:#f0f3f7; font-size:9px; }.demo-timer b { color:#192a40; }.demo-create-account { min-height:36px; padding:8px 14px; color:#302300!important; background:var(--demo-yellow)!important; }
.demo-safety-banner { display:flex; align-items:center; gap:11px; min-height:42px; padding:7px clamp(18px,3vw,48px); color:#614b0b; background:#fff3c4; font-size:9px; }.demo-safety-banner strong { color:#4b3700; }.demo-safety-banner span { margin-right:auto; }.demo-safety-banner button { border:0; color:#674b00; background:transparent; font-size:8px; font-weight:900; cursor:pointer; text-decoration:underline; }
.demo-layout { display:grid; grid-template-columns:220px minmax(0,1fr); min-height:calc(100vh - 112px); }
.demo-sidebar { display:flex; flex-direction:column; gap:14px; padding:20px 14px; color:#fff; background:#142033; }.demo-company { display:grid; grid-template-columns:38px minmax(0,1fr); align-items:center; gap:9px; padding:10px; border:1px solid #2d3a4e; border-radius:10px; background:#1c2a3e; }.demo-company>span { display:grid; place-items:center; width:36px; height:36px; border-radius:9px; color:#342600; background:var(--demo-yellow); font-size:10px; font-weight:950; }.demo-company>div { display:grid; gap:2px; min-width:0; }.demo-company strong { overflow:hidden; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }.demo-company small { color:#93a0b2; font-size:7px; }
.demo-sidebar nav { display:grid; gap:4px; }.demo-sidebar nav button { display:grid; grid-template-columns:30px 1fr; align-items:center; gap:7px; width:100%; min-height:42px; padding:6px 9px; border:0; border-radius:8px; color:#bdc6d3; background:transparent; font-size:9px; font-weight:800; text-align:left; cursor:pointer; }.demo-sidebar nav button:hover,.demo-sidebar nav button.active { color:#2e2200; background:var(--demo-yellow); }.demo-sidebar nav i { display:grid; place-items:center; width:27px; height:27px; border-radius:7px; color:#e4e9ef; background:#2a384c; font-size:7px; font-style:normal; font-weight:900; }.demo-sidebar nav button.active i { color:#2e2200; background:rgba(255,255,255,.38); }
.demo-sidebar-help { margin-top:auto; padding:13px; border:1px solid #344258; border-radius:10px; background:#1b293d; }.demo-sidebar-help strong { font-size:9px; }.demo-sidebar-help p { margin:5px 0 10px; color:#9ca9ba; font-size:8px; line-height:1.5; }.demo-sidebar-help a { color:#ffd54d; font-size:8px; font-weight:850; text-decoration:none; }
.demo-workspace { min-width:0; padding:24px clamp(18px,2.6vw,42px) 45px; }.demo-section { display:none; }.demo-section.active { display:block; animation:demoReveal .18s ease-out; }@keyframes demoReveal { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:none; } }
.demo-page-title { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:15px; }.demo-page-title>div>span { color:#c48200; font-size:7px; font-weight:950; letter-spacing:1.25px; }.demo-page-title h1 { margin:4px 0; font-size:24px; letter-spacing:-.5px; }.demo-page-title p { margin:0; color:#6f7d91; font-size:9px; }.demo-page-title button { min-height:36px; padding:8px 12px; border:0; border-radius:7px; font-size:8px; font-weight:900; cursor:pointer; }.demo-tour-button { color:#425168; background:#fff; box-shadow:0 0 0 1px #d8dee7; }.demo-add-button { color:#322500; background:var(--demo-yellow); }
.demo-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:12px; }.demo-kpi-grid article { min-height:95px; padding:14px 15px; border:1px solid #dce2e9; border-radius:10px; background:#fff; box-shadow:0 4px 12px rgba(25,39,58,.035); }.demo-kpi-grid small,.demo-kpi-grid span { display:block; color:#78869a; font-size:8px; }.demo-kpi-grid strong { display:block; margin:7px 0 5px; font-size:19px; }.demo-kpi-grid .demo-positive { color:#159163; font-weight:800; }.demo-kpi-grid.finance { grid-template-columns:repeat(3,minmax(0,1fr)); }
.demo-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr); gap:12px; }.demo-card,.demo-table-card { border:1px solid #dce2e9; border-radius:10px; background:#fff; box-shadow:0 4px 12px rgba(25,39,58,.035); }.demo-card>header { display:flex; align-items:center; justify-content:space-between; padding:14px 16px; border-bottom:1px solid #e4e8ee; }.demo-card>header span { color:#c48200; font-size:7px; font-weight:950; letter-spacing:.8px; }.demo-card h2 { margin:4px 0 0; font-size:13px; }.demo-card header button { border:0; color:#9b6800; background:transparent; font-size:8px; font-weight:850; cursor:pointer; }
.demo-order-progress { display:grid; grid-template-columns:1fr auto; gap:8px; padding:13px 16px; border-bottom:1px solid #e8ebf0; }.demo-order-progress:last-child { border:0; }.demo-order-progress>div { display:grid; gap:3px; }.demo-order-progress strong { font-size:9px; }.demo-order-progress small { color:#818da0; font-size:7px; }.demo-order-progress>b { font-size:9px; }.demo-order-progress>span { grid-column:1/-1; height:6px; overflow:hidden; border-radius:99px; background:#e7ebf0; }.demo-order-progress>span i { display:block; height:100%; border-radius:inherit; background:#21a776; }.demo-order-progress.warning>span i { background:#f0a800; }
.demo-alert-list ul { margin:0; padding:4px 15px; list-style:none; }.demo-alert-list li { display:grid; grid-template-columns:28px 1fr; align-items:center; gap:9px; min-height:62px; border-bottom:1px solid #e8ebf0; }.demo-alert-list li:last-child { border:0; }.demo-alert-list li>i { display:grid; place-items:center; width:26px; height:26px; border-radius:8px; color:#704e00; background:#fff0b8; font-size:7px; font-style:normal; font-weight:950; }.demo-alert-list li>span { display:grid; gap:3px; }.demo-alert-list li strong { font-size:8px; }.demo-alert-list li small { color:#8490a1; font-size:7px; }
.demo-inline-form { display:grid; grid-template-columns:repeat(3,minmax(150px,1fr)) auto; align-items:end; gap:9px; margin-bottom:12px; padding:14px; border:1px solid #e0c35b; border-radius:10px; background:#fff9df; }.demo-inline-form.finance { grid-template-columns:150px minmax(180px,1fr) 160px 160px auto; }.demo-inline-form[hidden] { display:none; }.demo-inline-form label { display:grid; gap:5px; color:#59677b; font-size:8px; font-weight:800; }.demo-inline-form input,.demo-inline-form select { width:100%; min-height:36px; padding:7px 9px; border:1px solid #ccd5e0; border-radius:7px; color:#203148; background:#fff; font:inherit; }.demo-inline-form>div { display:flex; gap:6px; }.demo-inline-form button { min-height:36px; padding:7px 10px; border:0; border-radius:7px; color:#352700; background:var(--demo-yellow); font-size:8px; font-weight:900; cursor:pointer; }.demo-inline-form .demo-cancel { color:#59677b; background:#e8ecf1; }
.demo-table-card { overflow-x:auto; }.demo-table-card table { width:100%; min-width:770px; border-collapse:collapse; font-size:8px; }.demo-table-card th { padding:10px 11px; color:#657388; background:#dfe4ea; text-align:left; }.demo-table-card td { padding:11px; border-top:1px solid #dfe4ea; }.demo-table-card tbody tr:nth-child(even) td { background:#f4f6f8; }.demo-status,.demo-flow { display:inline-flex; padding:5px 7px; border-radius:5px; font-size:7px; font-style:normal; font-weight:900; }.demo-status.in-progress { color:#604500; background:#fff0b8; }.demo-status.attention { color:#a12636; background:#ffe2e6; }.demo-status.pending { color:#4c6078; background:#e9eef4; }.demo-status.paid { color:#126f50; background:#dcf5ea; }.demo-flow.in { color:#08754e; background:#ddf5eb; }.demo-flow.out { color:#b22c3c; background:#ffe1e5; }.demo-mini-progress { display:inline-block; width:42px; height:5px; margin-right:6px; overflow:hidden; border-radius:99px; background:#dce2e9; }.demo-mini-progress i { display:block; height:100%; background:#1aa26f; }
.demo-detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:12px; }.demo-cost-bars { display:grid; gap:14px; padding:18px; }.demo-cost-bars>span { display:grid; grid-template-columns:110px 1fr 85px; align-items:center; gap:9px; }.demo-cost-bars b,.demo-cost-bars strong { font-size:8px; }.demo-cost-bars strong { text-align:right; }.demo-cost-bars i { height:7px; overflow:hidden; border-radius:99px; background:#e5e9ee; }.demo-cost-bars em { display:block; height:100%; border-radius:inherit; background:var(--demo-yellow); }.demo-team { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; padding:18px; }.demo-team span { display:grid; justify-items:center; gap:5px; }.demo-team i { display:grid; place-items:center; width:34px; height:34px; border-radius:99px; color:#fff; background:#26374d; font-size:8px; font-style:normal; font-weight:900; }.demo-team b { font-size:8px; }.demo-team small { color:#7c899a; font-size:7px; }
.demo-inventory-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:12px; }.demo-inventory-summary article { display:flex; align-items:center; gap:11px; padding:14px; border:1px solid #dce2e9; border-radius:10px; background:#fff; }.demo-inventory-summary i { display:grid; place-items:center; width:40px; height:40px; border-radius:10px; color:#4b3700; background:#ffedaa; font-size:15px; font-style:normal; font-weight:950; }.demo-inventory-summary span { display:grid; gap:3px; }.demo-inventory-summary strong { font-size:9px; }.demo-inventory-summary small { color:#7b889a; font-size:7px; }
.demo-assistant-shell { display:grid; grid-template-columns:250px minmax(0,1fr); min-height:570px; overflow:hidden; border:1px solid #dce2e9; border-radius:12px; background:#fff; box-shadow:0 8px 24px rgba(24,37,55,.06); }.demo-assistant-shell>aside { display:flex; flex-direction:column; gap:7px; padding:18px; border-right:1px solid #e2e7ed; background:#f7f9fb; }.demo-assistant-shell>aside strong { margin-bottom:7px; font-size:9px; }.demo-assistant-shell>aside button { padding:10px; border:1px solid #dce3eb; border-radius:8px; color:#35475e; background:#fff; font-size:8px; font-weight:800; text-align:left; cursor:pointer; }.demo-assistant-shell>aside button:hover { border-color:#e0b522; background:#fff9df; }.demo-chat { display:grid; grid-template-rows:1fr auto auto; min-width:0; }.demo-chat-messages { display:flex; flex-direction:column; gap:10px; max-height:460px; overflow-y:auto; padding:22px; background:#f3f6fa; }.demo-ai-message { display:grid; grid-template-columns:30px minmax(0,620px); gap:9px; align-self:flex-start; }.demo-ai-message i { display:grid; place-items:center; width:28px; height:28px; border-radius:8px; color:#382900; background:var(--demo-yellow); font-size:7px; font-style:normal; font-weight:950; }.demo-ai-message p,.demo-user-message { margin:0; padding:11px 13px; border:1px solid #dde4eb; border-radius:4px 13px 13px; color:#3e4e63; background:#fff; font-size:9px; line-height:1.55; }.demo-user-message { align-self:flex-end; max-width:70%; border:0; border-radius:13px 13px 4px; color:#fff; background:#22344c; }.demo-chat form { display:grid; grid-template-columns:1fr auto; gap:7px; padding:12px 15px; border-top:1px solid #e1e6ed; }.demo-chat input { min-height:42px; padding:9px 12px; border:1px solid #cfd7e1; border-radius:9px; font-size:9px; }.demo-chat form button { padding:8px 16px; border:0; border-radius:8px; color:#382900; background:var(--demo-yellow); font-size:8px; font-weight:950; cursor:pointer; }.demo-chat>small { padding:0 15px 12px; color:#8591a2; font-size:7px; }
.demo-toast { position:fixed; z-index:70; right:22px; bottom:82px; max-width:360px; padding:12px 15px; border-radius:9px; color:#fff; background:#192b42; box-shadow:0 15px 40px rgba(14,25,39,.25); font-size:9px; font-weight:800; opacity:0; transform:translateY(10px); pointer-events:none; transition:.2s ease; }.demo-toast.show { opacity:1; transform:none; }
.demo-bottom-cta { position:fixed; z-index:45; right:0; bottom:0; left:0; display:flex; align-items:center; justify-content:center; gap:28px; min-height:64px; padding:9px 20px; color:#fff; background:#111b29; box-shadow:0 -8px 25px rgba(13,22,34,.18); }.demo-bottom-cta>span { display:grid; gap:2px; }.demo-bottom-cta strong { font-size:10px; }.demo-bottom-cta small { color:#aab5c3; font-size:8px; }.demo-bottom-cta a { padding:10px 16px; border-radius:8px; color:#342600; background:var(--demo-yellow); font-size:9px; font-weight:950; text-decoration:none; }
.landing-demo-link { color:#8a6000!important; font-size:11px!important; font-weight:850!important; text-decoration:none; }.landing-demo-cta { color:#ffd452!important; }.landing-price-demo { display:block; margin-top:13px; color:#765300; font-size:9px; font-weight:850; text-align:center; text-decoration:none; }.landing-price-demo:hover { text-decoration:underline; }
.live-demo-banner { display:flex; align-items:center; gap:12px; margin-bottom:12px; padding:11px 13px; border:1px solid #e2b000; border-radius:9px; color:#493700; background:linear-gradient(90deg,#fff3bd,#fff9df); box-shadow:0 3px 10px rgba(90,66,0,.08); }
.live-demo-badge { display:grid; place-items:center; min-width:45px; min-height:30px; padding:5px 8px; border-radius:7px; color:#fff; background:#8a6500; font-size:9px; font-weight:950; letter-spacing:.8px; }
.live-demo-banner>span:nth-child(2) { display:grid; gap:2px; min-width:0; margin-right:auto; }.live-demo-banner strong { font-size:10px; }.live-demo-banner small { color:#725b19; font-size:8px; line-height:1.4; }
.live-demo-banner form { margin:0; }.live-demo-banner button,.live-demo-banner>a { display:inline-flex; align-items:center; justify-content:center; min-height:32px; padding:7px 10px; border:1px solid #c79b00; border-radius:7px; color:#5a4300; background:#fff; font-size:8px; font-weight:900; text-decoration:none; white-space:nowrap; cursor:pointer; }
.live-demo-banner>a { border-color:#0ea5e9; color:#302400; background:#0ea5e9; }.system-status.demo { color:#725300; background:#fff6cf; }.system-status.demo i { background:#d79e00; box-shadow:0 0 0 3px #ffe58c; }

@media (max-width:1050px) {
  .demo-layout { grid-template-columns:76px minmax(0,1fr); }.demo-company { grid-template-columns:1fr; justify-items:center; }.demo-company>div,.demo-sidebar nav span,.demo-sidebar-help { display:none; }.demo-sidebar nav button { grid-template-columns:1fr; justify-items:center; padding:6px; }.demo-dashboard-grid { grid-template-columns:1fr; }.demo-inline-form,.demo-inline-form.finance { grid-template-columns:repeat(2,minmax(0,1fr)); }.demo-inline-form>div { justify-content:flex-end; }.demo-assistant-shell { grid-template-columns:210px minmax(0,1fr); }
}
@media (max-width:720px) {
  .demo-app { padding-bottom:84px; }.demo-header { flex-wrap:wrap; gap:8px 14px; padding:8px 14px; }.demo-brand { width:126px; }.demo-header-message { order:3; width:100%; }.demo-header-actions { margin-left:auto; }.demo-timer { display:none; }.demo-create-account { min-height:32px; padding:7px 9px; font-size:8px; }.demo-safety-banner { align-items:flex-start; flex-wrap:wrap; padding:9px 14px; }.demo-safety-banner span { width:calc(100% - 110px); line-height:1.4; }
  .demo-layout { display:block; }.demo-sidebar { position:sticky; top:107px; z-index:40; display:block; padding:7px 9px; overflow-x:auto; }.demo-company,.demo-sidebar-help { display:none; }.demo-sidebar nav { display:flex; width:max-content; }.demo-sidebar nav button { display:flex; grid-template-columns:none; width:auto; min-height:35px; padding:4px 9px; }.demo-sidebar nav i { width:25px; height:25px; }.demo-sidebar nav span { display:inline; }
  .demo-workspace { padding:18px 12px 35px; }.demo-page-title { align-items:stretch; flex-direction:column; }.demo-page-title button { align-self:flex-start; }.demo-page-title h1 { font-size:21px; }.demo-kpi-grid,.demo-kpi-grid.finance,.demo-inventory-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }.demo-detail-grid { grid-template-columns:1fr; }.demo-inline-form,.demo-inline-form.finance { grid-template-columns:1fr; }.demo-inline-form>div { justify-content:stretch; }.demo-inline-form button { flex:1; }.demo-assistant-shell { grid-template-columns:1fr; min-height:0; }.demo-assistant-shell>aside { display:grid; grid-template-columns:1fr 1fr; border-right:0; border-bottom:1px solid #e2e7ed; }.demo-assistant-shell>aside strong { grid-column:1/-1; }.demo-chat-messages { min-height:300px; }.demo-bottom-cta { justify-content:space-between; gap:10px; }.demo-bottom-cta small { display:none; }.landing-demo-link { display:none; }
  .live-demo-banner { align-items:stretch; flex-wrap:wrap; }.live-demo-banner>span:nth-child(2) { flex:1 1 calc(100% - 60px); }.live-demo-banner form,.live-demo-banner>a { flex:1; }.live-demo-banner button,.live-demo-banner>a { width:100%; }
}
/* Fluxo comercial integrado: contatos, vendas, compras e produto acabado. */
.summary-grid{display:grid;gap:12px;margin-bottom:16px}
.summary-grid>article{position:relative;min-width:0;padding:16px 18px;overflow:hidden;border:1px solid #dce3ec;border-radius:13px;background:#fff;box-shadow:0 7px 20px rgba(24,36,58,.045)}
.summary-grid>article::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#0ea5e9}
.summary-grid>article:nth-child(2)::before{background:#159a62}.summary-grid>article:nth-child(3)::before{background:#df8b15}.summary-grid>article:nth-child(4)::before{background:#7a5bd4}
.summary-grid>article span,.summary-grid>article small{display:block;color:#68768a}.summary-grid>article span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.35px}.summary-grid>article b{display:block;margin:7px 0 5px;overflow:hidden;color:#19283b;font-size:21px;line-height:1.15;text-overflow:ellipsis}.summary-grid>article small{font-size:10px;line-height:1.4}
.filter-bar{display:flex;align-items:flex-end;gap:9px;margin-bottom:14px;padding:12px;border:1px solid #dce3ec;border-radius:13px;background:#fff;box-shadow:0 7px 20px rgba(24,36,58,.04)}
.filter-bar label{display:grid;flex:0 1 220px;gap:5px;color:#526177;font-size:10px;font-weight:800}.filter-bar .filter-grow{flex:1 1 360px}.filter-bar input,.filter-bar select{min-height:39px}.filter-bar button,.filter-bar>.button{min-height:39px;white-space:nowrap}
.form-section-card{border:1px solid #d8dee8;border-radius:14px;background:#fff;padding:18px;box-shadow:0 8px 24px rgba(24,36,58,.045)}
.form-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}
.form-section-title h2{margin:2px 0 3px;font-size:18px}.form-section-title p{margin:0;color:#607089;font-size:13px}.form-section-title>a{font-weight:800;color:#9a5b00;white-space:nowrap}
.compact-grid{margin:0}.commercial-document-form{align-items:end}.commercial-document-form textarea{min-height:84px}
.line-items-card{padding:0;overflow:hidden}.line-items-card .form-section-title{padding:18px 18px 0}.line-items-card .table-wrap{border-top:1px solid #e3e8ef}
.line-items-table{min-width:1060px}.line-items-table th{white-space:nowrap}.line-items-table td{vertical-align:middle;padding:8px 6px}.line-items-table input,.line-items-table select{min-width:84px;margin:0}.line-items-table td:first-child select{min-width:240px}.line-items-table td:nth-child(2) input{min-width:230px}.line-items-table output{font-weight:800;white-space:nowrap;color:#18243a}
.line-empty-add{margin:13px 18px 18px}.document-total-field{border:1px solid #e4b632;border-radius:12px;background:#fff9e8;padding:14px}.document-total-field>span{display:block;color:#7f5900;font-size:12px;font-weight:800;text-transform:uppercase}.document-total-field output{display:block;margin-top:6px;font-size:24px;font-weight:900;color:#18243a}
.contact-summary-grid,.purchase-summary-grid,.purchase-detail-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.contact-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.purchase-workflow-panel{margin-bottom:16px}.purchase-workflow-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.purchase-workflow-actions form{display:flex;gap:8px;align-items:flex-end;padding:12px;border:1px solid #dce2ea;border-radius:12px;background:#f8fafc}.purchase-workflow-actions label{min-width:210px}.purchase-workflow-actions button{height:40px}
.purchase-receive-actions{padding-top:14px;justify-content:flex-end}.receive-quantity-input{width:120px;min-width:90px}.production-stock-panel{margin:16px 0}.production-stock-success{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border-radius:12px;background:#eefaf4;border:1px solid #bde7cf}.production-stock-success div{display:flex;flex-direction:column;gap:4px}.production-stock-success span{color:#426250}.production-stock-entry-form{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(190px,.7fr) auto;align-items:end;gap:12px;padding:14px;background:#fff9e8;border:1px solid #efd276;border-radius:12px}.production-stock-entry-form button{height:42px}.muted-copy{color:#607089}.company-profile-panel{margin-bottom:16px}
.company-report-branding{display:flex;align-items:center;gap:18px;padding:16px;border:1px solid #ead58b;border-radius:16px;background:linear-gradient(135deg,#fffdf5,#fff8df)}.company-report-logo-preview{width:180px;height:92px;flex:0 0 180px;display:flex;align-items:center;justify-content:center;padding:10px;border:1px dashed #c7af59;border-radius:14px;background:#fff}.company-report-logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.company-report-logo-preview span{text-align:center;font-weight:900;line-height:1.25;color:#9d842d;letter-spacing:.08em}.company-report-branding p{margin:5px 0 10px;color:#637188}.compact-file-label{display:inline-flex;align-items:center;padding:9px 12px;border-radius:9px;background:#17253a;color:#fff;font-weight:800;cursor:pointer}.compact-file-label input{position:absolute;width:1px;height:1px;opacity:0}.company-logo-remove{display:block;margin-top:9px;color:#8b2b2b;font-size:11px}.company-logo-remove input{width:auto;margin-right:5px}@media(max-width:680px){.company-report-branding{align-items:flex-start;flex-direction:column}.company-report-logo-preview{width:100%;flex-basis:92px}}
@media(max-width:1100px){.contact-summary-grid,.purchase-summary-grid,.purchase-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-bar{flex-wrap:wrap}.filter-bar label{flex:1 1 210px}.production-stock-entry-form{grid-template-columns:1fr 1fr}.production-stock-entry-form button{grid-column:1/-1}.purchase-workflow-actions form{width:100%}}
@media(max-width:720px){.contact-summary-grid,.purchase-summary-grid,.purchase-detail-summary{grid-template-columns:1fr}.filter-bar{align-items:stretch;flex-direction:column}.filter-bar label,.filter-bar .filter-grow{flex:auto}.form-section-title,.production-stock-success{flex-direction:column}.production-stock-entry-form{grid-template-columns:1fr}.purchase-workflow-actions form{display:grid;grid-template-columns:1fr}.purchase-workflow-actions label{min-width:0}}

/* Central moderna de serviços */
.service-page-head { margin-bottom: 12px; }
.service-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
  padding: 11px 13px!important;
  border-radius: 12px!important;
}
.service-month-nav,.service-search { display: flex; align-items: center; gap: 7px; }
.service-month-nav { flex: 0 0 auto; }
.service-month-nav .month-picker { min-width: 230px; }
.service-month-nav .calendar-button { width: 68px; }
.service-search { flex: 1; justify-content: flex-end; }
.service-search input { width: min(390px,42vw); }
.service-search select { width: 180px; }
.service-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
  margin-bottom: 12px;
}
.service-kpi-card {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 15px 16px;
  border: 1px solid #dfe5eb;
  border-radius: 13px;
  background: linear-gradient(145deg,#fff,#fbfcfd);
  box-shadow: 0 6px 20px rgba(30,45,62,.055);
}
.service-kpi-icon {
  display: grid;
  place-items: center;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  color: #9a6b00;
  background: #fff2bd;
  font-size: 21px;
  font-weight: 900;
}
.service-kpi-icon.active { color: #075e3a; background: #dcf7e9; }
.service-kpi-icon.team { color: #234b73; background: #e6f0fa; font-size: 16px; }
.service-kpi-card > div { min-width: 0; }
.service-kpi-card small { display: block; color: #6b7787; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .45px; }
.service-kpi-card strong { display: block; margin: 2px 0; color: #15283b; font-size: 25px; line-height: 1; }
.service-kpi-card p { margin: 4px 0 0; overflow: hidden; color: #708091; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.service-kpi-progress { gap: 13px; }
.service-progress-ring {
  --progress: 0;
  position: relative;
  display: grid;
  place-items: center;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: conic-gradient(#159a62 calc(var(--progress) * 1%),#e8edf1 0);
}
.service-progress-ring::after { content:""; position:absolute; inset:6px; border-radius:50%; background:#fff; }
.service-progress-ring span { position: relative; z-index: 1; color: #087648; font-size: 10px; font-weight: 900; }
.service-overview-grid { display: grid; grid-template-columns: minmax(0,2.25fr) minmax(270px,.75fr); gap: 12px; align-items: start; }
.compact-calendar-panel,.service-team-panel,.compact-agenda-panel,.service-attention-panel { border-radius: 13px!important; }
.service-panel-title { margin-bottom: 10px; }
.service-panel-title h2 { margin: 0 0 3px!important; color: #172c40!important; font-size: 14px!important; }
.service-panel-title p { margin: 0; color: #778494; font-size: 9px; }
.compact-calendar-panel { padding: 13px!important; }
.compact-calendar-panel .service-calendar-scroll { border-radius: 9px; }
.service-calendar-compact { min-width: 620px; }
.service-calendar-compact .service-calendar-weekdays { background: #172a3d; }
.service-calendar-compact .service-calendar-weekdays div { padding: 6px; font-size: 8px; letter-spacing: .4px; text-transform: uppercase; }
.service-calendar-compact .service-calendar-day { min-height: 82px; padding: 4px; }
.service-calendar-compact .service-calendar-day > header { min-height: 17px; margin-bottom: 2px; }
.service-calendar-compact .service-calendar-day > header span { width: 19px; height: 19px; font-size: 9px; }
.service-calendar-compact .service-calendar-day > header b { font-size: 7px; }
.service-calendar-compact .service-calendar-day > header em { margin-left: auto; color: #647386; font-size: 8px; font-style: normal; font-weight: 850; }
.service-calendar-compact .service-calendar-events { gap: 2px; }
.service-calendar-compact .service-calendar-event { gap: 1px; padding: 3px 5px; border-left-width: 3px; border-radius: 5px; }
.service-calendar-compact .service-calendar-event strong { font-size: 8px; }
.service-calendar-compact .service-calendar-event span { font-size: 7px; }
.service-calendar-compact .service-calendar-event small { font-size: 6.5px; }
.service-calendar-more { padding-left: 4px; color: #667789; font-size: 7px; font-weight: 800; }
.service-team-panel { padding: 14px!important; }
.service-workload-list { display: grid; gap: 11px; max-height: 465px; overflow: auto; padding-right: 2px; }
.service-workload-item { display: grid; gap: 6px; }
.service-workload-person { display: grid; grid-template-columns: 30px minmax(0,1fr) auto; align-items: center; gap: 8px; }
.service-workload-person > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; color: #724f00; background: #fff2bd; font-size: 11px; font-weight: 900; }
.service-workload-person div { display: grid; min-width: 0; gap: 1px; }
.service-workload-person b { overflow: hidden; color: #26394b; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.service-workload-person small { overflow: hidden; color: #7b8794; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.service-workload-person strong { color: #9a6900; font-size: 13px; }
.service-workload-track { height: 6px; overflow: hidden; border-radius: 999px; background: #edf1f4; }
.service-workload-track i { display: block; height: 100%; min-width: 4px; border-radius: inherit; background: linear-gradient(90deg,#f4a900,#ffc928); }
.service-workload-meta { display: flex; flex-wrap: wrap; gap: 3px 8px; color: #6c7887; font-size: 7.5px; }
.service-workload-meta em { color: #b45309; font-style: normal; font-weight: 800; }
.service-agenda-grid { display: grid; grid-template-columns: minmax(0,2.25fr) minmax(270px,.75fr); gap: 12px; align-items: start; margin-top: 12px; }
.compact-agenda-panel,.service-attention-panel { margin: 0!important; padding: 14px!important; }
.service-timeline { display: grid; gap: 7px; max-height: 520px; overflow: auto; padding-right: 3px; }
.service-timeline-day { display: grid; grid-template-columns: 112px minmax(0,1fr); overflow: hidden; border: 1px solid #e0e5ea; border-radius: 9px; background: #fff; }
.service-timeline-date { display: grid; grid-template-columns: 34px minmax(0,1fr); align-content: center; gap: 1px 7px; padding: 8px 10px; background: #f5f7f9; }
.service-timeline-date strong { grid-row: 1/3; align-self: center; color: #172d41; font-size: 22px; text-align: center; }
.service-timeline-date span { align-self: end; overflow: hidden; color: #344b60; font-size: 9px; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.service-timeline-date small { color: #82909e; font-size: 7.5px; }
.service-timeline-events { display: grid; }
.service-timeline-events > a { display: grid; grid-template-columns: 4px minmax(0,1fr) auto; align-items: center; gap: 8px; min-width: 0; padding: 7px 9px; border-bottom: 1px solid #edf0f2; color: inherit; text-decoration: none; }
.service-timeline-events > a:last-child { border-bottom: 0; }
.service-timeline-events > a:hover { background: #fffaf0; }
.service-timeline-events > a > i { align-self: stretch; border-radius: 99px; background: #0ea5e9; }
.service-timeline-events > a > i.status-success { background: #159a62; }.service-timeline-events > a > i.status-danger { background:#dc3f4d; }.service-timeline-events > a > i.status-warning { background:#d98b13; }
.service-timeline-events > a > span:nth-child(2) { display: grid; min-width: 0; gap: 1px; }
.service-timeline-events b,.service-timeline-events small,.service-timeline-events em { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.service-timeline-events b { color: #273c50; font-size: 9px; }
.service-timeline-events small { color: #607284; font-size: 7.5px; }
.service-timeline-events em { color: #9a6900; font-size: 7px; font-style: normal; font-weight: 750; }
.service-attention-list { display: grid; gap: 6px; }
.service-attention-list a { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 9px; border: 1px solid #eadca9; border-radius: 8px; color: #33475a; background: #fffaf0; text-decoration: none; }
.service-attention-list a > span:first-child { display: grid; min-width: 0; gap: 2px; }.service-attention-list b { font-size: 9px; }.service-attention-list small { overflow: hidden; font-size: 7.5px; text-overflow: ellipsis; white-space: nowrap; }.service-attention-list a > span:last-child { flex: 0 0 auto; color: #9b6800; font-size: 8px; font-weight: 850; }
.service-good-state { display: grid; justify-items: center; gap: 4px; padding: 26px 10px; color: #617080; text-align: center; }.service-good-state span { display:grid; place-items:center; width:38px; height:38px; border-radius:50%; color:#087648; background:#dcf7e9; font-size:19px; }.service-good-state b { color:#264053; font-size:11px; }.service-good-state small { font-size:8px; }
.service-empty-compact { padding: 28px 12px!important; }
.service-orders-section { margin-top: 13px; }
.service-orders-table { border-radius: 11px!important; }
.service-table-team { display: flex; flex-wrap: wrap; gap: 4px; min-width: 150px; }
.service-table-team span { padding: 3px 6px; border-radius: 99px; color: #2d4a62; background: #eaf1f7; font-size: 7.5px; font-weight: 800; }
.service-table-team em { color: #a16207; font-size: 8px; font-style: normal; font-weight: 800; }
.icon-delete { display:grid; place-items:center; width:25px; height:25px; padding:0!important; border:0!important; color:#8b98a5!important; background:transparent!important; font-size:15px; box-shadow:none!important; }.icon-delete:hover { color:#c92c3d!important; background:#fff0f2!important; }

/* Editor das ordens de serviço */
.service-editor-form { display: grid; gap: 11px; max-width: 1220px; }
.service-form-card { padding: 17px!important; border-radius: 13px!important; box-shadow: 0 6px 20px rgba(30,45,62,.045)!important; }
.service-form-card-head { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.service-form-card-head > div { min-width: 0; }.service-form-card-head h2 { margin:0 0 2px!important; color:#192f43!important; font-size:14px!important; }.service-form-card-head p { margin:0; color:#788696; font-size:9px; }
.service-form-step { display:grid; place-items:center; flex:0 0 29px; width:29px; height:29px; border-radius:9px; color:#704e00; background:#fff1b6; font-size:10px; font-weight:900; }
.service-form-grid { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap:11px; }
.service-form-grid label,.service-schedule-fields label,.service-description-grid label { display:grid; gap:5px; color:#374b5e; font-size:9px; font-weight:800; }
.service-form-grid input,.service-form-grid select,.service-schedule-fields input,.service-description-grid textarea { width:100%; }
.service-schedule-fields { display:grid; grid-template-columns:minmax(180px,1fr) 28px minmax(180px,1fr) minmax(130px,.55fr); align-items:end; gap:10px; }
.service-schedule-fields label small { min-height:13px; color:#9a6900; font-size:8px; font-weight:800; }
.service-schedule-arrow { align-self:center; color:#a4aeba; font-size:19px; text-align:center; }
.service-duration-box { display:grid; align-content:center; min-height:62px; padding:9px 12px; border:1px solid #eadca9; border-radius:9px; background:#fffaf0; }.service-duration-box span,.service-duration-box small { color:#7c8793; font-size:7.5px; }.service-duration-box strong { color:#9a6900; font-size:21px; line-height:1.05; }
.service-team-head > .tag { margin-left:auto; }
.service-team-picker { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.service-technician-option { position:relative; display:grid; grid-template-columns:34px minmax(0,1fr) 22px; align-items:center; gap:8px; padding:9px; border:1px solid #dfe5ea; border-radius:10px; background:#fff; cursor:pointer; transition:.15s ease; }
.service-technician-option:hover { border-color:#e4b92d; background:#fffdf7; }.service-technician-option:has(input:checked) { border-color:#e0ad00; background:#fff9df; box-shadow:0 0 0 2px rgba(14,165,233,.12); }
.service-technician-option input { position:absolute; width:1px; height:1px; opacity:0; }
.service-technician-avatar { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; color:#fff; background:#1d3449; font-size:11px; font-weight:900; }
.service-technician-copy { display:grid; min-width:0; gap:2px; }.service-technician-copy b,.service-technician-copy small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.service-technician-copy b { color:#2c4154; font-size:9px; }.service-technician-copy small { color:#7d8996; font-size:7.5px; }
.service-technician-check { display:grid; place-items:center; width:20px; height:20px; border:1px solid #d7dfe5; border-radius:50%; color:transparent; background:#f5f7f8; font-size:9px; font-weight:900; }.service-technician-option input:checked ~ .service-technician-check { border-color:#dca600; color:#6f4d00; background:#0ea5e9; }
.service-description-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }.service-description-grid textarea { min-height:100px; resize:vertical; }
.service-form-actions { position:sticky; bottom:10px; z-index:8; display:flex; justify-content:flex-end; gap:8px; padding:10px; border:1px solid #dce3e8; border-radius:11px; background:rgba(255,255,255,.94); box-shadow:0 8px 28px rgba(28,44,60,.12); backdrop-filter:blur(8px); }

@media (max-width: 1180px) {
  .service-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .service-overview-grid,.service-agenda-grid { grid-template-columns:minmax(0,1fr); }
  .service-workload-list { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:none; }
  .service-team-picker { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 1450px) {
  .service-toolbar { align-items: stretch; flex-direction: column; }
  .service-search { justify-content: stretch; min-width:0; }
  .service-search input { flex:1; width:auto; min-width:180px; }
}
@media (max-width: 760px) {
  .service-page-head { align-items:stretch!important; }.service-page-head .button { text-align:center; }
  .service-month-nav { width:100%; }.service-month-nav .month-picker-form,.service-month-nav .month-picker { flex:1; min-width:0; }.service-month-nav .apply-month { display:none; }
  .service-search { display:grid; grid-template-columns:1fr; }.service-search input,.service-search select { width:100%; }.service-search .button { text-align:center; }
  .service-kpi-grid { grid-template-columns:1fr 1fr; gap:7px; }.service-kpi-card { padding:11px; }.service-kpi-icon { display:none; }.service-kpi-card strong { font-size:21px; }.service-kpi-card p { white-space:normal; }
  .compact-calendar-panel { display:none; }
  .service-workload-list { grid-template-columns:1fr; }
  .service-timeline { max-height:none; }.service-timeline-day { grid-template-columns:1fr; }.service-timeline-date { grid-template-columns:34px minmax(0,1fr); border-bottom:1px solid #e4e9ed; }.service-timeline-events > a { grid-template-columns:4px minmax(0,1fr); }.service-timeline-events > a > .tag { display:none; }
  .service-orders-table table,.service-orders-table tbody,.service-orders-table tr,.service-orders-table td { display:block; width:100%; }.service-orders-table thead { display:none; }.service-orders-table tr { padding:10px; border-bottom:1px solid #e1e6ea; }.service-orders-table td { padding:5px!important; border:0!important; }.service-orders-table .record-actions { margin-top:4px; }
  .service-form-grid,.service-team-picker,.service-description-grid { grid-template-columns:1fr; }
  .service-schedule-fields { grid-template-columns:1fr; }.service-schedule-arrow { display:none; }
  .service-form-card { padding:13px!important; }.service-form-card-head { align-items:flex-start; }.service-team-head { flex-wrap:wrap; }.service-team-head > .tag { margin-left:39px; }
  .service-form-actions { bottom:5px; }.service-form-actions .button,.service-form-actions button { flex:1; text-align:center; }
}
@media (max-width: 440px) {
  .service-kpi-grid { grid-template-columns:1fr; }
}

/* Painel executivo 360Â° */
.app-body .executive-dashboard-v2 { gap: 16px; }
.home-modules { padding:18px; border:1px solid #dce2e9; border-radius:12px; background:linear-gradient(135deg,#fffdf5 0,#fff 52%,#f7fafc 100%); box-shadow:0 5px 18px rgba(22,37,57,.04); }
.home-modules-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:15px; }
.home-modules-head h2 { margin:3px 0 0; color:#1c2b3e; font-size:16px; letter-spacing:-.25px; }
.home-modules-head p { margin:5px 0 0; color:#738092; font-size:10px; }
.home-modules-head > a { align-self:center; color:#9a6c00; font-size:9px; font-weight:850; text-decoration:none; white-space:nowrap; }
.home-module-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.home-module-card { display:flex; flex-direction:column; min-width:0; padding:15px; border:1px solid #e1e6eb; border-radius:10px; background:#fff; }
.home-module-card.is-unavailable { background:#fafbfc; }
.home-module-icon { display:grid; width:31px; height:31px; place-items:center; margin-bottom:12px; border-radius:9px; color:#806000; background:#fff1b9; font-size:12px; font-weight:900; }
.home-module-card.checklists .home-module-icon { color:#5165c7; background:#edf0ff; }
.home-module-card.people .home-module-icon { color:#087d78; background:#e5f7f5; }
.home-module-copy { display:grid; flex:1; align-content:start; gap:7px; }
.home-module-title { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.home-module-title h3 { margin:0; color:#25384e; font-size:13px; }
.home-module-status { flex:0 0 auto; padding:4px 6px; border-radius:99px; color:#768395; background:#eef1f4; font-size:7px; font-weight:900; text-transform:uppercase; }
.home-module-status.active { color:#08754d; background:#e5f7ee; }
.home-module-copy > p { min-height:42px; margin:0; color:#6f7d8e; font-size:9px; line-height:1.45; }
.home-module-copy ul { display:grid; gap:4px; margin:1px 0 12px; padding:0; color:#526276; font-size:8px; line-height:1.35; list-style:none; }
.home-module-copy li { position:relative; padding-left:11px; }
.home-module-copy li::before { content:""; position:absolute; top:4px; left:0; width:4px; height:4px; border-radius:50%; background:#e6ae00; }
.home-module-copy > a,.home-module-link { margin-top:auto; color:#9a6c00; font-size:9px; font-weight:900; text-decoration:none; }
.home-module-link span { margin-left:3px; }
@media (max-width:1100px) { .home-module-grid { grid-template-columns:1fr; }.home-module-copy > p { min-height:0; } }
@media (max-width:760px) { .home-modules { padding:14px; }.home-modules-head { flex-direction:column; gap:7px; }.home-modules-head > a { align-self:flex-start; } }
.executive-dashboard-head { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:3px 2px 1px; }
.executive-dashboard-head h1 { margin:3px 0 3px; color:#17263a; font-size:clamp(22px,2vw,30px); letter-spacing:-.8px; }
.executive-dashboard-head p { margin:0; color:#738092; font-size:11px; }
.executive-head-actions { display:flex; align-items:center; gap:9px; }
.executive-head-actions > .button { display:inline-flex; align-items:center; gap:7px; white-space:nowrap; }
.executive-dashboard-v2 .month-picker { background:#fff; }
.home-modules { padding:18px; border:1px solid #dce2e9; border-radius:12px; background:linear-gradient(135deg,#fffdf4 0%,#fff 58%,#f7fafc 100%); box-shadow:0 5px 18px rgba(22,37,57,.04); }
.home-modules-head { margin-bottom:15px; }.home-modules-head h2 { margin:3px 0 4px; color:#1c2b3e; font-size:17px; letter-spacing:-.25px; }.home-modules-head p { margin:0; color:#7e8a99; font-size:9px; }
.home-modules-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.home-module-card { display:grid; grid-template-columns:38px minmax(0,1fr); gap:12px; min-width:0; padding:14px; border:1px solid #e1e6eb; border-radius:10px; background:rgba(255,255,255,.9); transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease; }
.home-module-card:hover { border-color:#d0d8e1; box-shadow:0 8px 18px rgba(27,43,62,.07); transform:translateY(-1px); }
.home-module-icon { display:grid; place-items:center; align-self:start; width:38px; height:38px; border-radius:10px; color:#9b7000; background:#fff1bc; font-size:18px; font-weight:900; }.module-checklists .home-module-icon { color:#4b5fc4; background:#edf0ff; }.module-hr .home-module-icon { color:#078b84; background:#e5f7f5; }
.home-module-content { min-width:0; }.home-module-title { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }.home-module-title h3 { margin:1px 0 0; color:#293b51; font-size:12px; line-height:1.25; }.module-access-badge { flex:0 0 auto; padding:4px 6px; border-radius:99px; color:#7d8996; background:#eef1f4; font-size:7px; font-weight:900; line-height:1; text-transform:uppercase; }.module-access-badge.active { color:#08764a; background:#e4f6ed; }
.home-module-content p { min-height:34px; margin:7px 0 9px; color:#778494; font-size:8px; line-height:1.45; }.home-module-content ul { display:grid; gap:4px; margin:0 0 11px; padding:0; list-style:none; }.home-module-content li { position:relative; padding-left:11px; color:#526276; font-size:8px; line-height:1.25; }.home-module-content li::before { content:""; position:absolute; top:4px; left:0; width:4px; height:4px; border-radius:50%; background:#d59a00; }.module-checklists .home-module-content li::before { background:#6878d9; }.module-hr .home-module-content li::before { background:#19a498; }
.home-module-content > a { color:#9a6d00; font-size:8px; font-weight:900; }.module-checklists .home-module-content > a { color:#4d60c2; }.module-hr .home-module-content > a { color:#078981; }.home-module-note { display:block; color:#8c96a2; font-size:8px; line-height:1.35; }
.executive-pulse-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.executive-pulse-card { position:relative; min-height:112px; overflow:hidden; padding:17px 18px; border:1px solid #dce2e9; border-radius:12px; background:#fff; box-shadow:0 5px 18px rgba(22,37,57,.045); }
.executive-pulse-card::before { content:""; position:absolute; inset:0 auto 0 0; width:4px; background:#0ea5e9; }
.executive-pulse-card::after { content:""; position:absolute; right:-30px; bottom:-42px; width:110px; height:110px; border-radius:50%; background:rgba(14,165,233,.08); }
.executive-pulse-card > span { display:block; color:#718092; font-size:10px; font-weight:800; }
.executive-pulse-card > strong { display:block; margin-top:10px; color:#19283c; font-size:25px; line-height:1; letter-spacing:-.8px; }
.executive-pulse-card > small { display:block; margin-top:8px; color:#8994a2; font-size:9px; }
.executive-pulse-card .pulse-icon { position:absolute; z-index:1; top:16px; right:16px; display:grid; place-items:center; width:30px; height:30px; border-radius:9px; color:#aa7d00; background:#fff5cf; font-size:16px; font-style:normal; }
.executive-pulse-card.pulse-result.positive::before { background:#159a62; }.executive-pulse-card.pulse-result.positive .pulse-icon { color:#08764a; background:#e5f7ef; }
.executive-pulse-card.pulse-result.warning::before { background:#d99a1d; }.executive-pulse-card.pulse-result.negative::before { background:#dc3f4d; }.executive-pulse-card.pulse-result.negative .pulse-icon { color:#b32636; background:#fdecef; }
.executive-pulse-card.pulse-sales::before { background:#e0a500; }.executive-pulse-card.pulse-operation::before { background:#5c6ee6; }.executive-pulse-card.pulse-team::before { background:#13a6a2; }
.executive-pulse-card.pulse-operation .pulse-icon { color:#4a5dcc; background:#eef0ff; }.executive-pulse-card.pulse-team .pulse-icon { color:#078984; background:#e6f8f7; }
.home-modules { padding:20px; border:1px solid #dce2e9; border-radius:14px; background:linear-gradient(135deg,#fdfdfc,#f7fafc); box-shadow:0 5px 18px rgba(22,37,57,.04); }
.home-modules-head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:16px; }
.home-modules-head h2 { margin:3px 0 0; color:#1c2b3e; font-size:17px; letter-spacing:-.25px; }
.home-modules-head p { margin:5px 0 0; color:#7e8a99; font-size:10px; }
.home-modules-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.home-module-card { display:grid; grid-template-columns:38px minmax(0,1fr); gap:11px; min-width:0; padding:15px; border:1px solid #e0e6eb; border-radius:11px; background:#fff; }
.home-module-card:hover { border-color:#d2b04a; box-shadow:0 8px 20px rgba(28,43,62,.07); }
.home-module-icon { display:grid; place-items:center; align-self:start; width:38px; height:38px; border-radius:10px; color:#9a7000; background:#fff3c5; font-size:15px; font-weight:900; }
.module-checklists .home-module-icon { color:#3074a8; background:#e8f3fb; }.module-hr .home-module-icon { color:#168271; background:#e5f6f0; }
.home-module-content { min-width:0; }.home-module-title { display:flex; align-items:center; flex-wrap:wrap; gap:7px; }.home-module-title h3 { margin:0; color:#26384b; font-size:12px; }.module-access-badge { padding:3px 6px; border-radius:99px; color:#8a6d25; background:#f3f0e5; font-size:7px; font-weight:850; text-transform:uppercase; }.module-access-badge.active { color:#08724c; background:#e2f5ec; }
.home-module-content p { margin:7px 0; color:#718092; font-size:9px; line-height:1.45; }.home-module-content ul { display:grid; gap:4px; margin:0 0 11px; padding:0; color:#69798b; font-size:8px; line-height:1.35; list-style:none; }.home-module-content li { position:relative; padding-left:10px; }.home-module-content li::before { content:'•'; position:absolute; left:0; color:#d29b00; }
.home-module-content a { display:inline-flex; align-items:center; gap:5px; color:#9a7000; font-size:9px; font-weight:850; }.home-module-content a span { font-size:13px; line-height:.6; }.home-module-note { display:block; color:#8995a2; font-size:8px; line-height:1.4; }
.dashboard-feature-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr); gap:12px; }
.executive-panel { min-width:0; padding:18px; border:1px solid #dce2e9; border-radius:12px; background:#fff; box-shadow:0 5px 18px rgba(22,37,57,.04); }
.executive-panel-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:16px; }
.executive-panel-head h2 { margin:3px 0 0!important; color:#1c2b3e; font-size:16px!important; letter-spacing:-.25px; }
.executive-panel-head p { margin:4px 0 0; color:#85909e; font-size:9px; line-height:1.4; }
.executive-panel-head > a { align-self:center; color:#a47300; font-size:9px; font-weight:850; white-space:nowrap; }
.financial-ring-layout { display:grid; grid-template-columns:150px minmax(0,1fr); align-items:center; gap:24px; min-height:180px; }
.executive-main-ring,.target-ring,.mini-stage-ring { --ring-color:#159a62; position:relative; display:grid; place-items:center; border-radius:50%; background:conic-gradient(var(--ring-color) calc(var(--progress)*1%),#edf1f4 0); }
.executive-main-ring { width:142px; height:142px; }
.executive-main-ring::before,.target-ring::before,.mini-stage-ring::before { content:""; position:absolute; inset:12px; border-radius:50%; background:#fff; box-shadow:inset 0 0 0 1px #eff2f5; }
.executive-main-ring.ring-warning { --ring-color:#d99a1d; }.executive-main-ring.ring-negative { --ring-color:#dc3f4d; }
.executive-main-ring > span,.target-ring > span,.mini-stage-ring > span { position:relative; z-index:1; display:grid; justify-items:center; gap:3px; text-align:center; }
.executive-main-ring b { color:#19283c; font-size:27px; line-height:1; }.executive-main-ring small { color:#84909f; font-size:8px; font-weight:800; text-transform:uppercase; }
.financial-comparison { display:grid; gap:18px; }
.financial-comparison > div { display:grid; grid-template-columns:minmax(120px,1fr) auto; gap:6px 12px; align-items:center; }
.financial-comparison span { color:#526276; font-size:10px; font-weight:800; }.financial-comparison strong { color:#25364a; font-size:12px; }.financial-comparison small { grid-column:1/-1; color:#8b96a3; font-size:8px; }
.comparison-track { grid-column:1/-1; height:8px; overflow:hidden; border-radius:99px; background:#eef2f5; }.comparison-track i { display:block; min-width:3px; height:100%; border-radius:99px; }.comparison-track .income { background:linear-gradient(90deg,#159a62,#43c68f); }.comparison-track .expense { background:linear-gradient(90deg,#d93448,#f06b77); }
.legend-dot { display:inline-block; width:7px; height:7px; margin-right:6px; border-radius:50%; }.legend-dot.income { background:#159a62; }.legend-dot.expense { background:#df4052; }
.financial-panel-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:12px; padding:13px 15px; border-radius:9px; background:#f7f9fb; }.financial-panel-footer span { color:#697789; font-size:9px; font-weight:800; }.financial-panel-footer strong { font-size:18px; }
.revenue-target-panel { background:linear-gradient(145deg,#fffdf5,#fff 62%); border-color:#ead593; }
.forecast-badge { padding:6px 8px; border-radius:99px; color:#9b6f00; background:#fff1bd; font-size:8px; font-weight:900; white-space:nowrap; }
.revenue-target-body { display:grid; grid-template-columns:112px minmax(0,1fr); align-items:center; gap:18px; min-height:170px; }.target-ring { --ring-color:#0ea5e9; width:110px; height:110px; }.target-ring b { color:#1d2c40; font-size:20px; }.target-ring small { color:#8a7a45; font-size:7px; font-weight:850; text-transform:uppercase; }
.target-main > span { color:#8b7c4d; font-size:8px; font-weight:850; text-transform:uppercase; }.target-main > strong { display:block; margin:7px 0; color:#17263a; font-size:clamp(23px,2.2vw,32px); line-height:1; letter-spacing:-1px; }.target-main p { margin:0; color:#7f8792; font-size:9px; line-height:1.5; }
.target-breakdown { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.target-breakdown > span { padding:11px 12px; border:1px solid #e6e9ed; border-radius:8px; background:#fff; }.target-breakdown small,.target-breakdown b { display:block; }.target-breakdown small { color:#8793a0; font-size:8px; }.target-breakdown b { margin-top:4px; color:#18825c; font-size:12px; }.target-breakdown .target-gap b { color:#c27d00; }
.cash-evolution-panel { overflow:hidden; }
.chart-legend { display:flex; align-items:center; gap:14px; align-self:center; color:#6c7888; font-size:9px; font-weight:750; }
.cash-column-chart { display:grid; grid-template-columns:repeat(6,minmax(82px,1fr)); align-items:end; gap:10px; min-height:250px; padding:18px 8px 0; border-bottom:1px solid #dce2e8; background:repeating-linear-gradient(to top,transparent 0,transparent 54px,#eef1f4 55px); }
.cash-month-group { display:grid; align-self:stretch; grid-template-rows:minmax(160px,1fr) auto auto; justify-items:center; min-width:0; }.cash-month-group > strong { margin-top:9px; color:#33465b; font-size:9px; text-transform:uppercase; }.cash-month-group > small { margin:4px 0 9px; font-size:8px; font-weight:850; }
.cash-bars { display:flex; align-items:flex-end; justify-content:center; gap:6px; width:100%; height:100%; min-height:160px; }.cash-bar { position:relative; width:min(30px,34%); min-height:2px; border-radius:5px 5px 1px 1px; transition:height .25s ease; }.cash-bar.income { background:linear-gradient(180deg,#48c78f,#149b62); }.cash-bar.expense { background:linear-gradient(180deg,#f1737e,#db384b); }.cash-bar > i { position:absolute; left:50%; bottom:calc(100% + 5px); color:#6f7b8b; font-size:7px; font-style:normal; font-weight:800; white-space:nowrap; transform:translateX(-50%); }
.commercial-funnel { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.funnel-stage { position:relative; display:grid; grid-template-columns:auto 1fr; gap:10px; min-height:128px; padding:15px; border:1px solid #e1e5ea; border-radius:10px; background:#fafbfc; }.funnel-stage::before { content:""; position:absolute; inset:0 0 auto; height:3px; border-radius:10px 10px 0 0; background:#b9c2cc; }.funnel-stage.stage-prospect::before { background:#8996a6; }.funnel-stage.stage-quote::before { background:#e2a500; }.funnel-stage.stage-approved::before { background:#5f72dc; }.funnel-stage.stage-sale::before { background:#169d66; }
.funnel-index { display:grid; place-items:center; align-self:start; width:25px; height:25px; border-radius:7px; color:#8a97a7; background:#eef1f4; font-size:8px; font-weight:900; }.funnel-stage small { color:#6e7c8d; font-size:8px; font-weight:850; text-transform:uppercase; }.funnel-stage strong { display:block; margin-top:7px; color:#1b2b3e; font-size:25px; line-height:1; }.funnel-stage p { min-height:25px; margin:6px 0 0; color:#8a95a2; font-size:8px; line-height:1.4; }.funnel-stage b { display:block; margin-top:7px; color:#385069; font-size:10px; }.funnel-arrow { position:absolute; z-index:2; top:50%; right:-12px; display:grid; place-items:center; width:20px; height:20px; border:1px solid #e2e6eb; border-radius:50%; color:#9ca7b2; background:#fff; font-size:17px; font-style:normal; transform:translateY(-50%); }
.budget-stage-grid { display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:16px; margin-top:18px; padding-top:17px; border-top:1px solid #e8ebef; }.budget-stage-chart h3 { margin:0 0 12px; color:#425268; font-size:10px; }.stage-bar-row { display:grid; grid-template-columns:minmax(130px,.9fr) minmax(160px,1.6fr) 74px; align-items:center; gap:12px; margin-top:9px; }.stage-bar-row > span { display:grid; gap:2px; }.stage-bar-row b { color:#435367; font-size:9px; }.stage-bar-row small { color:#929ca8; font-size:7px; }.stage-bar-row > div { height:7px; overflow:hidden; border-radius:99px; background:#eef1f4; }.stage-bar-row > div i { display:block; min-width:3px; height:100%; border-radius:99px; background:linear-gradient(90deg,#0ea5e9,#ffda58); }.stage-bar-row > strong { color:#304359; font-size:9px; text-align:right; }
.commercial-summary-card { display:flex; flex-direction:column; justify-content:center; padding:18px; border-radius:10px; color:#fff; background:linear-gradient(145deg,#1b2d43,#273e59); }.commercial-summary-card > span { font-size:8px; font-weight:850; text-transform:uppercase; opacity:.7; }.commercial-summary-card > strong { margin-top:7px; font-size:30px; line-height:1; }.commercial-summary-card > p { margin:6px 0 16px; font-size:8px; opacity:.7; }.commercial-summary-card > a { color:#ffd34d; font-size:8px; font-weight:850; }
.operations-dashboard-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.operation-stage-list { display:grid; gap:11px; }.operation-stage { display:grid; grid-template-columns:minmax(115px,.9fr) minmax(120px,1.5fr) 28px; align-items:center; gap:10px; }.operation-stage > span { display:grid; gap:2px; }.operation-stage b { color:#435367; font-size:9px; }.operation-stage small { color:#929ca8; font-size:7px; }.operation-stage > div { height:8px; overflow:hidden; border-radius:99px; background:#eff2f5; }.operation-stage > div i { display:block; min-width:3px; height:100%; border-radius:99px; background:linear-gradient(90deg,#6174dc,#8a98ed); }.operation-stage > strong { color:#283b51; font-size:11px; text-align:right; }
.service-donut-row { display:grid; grid-template-columns:repeat(3,minmax(90px,1fr)); gap:15px; align-items:center; justify-items:center; min-height:160px; }.mini-stage-ring { --ring-color:#0ea5e9; width:108px; height:108px; }.mini-stage-ring:nth-child(2) { --ring-color:#6174dc; }.mini-stage-ring:nth-child(3) { --ring-color:#159a62; }.mini-stage-ring b { color:#223449; font-size:23px; line-height:1; }.mini-stage-ring small { max-width:68px; color:#7c8997; font-size:7px; font-weight:800; text-transform:uppercase; }
.team-workload-chart { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 24px; }.team-workload-row { display:grid; grid-template-columns:34px minmax(105px,.8fr) minmax(130px,1.4fr) minmax(105px,.8fr); align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid #edf0f3; }.team-avatar { display:grid; place-items:center; width:32px; height:32px; border-radius:9px; color:#a47600; background:#fff2bd; font-size:11px; font-weight:900; }.team-person,.team-metrics { display:grid; gap:3px; min-width:0; }.team-person b { overflow:hidden; color:#31455a; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }.team-person small,.team-metrics small { color:#909ba8; font-size:7px; }.team-bar { height:8px; overflow:hidden; border-radius:99px; background:#eef1f4; }.team-bar i { display:block; min-width:2px; height:100%; border-radius:99px; background:linear-gradient(90deg,#e8a800,#ffd34a); }.team-metrics { text-align:right; }.team-metrics strong { color:#31445a; font-size:9px; }
.dashboard-attention-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.today-compact-grid,.attention-values { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }.today-compact-grid > a,.attention-values > span { padding:14px; border:1px solid #e4e8ed; border-radius:9px; background:#fafbfc; }.today-compact-grid span,.attention-values small { display:block; color:#7a8797; font-size:8px; font-weight:800; }.today-compact-grid strong,.attention-values strong { display:block; margin-top:7px; font-size:15px; }.today-compact-grid small { display:block; margin-top:4px; color:#929ca8; font-size:7px; }.warning-text { color:#bd7900!important; }
.executive-empty { padding:22px; border:1px dashed #dce2e8; border-radius:9px; color:#8b96a2; background:#fafbfc; font-size:9px; text-align:center; }

@media (max-width: 1380px) {
  .executive-pulse-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .team-workload-chart { grid-template-columns:1fr; }
}
@media (max-width: 1100px) {
  .executive-dashboard-head { align-items:flex-start; flex-direction:column; }
  .executive-head-actions { align-items:stretch; width:100%; }
  .dashboard-feature-grid,.operations-dashboard-grid { grid-template-columns:1fr; }
  .commercial-funnel { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-modules-grid { grid-template-columns:1fr; }
  .funnel-stage:nth-child(2) .funnel-arrow { display:none; }
}
@media (max-width: 760px) {
  .executive-head-actions { flex-direction:column; }.executive-head-actions > .button { justify-content:center; }
  .home-modules { padding:14px; }.home-module-card { grid-template-columns:34px minmax(0,1fr); gap:10px; padding:12px; }.home-module-icon { width:34px; height:34px; font-size:16px; }
  .executive-dashboard-v2 .month-filter { width:100%; }.executive-dashboard-v2 .month-picker-form { flex:1; }.executive-dashboard-v2 .month-picker { min-width:0; width:100%; }
  .executive-pulse-grid { grid-template-columns:1fr 1fr; gap:8px; }.executive-pulse-card { min-height:100px; padding:14px; }.executive-pulse-card > strong { font-size:21px; }
  .home-modules { padding:15px; }.home-modules-head { align-items:flex-start; flex-direction:column; margin-bottom:12px; }
  .financial-ring-layout { grid-template-columns:1fr; justify-items:center; }.financial-comparison { width:100%; }
  .revenue-target-body { grid-template-columns:92px minmax(0,1fr); }.target-ring { width:90px; height:90px; }
  .cash-evolution-panel { overflow-x:auto; }.cash-column-chart { min-width:620px; }
  .commercial-funnel { grid-template-columns:1fr; }.funnel-arrow { display:none; }.funnel-stage { min-height:105px; }
  .budget-stage-grid { grid-template-columns:1fr; }.commercial-summary-card { min-height:140px; }
  .stage-bar-row { grid-template-columns:minmax(105px,.9fr) minmax(95px,1.4fr) 65px; }
  .service-donut-row { grid-template-columns:repeat(3,minmax(76px,1fr)); gap:7px; }.mini-stage-ring { width:88px; height:88px; }.mini-stage-ring::before { inset:9px; }.mini-stage-ring b { font-size:19px; }
  .team-workload-row { grid-template-columns:32px minmax(100px,1fr) 84px; }.team-workload-row .team-bar { grid-column:2/-1; grid-row:2; }.team-metrics { text-align:right; }
  .dashboard-attention-grid { grid-template-columns:1fr; }
}
@media (max-width: 470px) {
  .executive-pulse-grid { grid-template-columns:1fr; }.executive-panel { padding:14px; }
  .target-breakdown,.today-compact-grid,.attention-values { grid-template-columns:1fr; }
  .service-donut-row { grid-template-columns:1fr; }.mini-stage-ring { width:104px; height:104px; }
}

/* Dashboard anual executivo */
.annual-executive-v2 { display:grid; gap:14px; padding-bottom:12px; }
.annual-executive-head { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:3px 2px 1px; }
.annual-executive-head h1 { margin:3px 0; color:#17263a; font-size:clamp(23px,2vw,31px); letter-spacing:-.9px; }
.annual-executive-head p { margin:0; color:#738092; font-size:10px; }
.annual-head-actions,.annual-year-filter { display:flex; align-items:center; gap:8px; }
.annual-year-filter { padding:5px; border:1px solid #dce2e8; border-radius:9px; background:#fff; }
.annual-year-filter > strong { min-width:68px; color:#25364a; font-size:12px; text-align:center; }
.annual-year-filter .button { min-height:29px; padding:7px 10px; }
.annual-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.annual-kpi-card { --accent:#0ea5e9; position:relative; min-height:112px; overflow:hidden; padding:17px 18px; border:1px solid #dce2e9; border-radius:12px; background:#fff; box-shadow:0 5px 18px rgba(22,37,57,.045); }
.annual-kpi-card::before { content:""; position:absolute; inset:0 auto 0 0; width:4px; background:var(--accent); }
.annual-kpi-card::after { content:""; position:absolute; right:-30px; bottom:-44px; width:110px; height:110px; border-radius:50%; background:color-mix(in srgb,var(--accent) 8%,transparent); }
.annual-kpi-card > span { display:block; color:#718092; font-size:9px; font-weight:850; text-transform:uppercase; letter-spacing:.25px; }
.annual-kpi-card > strong { display:block; margin-top:10px; color:#19283c; font-size:clamp(20px,1.7vw,26px); line-height:1; letter-spacing:-.8px; }
.annual-kpi-card > small { display:block; margin-top:8px; color:#8994a2; font-size:8px; }
.annual-kpi-card > i { position:absolute; z-index:1; top:15px; right:15px; display:grid; place-items:center; width:31px; height:31px; border-radius:9px; color:color-mix(in srgb,var(--accent) 72%,#15243a); background:color-mix(in srgb,var(--accent) 13%,#fff); font-size:10px; font-style:normal; font-weight:900; }
.annual-kpi-result.positive { --accent:#159a62; }.annual-kpi-result.negative { --accent:#df4052; }
.annual-kpi-revenue { --accent:#159a62; }.annual-kpi-expense { --accent:#df4052; }.annual-kpi-commercial { --accent:#6174dc; }
.annual-panel { min-width:0; padding:18px; border:1px solid #dce2e9; border-radius:12px; background:#fff; box-shadow:0 5px 18px rgba(22,37,57,.04); }
.annual-panel-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:16px; }
.annual-panel-head h2 { margin:3px 0 0!important; color:#1c2b3e; font-size:16px!important; letter-spacing:-.3px; }
.annual-panel-head p { margin:4px 0 0; color:#85909e; font-size:8px; line-height:1.45; }
.annual-panel-head > a { align-self:center; color:#9c7100; font-size:8px; font-weight:850; white-space:nowrap; }
.annual-overview-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr); gap:12px; }
.annual-status-pill,.annual-delivery-total { padding:6px 9px; border-radius:99px; color:#9b6f00; background:#fff1bd; font-size:8px; font-weight:900; white-space:nowrap; }
.annual-status-pill.positive { color:#08764a; background:#e5f7ef; }.annual-status-pill.negative { color:#b32636; background:#fdecef; }
.annual-result-layout { display:grid; grid-template-columns:144px minmax(0,1fr); align-items:center; gap:24px; min-height:170px; }
.annual-score-ring,.annual-mini-ring { --ring-color:#159a62; position:relative; display:grid; place-items:center; border-radius:50%; background:conic-gradient(var(--ring-color) calc(var(--progress)*1%),#edf1f4 0); }
.annual-score-ring { width:140px; height:140px; }.annual-score-ring.negative { --ring-color:#df4052; }
.annual-score-ring::before,.annual-mini-ring::before { content:""; position:absolute; inset:12px; border-radius:50%; background:#fff; box-shadow:inset 0 0 0 1px #eff2f5; }
.annual-score-ring > span,.annual-mini-ring > span { position:relative; z-index:1; display:grid; justify-items:center; gap:3px; text-align:center; }
.annual-score-ring b { color:#19283c; font-size:25px; line-height:1; }.annual-score-ring small { color:#84909f; font-size:7px; font-weight:850; text-transform:uppercase; }
.annual-result-values { display:grid; gap:14px; }
.annual-result-values > div { display:flex; align-items:center; justify-content:space-between; gap:14px; padding-bottom:11px; border-bottom:1px solid #edf0f3; }
.annual-result-values span { color:#647286; font-size:9px; font-weight:800; }.annual-result-values strong { color:#26394e; font-size:12px; }
.annual-result-values footer { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:13px 14px; border-radius:8px; background:#f7f9fb; }
.annual-result-values footer b { font-size:18px; }
.annual-performance-rings { display:grid; grid-template-columns:repeat(3,minmax(94px,1fr)); gap:14px; align-items:center; justify-items:center; min-height:124px; }
.annual-mini-ring { width:104px; height:104px; }.annual-mini-ring::before { inset:9px; }
.annual-mini-ring b { color:#213348; font-size:20px; line-height:1; }.annual-mini-ring small { color:#808d9c; font-size:7px; font-weight:850; text-transform:uppercase; }
.annual-mini-ring.ring-income { --ring-color:#159a62; }.annual-mini-ring.ring-expense { --ring-color:#df4052; }.annual-mini-ring.ring-commercial { --ring-color:#6174dc; }
.annual-highlight-row { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:10px; }
.annual-highlight-row > span { display:grid; grid-template-columns:1fr auto; gap:4px 10px; padding:11px 12px; border:1px solid #e4e8ed; border-radius:8px; background:#fafbfc; }
.annual-highlight-row small { grid-column:1/-1; color:#8b96a3; font-size:7px; font-weight:800; text-transform:uppercase; }
.annual-highlight-row b { color:#35485d; font-size:9px; }.annual-highlight-row strong { font-size:9px; }
.annual-chart-legend,.annual-inline-legend { display:flex; align-items:center; gap:14px; color:#6c7888; font-size:8px; font-weight:800; }
.annual-chart-scroll { overflow-x:auto; padding-top:2px; }
.annual-paired-chart { display:grid; grid-template-columns:repeat(12,minmax(58px,1fr)); align-items:end; gap:8px; min-width:790px; min-height:286px; padding:18px 5px 0; border-bottom:1px solid #dce2e8; background:repeating-linear-gradient(to top,transparent 0,transparent 61px,#eef1f4 62px); }
.annual-month-column { display:grid; align-self:stretch; grid-template-rows:minmax(190px,1fr) auto auto; justify-items:center; min-width:0; }
.annual-paired-bars { display:flex; align-items:flex-end; justify-content:center; gap:5px; width:100%; height:100%; min-height:190px; }
.annual-column-bar { position:relative; width:min(27px,38%); min-height:2px; border-radius:5px 5px 1px 1px; }
.annual-column-bar.income { background:linear-gradient(180deg,#4cc990,#159a62); }.annual-column-bar.expense { background:linear-gradient(180deg,#f1737e,#dc3d4e); }
.annual-column-bar > i { position:absolute; left:50%; bottom:calc(100% + 5px); color:#758191; font-size:6px; font-style:normal; font-weight:850; white-space:nowrap; transform:translateX(-50%); }
.annual-month-column > strong { margin-top:9px; color:#33465b; font-size:8px; text-transform:uppercase; }.annual-month-column > small { margin:4px 0 9px; font-size:7px; font-weight:900; }
.annual-commercial-layout { display:grid; grid-template-columns:minmax(0,1fr) 240px; gap:20px; }
.annual-commercial-chart { display:grid; grid-template-columns:repeat(12,minmax(46px,1fr)); align-items:end; gap:6px; min-width:0; min-height:210px; padding:13px 4px 0; border-bottom:1px solid #e2e6eb; background:repeating-linear-gradient(to top,transparent 0,transparent 48px,#f0f2f5 49px); }
.annual-mini-month { display:grid; align-self:stretch; grid-template-rows:minmax(165px,1fr) auto; justify-items:center; }
.annual-mini-month > div { display:flex; align-items:flex-end; justify-content:center; gap:4px; width:100%; height:100%; }
.annual-mini-month i { width:min(19px,40%); min-height:2px; border-radius:4px 4px 1px 1px; }
.annual-mini-month i.budget { background:linear-gradient(180deg,#ffd955,#e6a900); }.annual-mini-month i.sale { background:linear-gradient(180deg,#8290ea,#5d70d9); }
.annual-mini-month b { margin:7px 0 8px; color:#405267; font-size:7px; text-transform:uppercase; }
.annual-commercial-summary { display:grid; gap:8px; }
.annual-commercial-summary > div { display:grid; grid-template-columns:1fr auto; gap:3px 10px; padding:13px 14px; border:1px solid #e3e7ec; border-radius:9px; background:#fafbfc; }
.annual-commercial-summary span { color:#69778a; font-size:8px; font-weight:850; text-transform:uppercase; }.annual-commercial-summary strong { grid-row:1/3; grid-column:2; align-self:center; color:#263a50; font-size:22px; }.annual-commercial-summary small { color:#929ca8; font-size:7px; }
.annual-commercial-summary .featured { color:#fff; border-color:#253b56; background:linear-gradient(145deg,#1b2d43,#2c4562); }.annual-commercial-summary .featured span,.annual-commercial-summary .featured small { color:rgba(255,255,255,.7); }.annual-commercial-summary .featured strong { color:#ffd348; }
.annual-inline-legend { justify-content:center; margin-top:12px; }.annual-inline-legend i { display:inline-block; width:8px; height:8px; margin-right:6px; border-radius:2px; }.annual-inline-legend i.budget { background:#e6a900; }.annual-inline-legend i.sale { background:#6174dc; }
.annual-operation-layout { display:grid; grid-template-columns:minmax(0,1fr) 230px; gap:20px; }
.annual-operation-chart { display:grid; grid-template-columns:repeat(12,minmax(44px,1fr)); align-items:end; gap:6px; min-height:205px; padding:12px 4px 0; border-bottom:1px solid #e2e6eb; background:repeating-linear-gradient(to top,transparent 0,transparent 47px,#f0f2f5 48px); }
.annual-operation-month { display:grid; align-self:stretch; grid-template-rows:minmax(150px,1fr) auto auto; justify-items:center; }
.annual-operation-bars { display:flex; align-items:flex-end; justify-content:center; gap:4px; width:100%; height:100%; }.annual-operation-bars i { width:min(18px,40%); min-height:2px; border-radius:4px 4px 1px 1px; }
.annual-operation-bars .service { background:linear-gradient(180deg,#39c2bb,#139e99); }.annual-operation-bars .production { background:linear-gradient(180deg,#8290ea,#5f72dc); }
.annual-operation-month b { margin-top:7px; color:#405267; font-size:7px; text-transform:uppercase; }.annual-operation-month small { margin:3px 0 8px; color:#8793a1; font-size:7px; font-weight:850; }
.annual-operation-totals { display:flex; flex-direction:column; justify-content:center; gap:9px; }
.annual-operation-totals > div { display:grid; grid-template-columns:9px 1fr auto; align-items:center; gap:9px; padding:15px; border:1px solid #e4e8ed; border-radius:9px; background:#fafbfc; }
.annual-operation-totals i { width:8px; height:30px; border-radius:99px; }.annual-operation-totals i.service { background:#13a6a2; }.annual-operation-totals i.production { background:#6174dc; }
.annual-operation-totals span { color:#637286; font-size:8px; font-weight:850; }.annual-operation-totals strong { color:#25384e; font-size:23px; }
.annual-team-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2px 24px; }
.annual-team-row { display:grid; grid-template-columns:34px minmax(115px,.9fr) minmax(130px,1.5fr) minmax(115px,.8fr); align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid #edf0f3; }
.annual-team-avatar { display:grid; place-items:center; width:32px; height:32px; border-radius:9px; color:#a47600; background:#fff2bd; font-size:11px; font-weight:900; }
.annual-team-name,.annual-team-numbers { display:grid; gap:3px; min-width:0; }.annual-team-name b { overflow:hidden; color:#31455a; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }.annual-team-name small,.annual-team-numbers small { color:#909ba8; font-size:7px; }
.annual-team-track { height:8px; overflow:hidden; border-radius:99px; background:#eef1f4; }.annual-team-track i { display:block; min-width:2px; height:100%; border-radius:99px; background:linear-gradient(90deg,#e8a800,#ffd34a); }
.annual-team-numbers { text-align:right; }.annual-team-numbers strong { color:#31445a; font-size:9px; }
.annual-detail-disclosure { overflow:hidden; border:1px solid #dce2e9; border-radius:11px; background:#fff; box-shadow:0 4px 15px rgba(22,37,57,.035); }
.annual-detail-disclosure summary { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:15px 18px; cursor:pointer; list-style:none; }.annual-detail-disclosure summary::-webkit-details-marker { display:none; }
.annual-detail-disclosure summary > span { display:grid; gap:3px; }.annual-detail-disclosure summary b { color:#304359; font-size:10px; }.annual-detail-disclosure summary small { color:#8d98a5; font-size:7px; }.annual-detail-disclosure summary > i { color:#9d7909; font-size:18px; font-style:normal; transition:transform .2s; }
.annual-detail-disclosure[open] summary > i { transform:rotate(180deg); }.annual-detail-disclosure .table-wrap { border-top:1px solid #e5e9ed; }
.annual-detail-table { min-width:850px; }.annual-detail-table th { background:#f3f5f7!important; }
.annual-executive-note { margin:0; padding:0 3px; color:#8b96a3; font-size:7px; line-height:1.5; }

@media (max-width: 1380px) {
  .annual-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .annual-team-grid { grid-template-columns:1fr; }
}
@media (max-width: 1100px) {
  .annual-executive-head { align-items:flex-start; flex-direction:column; }
  .annual-head-actions { justify-content:space-between; width:100%; }
  .annual-overview-grid { grid-template-columns:1fr; }
  .annual-commercial-layout,.annual-operation-layout { grid-template-columns:1fr; }
  .annual-commercial-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .annual-operation-totals { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .annual-head-actions { align-items:stretch; flex-direction:column; }.annual-head-actions > .button { text-align:center; }
  .annual-year-filter { justify-content:center; }.annual-year-filter > strong { flex:1; }
  .annual-kpi-grid { grid-template-columns:1fr 1fr; gap:8px; }.annual-kpi-card { min-height:102px; padding:14px; }.annual-kpi-card > strong { font-size:20px; }
  .annual-panel { padding:14px; }.annual-result-layout { grid-template-columns:1fr; justify-items:center; }.annual-result-values { width:100%; }
  .annual-performance-rings { gap:7px; }.annual-mini-ring { width:86px; height:86px; }.annual-mini-ring b { font-size:17px; }
  .annual-commercial-chart,.annual-operation-chart { min-width:650px; }.annual-commercial-layout,.annual-operation-layout { overflow-x:auto; }
  .annual-commercial-summary { grid-template-columns:1fr; min-width:0; }
  .annual-team-row { grid-template-columns:32px minmax(100px,1fr) 95px; }.annual-team-track { grid-column:2/-1; grid-row:2; }.annual-team-numbers { text-align:right; }
}
@media (max-width: 480px) {
  .annual-kpi-grid { grid-template-columns:1fr; }
  .annual-panel-head { align-items:flex-start; flex-direction:column; }
  .annual-highlight-row,.annual-operation-totals { grid-template-columns:1fr; }
  .annual-performance-rings { grid-template-columns:1fr; }.annual-mini-ring { width:102px; height:102px; }
}

/* Módulo fiscal */
.fiscal-page-head{align-items:flex-end}.fiscal-readiness{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;padding:13px 15px;border:1px solid #f0ce70;border-radius:11px;background:#fff9e8}.fiscal-readiness.ready{border-color:#b9e4d0;background:#eefaf4}.fiscal-readiness>div{display:flex;align-items:center;gap:11px}.fiscal-readiness-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;color:#7b5700;background:#ffd452;font-size:13px;font-weight:900}.fiscal-readiness.ready .fiscal-readiness-icon{color:#fff;background:#179763}.fiscal-readiness b,.fiscal-readiness small{display:block}.fiscal-readiness b{color:#25394e;font-size:10px}.fiscal-readiness small{margin-top:3px;color:#7d8996;font-size:8px}.fiscal-readiness>a{color:#916900;font-size:9px;font-weight:900}
.fiscal-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.fiscal-tabs a{position:relative;display:grid;gap:3px;padding:13px 15px;border:1px solid #dce3e9;border-radius:10px;background:#fff}.fiscal-tabs a:before{content:"";position:absolute;inset:auto 14px 0;height:3px;border-radius:3px 3px 0 0;background:transparent}.fiscal-tabs a.active{border-color:#e8bb32;background:#fffdf7}.fiscal-tabs a.active:before{background:#0ea5e9}.fiscal-tabs span{color:#273c51;font-size:10px;font-weight:900}.fiscal-tabs small{color:#8793a0;font-size:8px}.fiscal-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.fiscal-sales-pending{margin:12px 0}.fiscal-sale-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.fiscal-sale-chips>a{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:11px 12px;border:1px solid #e2e7eb;border-radius:9px;background:#fafbfc}.fiscal-sale-chips b{color:#253a50;font-size:9px}.fiscal-sale-chips span{grid-column:1/-1;overflow:hidden;color:#7a8795;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.fiscal-sale-chips strong{grid-row:1;color:#0b8353;font-size:9px}.fiscal-key{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:8px}.fiscal-key-full{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px!important}
.fiscal-upload-card{border-style:dashed!important;border-color:#e0b72d!important;background:#fffdf5!important}.fiscal-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fiscal-upload-grid label{display:grid;gap:6px;color:#435569;font-size:9px;font-weight:850}.fiscal-manual-details{overflow:hidden;border:1px solid #e0e5ea;border-radius:10px;background:#fff}.fiscal-manual-details>summary{padding:13px 15px;color:#3b5065;font-size:9px;font-weight:900;cursor:pointer}.fiscal-manual-details>.form-grid{padding:14px;border-top:1px solid #e8ebef}.fiscal-action-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.fiscal-action-options>label{display:flex!important;align-items:flex-start;gap:9px;padding:12px;border:1px solid #dfe5e9;border-radius:9px;background:#fff}.fiscal-action-options input{width:auto;margin-top:2px}.fiscal-action-options b,.fiscal-action-options small{display:block}.fiscal-action-options b{color:#31465a;font-size:9px}.fiscal-action-options small{margin-top:3px;color:#8793a0;font-size:7px}.fiscal-document-total{margin-left:auto;max-width:340px}.fiscal-homologation-banner{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:12px;padding:10px;border:1px solid #ecc761;border-radius:8px;color:#7b5800;background:#fff7d9;font-size:8px}.fiscal-homologation-banner b{font-size:9px}.fiscal-document-hero{display:grid;grid-template-columns:.7fr .8fr 1.2fr 1.8fr;gap:9px;margin-bottom:12px}.fiscal-document-hero>div{min-width:0;padding:15px;border:1px solid #dfe5ea;border-radius:11px;background:#fff}.fiscal-document-hero span,.fiscal-document-hero small{display:block;color:#83909e;font-size:8px}.fiscal-document-hero strong{display:block;margin:8px 0;color:#25394e;font-size:16px}.fiscal-detail-actions{margin-bottom:12px}.fiscal-detail-actions .record-actions{align-items:center}.inline-fiscal-action{display:flex;gap:6px}.inline-fiscal-action input{width:145px}.fiscal-cancel-panel,.fiscal-events{margin-top:12px}.fiscal-cancel-panel>summary,.fiscal-events>summary{color:#3b4e61;font-size:9px;font-weight:900;cursor:pointer}.fiscal-legal-note{margin-bottom:12px;padding:14px 16px;border-left:4px solid #0ea5e9;border-radius:8px;background:#fff9e8}.fiscal-legal-note b{color:#3a4d61;font-size:10px}.fiscal-legal-note p{margin:4px 0 0;color:#768392;font-size:8px}.fiscal-settings-form{gap:12px}.switch-label{display:flex!important;align-items:center;gap:7px;color:#4f5f70;font-size:8px!important}.switch-label input{width:auto}.fiscal-certificate-card{border-color:#e3c766!important;background:#fffdf5!important}
@media(max-width:1100px){.fiscal-sale-chips{grid-template-columns:repeat(2,minmax(0,1fr))}.fiscal-document-hero{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.fiscal-page-head{align-items:flex-start}.fiscal-readiness{align-items:flex-start;flex-direction:column}.fiscal-tabs,.fiscal-summary,.fiscal-upload-grid,.fiscal-action-options{grid-template-columns:1fr}.fiscal-sale-chips,.fiscal-document-hero{grid-template-columns:1fr}.fiscal-items-table{min-width:1050px}.fiscal-document-total{max-width:none}}
/* Administração: entitlements modulares independentes da cobrança. */
.platform-client-modules{margin-top:16px}
.platform-client-modules>header{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px}
.platform-client-modules h2{margin:3px 0 4px}
.platform-client-modules p{margin:0;color:var(--muted,#607089)}
.platform-module-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.platform-module-option{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px;border:1px solid #d9e0e8;border-radius:12px;background:#f8fafc;cursor:pointer}
.platform-module-option input{width:18px;height:18px;accent-color:#ef6c00}
.platform-module-option span{display:grid;gap:3px}
.platform-module-option small{color:#607089;line-height:1.35}
.platform-module-option em{font-style:normal;font-size:.75rem;font-weight:800;color:#526078}
.platform-module-option:has(input:checked){border-color:#e6b62f;background:#fff9e6}
.platform-module-option:has(input:checked) em{color:#137a48}
@media(max-width:900px){.platform-module-options{grid-template-columns:1fr}.platform-client-modules>header{display:block}}

/* Checklists, OS Lite e operação em campo */
.checklist-hero{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:18px;padding:24px 27px;border:1px solid #e3e8ed;border-left:5px solid #0ea5e9;border-radius:14px;background:linear-gradient(120deg,#fff 58%,#fff9df)}.checklist-hero h1{margin:3px 0 6px;color:#17283d;font-size:29px}.checklist-hero p{margin:0;color:#6b798c;font-size:12px}.checklist-hero .page-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.panel-title-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-title-row h2{margin:2px 0 0!important}.panel-title-row a{font-size:10px;font-weight:850}
.checklist-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.checklist-summary-card{display:block;border-left:4px solid #2479a7!important;text-decoration:none}.checklist-summary-card.warning{border-left-color:#dc9b0b!important}.checklist-summary-card.success{border-left-color:#159466!important}.checklist-summary-card.danger{border-left-color:#db4050!important}.checklist-summary-card span,.checklist-summary-card small{display:block;color:#758396;font-size:9px}.checklist-summary-card strong{display:block;margin:6px 0;color:#1c3048;font-size:27px}.checklist-summary-card:hover{border-color:#cfaa27;transform:translateY(-1px)}
.checklist-dashboard-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:14px}.checklist-order-list,.checklist-template-list{display:grid;margin-top:8px}.checklist-order-list>a,.checklist-template-list>a{display:grid;align-items:center;gap:11px;padding:11px 3px;border-bottom:1px solid #e7ebef;color:#25384e;text-decoration:none}.checklist-order-list>a{grid-template-columns:75px minmax(0,1fr) auto}.checklist-template-list>a{grid-template-columns:minmax(0,1fr) 32px}.checklist-order-list>a:last-child,.checklist-template-list>a:last-child{border-bottom:0}.checklist-order-list strong,.checklist-template-list strong,.checklist-order-list small,.checklist-template-list small{display:block}.checklist-order-list small,.checklist-template-list small{margin-top:3px;color:#7d8998;font-size:8px}.checklist-order-date{color:#a36f00;font-size:9px;font-weight:900}.checklist-template-list b{display:grid;width:29px;height:29px;place-items:center;border-radius:50%;color:#8b6200;background:#fff2b8;font-size:10px}
.checklist-template-grid,.checklist-order-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.checklist-template-card,.checklist-order-card{position:relative;color:#283b50;text-decoration:none;transition:.15s ease}.checklist-template-card:hover,.checklist-order-card:hover{border-color:#ddb532;transform:translateY(-2px)}.checklist-template-card .checklist-template-icon{display:grid;width:38px;height:38px;margin-bottom:16px;place-items:center;border-radius:10px;color:#8a6200;background:#fff0ad;font-size:19px;font-weight:900}.checklist-template-card>.tag{position:absolute;top:18px;right:18px}.checklist-template-card h2{font-size:16px!important}.checklist-template-card p{min-height:32px;color:#758295;font-size:9px}.checklist-template-card dl,.checklist-order-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:14px 0 0;overflow:hidden;border:1px solid #e3e7eb;border-radius:9px;background:#e3e7eb}.checklist-template-card dl>div,.checklist-order-card dl>div{padding:9px;background:#fafbfc}.checklist-template-card dt,.checklist-order-card dt{color:#8591a0;font-size:7px;text-transform:uppercase}.checklist-template-card dd,.checklist-order-card dd{overflow:hidden;margin:3px 0 0;color:#32465b;font-size:9px;font-weight:800;text-overflow:ellipsis}.checklist-new-template{margin-bottom:13px}
.checklist-version-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:13px}.checklist-version-bar>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.checklist-version-bar span,.checklist-version-bar small{color:#7f8b99;font-size:8px}.checklist-version-bar strong{font-size:16px}.checklist-version-bar form{margin:0}
.checklist-builder-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.72fr);gap:14px}.checklist-builder-main{display:grid;gap:13px}.checklist-builder-section{overflow:hidden;border:1px solid #dde3e8;border-radius:11px;background:#fff}.checklist-builder-section>header{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:start;gap:10px;padding:13px;background:#f7f9fb}.checklist-builder-section>header h3{margin:0;color:#24384e;font-size:12px}.checklist-builder-section>header p{margin:3px 0 0;color:#798696;font-size:8px}.checklist-sequence,.checklist-section-number{display:grid;width:28px;height:28px;place-items:center;border-radius:7px;color:#604500;background:#ffd75d;font-size:10px;font-weight:950}.checklist-builder-section details>summary{color:#875f00;font-size:8px;font-weight:900;cursor:pointer}.checklist-builder-items>article{display:grid;grid-template-columns:45px minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px 13px;border-top:1px solid #ebedf0}.checklist-builder-items strong,.checklist-builder-items small{display:block}.checklist-builder-items strong{color:#31455a;font-size:10px}.checklist-builder-items small{margin-top:3px;color:#7e8997;font-size:7px}.checklist-builder-items p{margin:5px 0 0;color:#5f6f81;font-size:8px}.checklist-item-code{color:#9a6d00;font-size:8px;font-weight:950}.checklist-builder-items details{min-width:280px}.checklist-add-item,.checklist-add-section,.checklist-add-status{padding:12px 13px;border-top:1px dashed #d9b53c;background:#fffdf4}.checklist-add-item>summary,.checklist-add-section>summary,.checklist-add-status>summary{color:#7d5900;font-size:9px;font-weight:900;cursor:pointer}.checklist-builder-side{display:grid;align-content:start;gap:13px}.checklist-status-options>details{padding:9px 0;border-bottom:1px solid #e7ebef}.checklist-status-options summary{display:flex;align-items:center;gap:9px;cursor:pointer}.checklist-status-options i{width:10px;height:10px;border-radius:50%}.checklist-status-options span{display:block}.checklist-status-options strong,.checklist-status-options small{display:block}.checklist-status-options strong{font-size:9px}.checklist-status-options small{margin-top:2px;color:#84909d;font-size:7px}.checklist-publish-card{border-color:#e3c34e!important;background:#fffdf4!important}.check-line{display:flex!important;align-items:center!important;grid-template-columns:none!important}.check-line input{width:auto!important}
.checklist-order-filters{margin-bottom:13px}.checklist-order-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.checklist-order-card h2{margin:3px 0 0!important;font-size:15px!important}.checklist-order-card-main{margin:13px 0}.checklist-order-card-main strong,.checklist-order-card-main span{display:block}.checklist-order-card-main strong{font-size:11px}.checklist-order-card-main span{margin-top:4px;color:#788596;font-size:8px}.checklist-order-form{max-width:1080px;margin:auto}.checklist-search-source{display:none!important}.checklist-order-form input[type=search]{padding-right:38px;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2368788b' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat}.checklist-order-form input[type=search]::-webkit-search-cancel-button{margin-right:22px}.checklist-technician-picker{margin:0;padding:12px;border:1px solid #dfe4e9;border-radius:10px}.checklist-technician-picker legend{padding:0 5px;color:#4a5a6d;font-size:9px;font-weight:900}.checklist-technician-picker>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.checklist-technician-picker label{display:flex!important;align-items:center;gap:8px;padding:9px;border:1px solid #e2e6ea;border-radius:8px;background:#fafbfc}.checklist-technician-picker input{width:auto}.checklist-technician-picker strong,.checklist-technician-picker small{display:block}.checklist-technician-picker strong{font-size:9px}.checklist-technician-picker small{margin-top:2px;color:#85919e;font-size:7px}
.checklist-order-detail-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.55fr);gap:14px;margin-bottom:14px}.checklist-order-overview>p{color:#657487;font-size:10px}.checklist-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid #e1e6ea;border-radius:10px;background:#e1e6ea}.checklist-facts>div,.checklist-equipment-card dl>div{padding:11px;background:#fafbfc}.checklist-facts dt,.checklist-equipment-card dt{color:#81909e;font-size:7px;text-transform:uppercase}.checklist-facts dd,.checklist-equipment-card dd{margin:4px 0;color:#2e4359;font-size:10px;font-weight:850}.checklist-facts small{color:#84909d;font-size:7px}.checklist-equipment-card dl{display:grid;gap:1px;margin:13px -5px -5px;background:#e3e7ea}.checklist-start-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;border-left:4px solid #0ea5e9!important}.checklist-start-card p{margin:3px 0;color:#768497;font-size:8px}.checklist-start-card form{display:flex;align-items:center;gap:8px}.checklist-start-card select{min-width:320px}.checklist-execution-list{display:grid}.checklist-execution-list>a{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:11px 3px;border-bottom:1px solid #e7ebef;color:#2b4056;text-decoration:none}.checklist-execution-list>a:last-child{border:0}.checklist-execution-icon{display:grid;width:30px;height:30px;place-items:center;border-radius:8px;color:#765500;background:#ffdfa0;font-weight:950}.checklist-execution-list strong,.checklist-execution-list small,.checklist-execution-list b{display:block}.checklist-execution-list small{margin-top:2px;color:#85919e;font-size:7px}.checklist-execution-list b{text-align:right;font-size:11px}
.checklist-progress{position:sticky;z-index:12;top:65px;display:grid;grid-template-columns:auto minmax(120px,1fr) 45px;align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px!important}.checklist-progress span b,.checklist-progress span small{display:block}.checklist-progress span b{font-size:9px}.checklist-progress span small{color:#81909e;font-size:7px}.checklist-progress>div{height:8px;overflow:hidden;border-radius:99px;background:#e7ebef}.checklist-progress i{display:block;width:0;height:100%;border-radius:99px;background:linear-gradient(90deg,#e2a800,#0ea5e9);transition:.2s}.checklist-progress>strong{text-align:right;font-size:11px}.checklist-field-form{display:grid;gap:13px}.checklist-field-section{padding:0!important;overflow:hidden}.checklist-field-section>header{display:flex;align-items:center;gap:11px;padding:14px 16px;background:#172d45}.checklist-field-section>header h2{margin:0!important;color:#fff;font-size:14px}.checklist-field-section>header p{margin:3px 0 0;color:#b9c8d7;font-size:8px}.checklist-field-item{border-top:1px solid #e5e9ed}.checklist-field-item>header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;padding:13px 16px;background:#f7f9fb}.checklist-field-item>header>span{color:#9a6d00;font-size:8px;font-weight:950}.checklist-field-item h3{margin:0;color:#2b4157;font-size:11px}.checklist-field-item h3 sup{color:#d82e42}.checklist-field-item header p{margin:3px 0 0;color:#778598;font-size:8px}.checklist-field-item header>small{color:#8995a2;font-size:7px;text-transform:uppercase}.checklist-answer{display:grid;gap:10px;padding:13px 16px}.checklist-status-picker{display:flex;flex-wrap:wrap;gap:7px}.checklist-status-picker label{cursor:pointer}.checklist-status-picker input{position:absolute;opacity:0}.checklist-status-picker span{display:block;padding:8px 11px;border:1px solid #dce2e7;border-left:4px solid var(--status-color);border-radius:7px;color:#405469;background:#fff;font-size:8px;font-weight:850}.checklist-status-picker input:checked+span{border-color:var(--status-color);box-shadow:0 0 0 2px color-mix(in srgb,var(--status-color) 20%,transparent);background:#fbfdff}.checklist-measurement{display:flex;align-items:center;max-width:330px}.checklist-measurement input{border-radius:7px 0 0 7px}.checklist-measurement span{display:grid;min-width:58px;height:39px;place-items:center;border:1px solid #d8dfe5;border-left:0;border-radius:0 7px 7px 0;color:#526477;background:#f4f6f8;font-size:9px;font-weight:850}.checklist-boolean-picker,.checklist-choice-grid{display:flex;flex-wrap:wrap;gap:8px}.checklist-boolean-picker label,.checklist-choice-grid label{display:flex!important;align-items:center;gap:6px;padding:8px 10px;border:1px solid #dfe4e8;border-radius:7px;font-size:8px}.checklist-boolean-picker input,.checklist-choice-grid input{width:auto}.checklist-note{display:grid;gap:5px;color:#5a6a7d;font-size:8px;font-weight:850}.checklist-photo-area{display:grid;gap:8px}.checklist-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:8px}.checklist-photo-grid figure{position:relative;margin:0;overflow:hidden;border:1px solid #dfe4e9;border-radius:9px;background:#f5f6f8}.checklist-photo-grid img{display:block;width:100%;height:120px;object-fit:cover}.checklist-photo-grid figcaption{overflow:hidden;padding:6px;color:#69788a;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.checklist-photo-grid button{position:absolute;top:5px;right:5px;display:grid;width:25px;height:25px;min-height:0;padding:0;place-items:center;border-radius:50%;color:#fff;background:#b72839}.checklist-camera-button{display:flex!important;align-items:center;justify-content:center;width:max-content;min-height:38px;padding:7px 12px;border:1px dashed #c89a06;border-radius:8px;color:#7d5b00;background:#fffbed;font-size:8px;font-weight:900;cursor:pointer}.checklist-camera-button input{display:none}.checklist-conclusion{display:grid;grid-template-columns:230px minmax(0,1fr);gap:12px}.checklist-conclusion>div{grid-column:1/-1}.checklist-conclusion label{display:grid;gap:5px;color:#516276;font-size:8px;font-weight:850}.checklist-sticky-actions{position:sticky;z-index:13;bottom:8px;display:flex;justify-content:flex-end;gap:8px;padding:10px;border:1px solid #dfc44f;border-radius:11px;background:rgba(255,252,236,.95);box-shadow:0 7px 25px rgba(34,46,61,.14);backdrop-filter:blur(8px)}.checklist-signature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.signature-form canvas{width:100%;height:140px;border:1px dashed #b9c2cb;border-radius:9px;background:#fff;touch-action:none}.checklist-signature-list{display:grid;gap:8px}.checklist-signature-list>div{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:10px;padding:8px;border:1px solid #e2e6ea;border-radius:8px}.checklist-signature-list img{width:130px;height:55px;object-fit:contain;background:#fff}.checklist-signature-list strong,.checklist-signature-list small{display:block}.checklist-signature-list small{margin-top:3px;color:#81909d;font-size:7px}.checklist-nc-list{display:grid;gap:9px}.checklist-nc-list>article{padding:12px;border:1px solid #e5c1c7;border-left:4px solid #d93648;border-radius:9px;background:#fffafb}.checklist-nc-list p{color:#667587;font-size:8px}.checklist-action-plan{padding:9px;border-radius:7px;background:#f4f6f8;color:#405367;font-size:8px}.checklist-action-plan small{display:block;margin-top:4px;color:#83909e}.stack-form{display:grid;gap:8px}.stack-form label{display:grid;gap:4px;color:#4f6073;font-size:8px;font-weight:850}.stack-form input,.stack-form select,.stack-form textarea{width:100%}.compact.empty-state{padding:8px!important}button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:1100px){.checklist-summary-grid,.checklist-template-grid,.checklist-order-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.checklist-dashboard-grid,.checklist-builder-layout,.checklist-order-detail-grid{grid-template-columns:1fr}.checklist-builder-side{grid-template-columns:repeat(2,minmax(0,1fr))}.checklist-technician-picker>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.checklist-hero,.checklist-version-bar,.checklist-start-card{align-items:stretch;flex-direction:column}.checklist-hero .page-actions{justify-content:flex-start}.checklist-summary-grid,.checklist-template-grid,.checklist-order-grid,.checklist-builder-side,.checklist-signature-grid{grid-template-columns:1fr}.checklist-technician-picker>div{grid-template-columns:1fr}.checklist-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.checklist-start-card form{align-items:stretch;flex-direction:column}.checklist-start-card select{min-width:0}.checklist-execution-list>a{grid-template-columns:34px minmax(0,1fr) auto}.checklist-execution-list>a>.tag{grid-column:2/-1;justify-self:start}.checklist-photo-grid{grid-template-columns:repeat(2,minmax(100px,1fr))}.checklist-conclusion{grid-template-columns:1fr}.checklist-progress{top:55px}.checklist-field-item>header{grid-template-columns:34px minmax(0,1fr)}.checklist-field-item>header>small{grid-column:2}.checklist-builder-items>article{grid-template-columns:35px minmax(0,1fr)}.checklist-builder-items details{grid-column:2;min-width:0}.checklist-builder-section>header{grid-template-columns:32px minmax(0,1fr)}.checklist-builder-section>header>details{grid-column:2}.checklist-sticky-actions button{flex:1}}
@media(max-width:460px){.checklist-summary-grid,.checklist-facts{grid-template-columns:1fr}.checklist-photo-grid{grid-template-columns:1fr}.checklist-status-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.checklist-status-picker span{text-align:center}.checklist-order-list>a{grid-template-columns:62px minmax(0,1fr)}.checklist-order-list>a>.tag{grid-column:2;justify-self:start}.checklist-progress{grid-template-columns:1fr auto}.checklist-progress>div{grid-column:1/-1;grid-row:2}.checklist-sticky-actions{position:static;display:grid;grid-template-columns:1fr}}
.pwa-install-panel {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 1200;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  width: min(430px, calc(100vw - 32px));
  padding: 14px 16px;
  border: 1px solid #e6b421;
  border-radius: 16px;
  background: #fffdf5;
  color: #10233f;
  box-shadow: 0 18px 50px rgba(16, 35, 63, .2);
}
.pwa-install-panel span:nth-of-type(2) { display: grid; gap: 3px; }
.pwa-install-panel strong { font-size: 14px; }
.pwa-install-panel small { color: #52627a; line-height: 1.35; }
.pwa-install-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: #0ea5e9;
  color: #111827;
  font-weight: 900;
}
.pwa-install-action {
  border: 0;
  border-radius: 9px;
  padding: 10px 14px;
  background: #10233f;
  color: #fff;
  font-weight: 800;
  cursor: pointer;
}
.pwa-install-close {
  position: absolute;
  top: 5px;
  right: 7px;
  border: 0;
  background: transparent;
  color: #64748b;
  font-size: 18px;
  cursor: pointer;
}
.checklist-template-settings { margin-bottom: 12px; }
.checklist-template-settings > details > summary,
.checklist-section-photo-add > summary {
  cursor: pointer;
  color: #0f6f94;
  font-weight: 800;
}
.checklist-template-settings .form-grid,
.checklist-section-photo-add .form-grid { margin-top: 12px; }
.checklist-section-reference-photos {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 9px;
  margin: 10px 0;
}
.checklist-section-reference-photos figure {
  position: relative;
  overflow: hidden;
  margin: 0;
  border: 1px solid #d9e1e8;
  border-radius: 10px;
  background: #f8fafc;
}
.checklist-section-reference-photos img {
  display: block;
  width: 100%;
  height: 120px;
  object-fit: cover;
}
.checklist-section-reference-photos figcaption {
  padding: 7px 9px;
  color: #52627a;
  font-size: 11px;
}
.checklist-section-reference-photos form { position: absolute; top: 5px; right: 5px; }
.checklist-section-reference-photos button {
  display: grid;
  width: 26px;
  height: 26px;
  padding: 0;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: rgba(15, 23, 42, .78);
  color: #fff;
  cursor: pointer;
}
@media (max-width: 620px) {
  .pwa-install-panel { right: 12px; bottom: 12px; grid-template-columns: auto 1fr; }
  .pwa-install-action { grid-column: 1 / -1; width: 100%; }
}
/* Módulos comerciais e contratação por autoatendimento */
.modular-catalog{position:relative}.modular-heading{max-width:760px}.module-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.public-module-card{--module:#b57a00;--module-soft:#fff3c9;display:flex;flex-direction:column;min-height:470px;padding:24px;border:1px solid #dce4ec;border-radius:18px;background:#fff;box-shadow:0 16px 35px rgba(18,37,59,.055);transition:.2s ease}.public-module-card:hover{border-color:#d3ad42;box-shadow:0 20px 40px rgba(18,37,59,.1);transform:translateY(-3px)}.public-module-card.checklist-module{--module:#4d67c8;--module-soft:#e9edff}.public-module-card.hr-module{--module:#0b857b;--module-soft:#e5f8f4}.public-module-icon{display:grid;width:43px;height:43px;place-items:center;border-radius:13px;color:var(--module);background:var(--module-soft);font-size:13px;font-weight:950}.public-module-label{margin-top:17px;color:var(--module);font-size:9px;font-weight:900;letter-spacing:.9px}.public-module-card h3{margin:7px 0;color:#182d46;font-size:21px}.public-module-card>p{min-height:57px;margin:0;color:#66768a;font-size:12px;line-height:1.55}.public-module-card ul{display:grid;gap:9px;margin:20px 0;padding:0;list-style:none}.public-module-card li{position:relative;padding-left:18px;color:#43556a;font-size:11px;line-height:1.35}.public-module-card li:before{content:'✓';position:absolute;left:0;color:var(--module);font-weight:900}.public-module-card footer{display:grid;gap:3px;margin-top:auto;padding-top:16px;border-top:1px solid #e7ecf1}.public-module-card footer span,.public-module-card footer em{color:#7a8796;font-size:10px;font-style:normal}.public-module-card footer strong{color:#182d46;font-size:22px;letter-spacing:-.5px}.public-module-card footer strong small{margin-left:3px;color:#738197;font-size:11px;font-weight:700}.module-roadmap{display:flex;align-items:center;gap:14px;margin-top:16px;padding:15px 18px;border:1px dashed #cbd6e1;border-radius:13px;background:#f8fafc}.module-roadmap span{flex:0 0 auto;padding:6px 8px;border-radius:7px;color:#56667a;background:#e9eef4;font-size:8px;font-weight:900}.module-roadmap p{margin:0;color:#647489;font-size:11px;line-height:1.5}.build-system-section{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:70px;padding:50px;overflow:hidden;border-radius:24px;color:#fff;background:radial-gradient(circle at 80% 0,#3b628d 0,transparent 37%),linear-gradient(135deg,#10243e,#1d3855)}.build-system-section .eyebrow{color:#ffd568}.build-system-section h2{max-width:560px;margin:7px 0 11px;font-size:34px;line-height:1.06}.build-system-section>div>p{max-width:580px;margin:0 0 23px;color:#cad7e6;font-size:14px;line-height:1.65}.build-system-section .button{color:#302400;background:#ffd04a}.system-builder-preview{display:grid;gap:9px;padding:22px;border:1px solid rgba(255,255,255,.16);border-radius:17px;background:rgba(9,25,43,.45);box-shadow:0 18px 40px rgba(0,0,0,.16);backdrop-filter:blur(10px)}.system-builder-preview>small{color:#95aec9;font-size:9px;font-weight:900;letter-spacing:1px}.system-builder-preview>strong{margin-bottom:8px;font-size:23px}.system-builder-preview>span{display:flex;justify-content:space-between;gap:10px;padding:11px 12px;border:1px solid rgba(255,255,255,.12);border-radius:9px;color:#dce8f4;background:rgba(255,255,255,.06);font-size:11px}.system-builder-preview .builder-base{border-color:#e5ba42;color:#fff7d3;background:rgba(255,197,55,.13)}.system-builder-preview footer{display:grid;gap:4px;margin-top:8px;padding-top:15px;border-top:1px solid rgba(255,255,255,.12)}.system-builder-preview footer small{color:#9eb4ca;font-size:9px}.system-builder-preview footer b{font-size:11px}
@media(max-width:980px){.module-catalog-grid{grid-template-columns:1fr}.public-module-card{min-height:0}.build-system-section{grid-template-columns:1fr;gap:30px;padding:35px}}@media(max-width:620px){.module-roadmap{align-items:flex-start;flex-direction:column}.build-system-section{margin-right:-2px;margin-left:-2px;padding:25px 20px;border-radius:16px}.build-system-section h2{font-size:27px}.public-module-card{padding:20px}}
.subscription-courtesy{display:flex;flex-direction:column;gap:4px;margin:14px 0;padding:14px 16px;border:1px solid #8dd6ad;border-radius:12px;background:#effbf4;color:#12663a}
.subscription-courtesy strong{font-size:16px}.subscription-courtesy span{font-size:12px;color:#347657}
.subscription-modules{margin-top:16px}.subscription-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.subscription-module-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:112px;padding:16px;border:1px solid #d7dee8;border-radius:14px;background:#fff;cursor:default;transition:.18s ease}
.subscription-module-card:has(input[name="modules"]){cursor:pointer}.subscription-module-card:has(input[name="modules"]):hover{border-color:#ef9e16;box-shadow:0 8px 22px rgba(19,37,63,.08);transform:translateY(-1px)}
.subscription-module-card input{position:absolute;opacity:0;pointer-events:none}.subscription-module-check{display:grid;place-items:center;width:26px;height:26px;border:2px solid #bcc7d5;border-radius:8px;color:transparent;font-weight:900}
.subscription-module-card.active{border-color:#eeb53b;background:#fffbef}.subscription-module-card.active .subscription-module-check{border-color:#e39a00;background:#0ea5e9;color:#1b2635}
.subscription-module-copy{display:flex;flex-direction:column;gap:5px}.subscription-module-copy strong{font-size:14px;color:#10243e}.subscription-module-copy small{line-height:1.4;color:#66758a}
.subscription-module-price{display:flex;flex-direction:column;align-items:flex-end;text-align:right;white-space:nowrap}.subscription-module-price b{color:#10243e}.subscription-module-price small{margin-top:3px;color:#7d8999}
.subscription-module-total{display:flex;align-items:center;justify-content:flex-end;gap:20px;margin-top:16px;padding-top:16px;border-top:1px solid #e1e6ed}.subscription-module-total span{display:flex;flex-direction:column;align-items:flex-end}.subscription-module-total small{color:#64748b}.subscription-module-total strong{font-size:22px;color:#137846}
.platform-module-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.platform-modules-head{margin-bottom:14px}.platform-module-count{padding:10px 14px;border-radius:10px;background:#fff5d5;border:1px solid #e9bd41;font-weight:800}
.platform-pricing-notice{display:flex;gap:10px;align-items:center;margin:0 0 16px;padding:13px 16px;border:1px solid #f0cf71;border-radius:12px;background:#fff9e8}.platform-pricing-notice span{font-size:12px;color:#5f6d7d}
.platform-module-price-card header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.platform-module-price-card>p{min-height:38px;color:#617087}.platform-module-stats{display:flex;gap:10px;margin:14px 0}.platform-module-stats span{display:flex;flex:1;flex-direction:column;padding:10px;border-radius:10px;background:#f4f6f8}.platform-module-stats small{color:#6a7788}.platform-module-stats strong{font-size:18px;color:#10243e}
.platform-module-price-form{display:grid;grid-template-columns:minmax(180px,.65fr) 1.35fr auto;align-items:end;gap:12px}.platform-module-switch,.platform-exemption-control{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;padding:10px 12px;border:1px solid #dbe1e8;border-radius:10px;background:#f9fafb}.platform-module-switch input,.platform-exemption-control input{width:18px!important;height:18px!important;flex:0 0 auto}.platform-module-switch span,.platform-exemption-control span{display:flex;flex-direction:column}.platform-module-switch small,.platform-exemption-control small{margin-top:2px;color:#69778a}
.platform-company-control-form .platform-exemption-control{grid-column:1/-1}.tag.status-neutral{background:#edf1f5;color:#526174}.tag.status-ok{background:#eaf9f0;color:#137846}
@media(max-width:1000px){.subscription-module-grid,.platform-module-catalog{grid-template-columns:1fr}.platform-module-price-form{grid-template-columns:1fr}.platform-pricing-notice{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.subscription-module-card{grid-template-columns:auto minmax(0,1fr)}.subscription-module-price{grid-column:2;align-items:flex-start;text-align:left}.subscription-module-total{align-items:stretch;flex-direction:column}.subscription-module-total span{align-items:flex-start}.subscription-module-total button{width:100%}}

/* ========================================================================== */
/* Identidade Blue Horizon — azul-claro, branco e navegação intuitiva          */
/* ========================================================================== */
:root {
  --nav: #0b456b;
  --nav-soft: #0b8fc5;
  --accent: #0ea5e9;
  --accent-dark: #027caf;
  --blue: #058bc2;
  --green: #159a62;
  --red: #dc3f4d;
  --amber: #d98b13;
  --bg: #f4fafd;
  --surface: #ffffff;
  --text: #15354b;
  --muted: #678195;
  --line: #d9eaf2;
  --shadow: 0 10px 30px rgba(19, 104, 145, .07);
  --shadow-lg: 0 24px 64px rgba(10, 93, 137, .16);
}

body { color: var(--text); background: #f4fafd; }
main {
  background:
    radial-gradient(circle at 91% 2%, rgba(56, 189, 248, .12), transparent 24%),
    radial-gradient(circle at 12% 85%, rgba(186, 230, 253, .2), transparent 28%),
    linear-gradient(145deg, #f8fcfe 0%, #f1f9fd 100%);
}

/* Estrutura principal */
.sidebar {
  color: #21465d;
  border-right: 1px solid #cce8f3;
  background:
    radial-gradient(circle at 15% 0%, rgba(14, 165, 233, .13), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.99), rgba(232,247,253,.98));
  box-shadow: 14px 0 42px rgba(5, 115, 162, .10);
}
.sidebar-brand-logo {
  border-color: #d6ebf4;
  background: #fff;
  box-shadow: 0 12px 28px rgba(8, 112, 158, .10);
}
.sidebar-company { border-color: #d5eaf3; }
.sidebar-company strong { color: #153c55; }
.sidebar-company small,.sidebar-user small { color: #7390a3; }
.nav-label { color: #7b99aa; }
.nav-link { color: #486c80; }
.nav-link:hover {
  color: #047fad;
  border-color: #d7edf6;
  background: rgba(255,255,255,.76);
  box-shadow: 0 7px 18px rgba(7, 115, 160, .06);
}
.nav-link.active {
  color: #066f9b;
  border-color: #bce3f2;
  background: linear-gradient(100deg, #daf2fb, rgba(255,255,255,.92));
  box-shadow: 0 9px 23px rgba(14, 145, 196, .11);
}
.nav-link.active::before {
  background: linear-gradient(#42c7f4, #087eae);
  box-shadow: 0 0 16px rgba(14,165,233,.36);
}
.nav-icon { color: #1686ae; background: #e1f3fa; }
.nav-link.active .nav-icon {
  color: #fff;
  background: linear-gradient(145deg, #39c2f0, #0787b9);
  box-shadow: 0 6px 14px rgba(6, 137, 187, .22);
}
.main-nav .nav-group>summary { color: #547689; }
.main-nav .nav-group>summary:hover,.main-nav .nav-group.current>summary {
  color: #057aa8;
  background: rgba(255,255,255,.72);
}
.main-nav .nav-group>div { border-color: #c8e4ef; }
.main-nav .nav-group a { color: #638396; }
.main-nav .nav-group a:hover { color: #067ca9; background: #edf9fd; }
.main-nav .nav-group a.active {
  color: #056c95;
  background: #dff4fb;
  box-shadow: inset 2px 0 #0ea5e9;
}
.sidebar-footer { border-color: #d2e8f1; }
.user-avatar { color: #fff; background: linear-gradient(145deg,#38bdf8,#087eae); }
.logout { color: #53758a; }
.logout:hover { color: #087ea9; background: #e1f4fb; }
.topbar {
  border-bottom-color: rgba(203,229,240,.9);
  background: rgba(255,255,255,.88);
  box-shadow: 0 8px 26px rgba(22,110,151,.055);
  backdrop-filter: blur(18px) saturate(135%);
}
.topbar-title small,.eyebrow { color: #078abf; }
.topbar-right { color: #58778a; }
.menu-toggle { border-color: #cfe7f1; color: #087fae; background: #f6fcff; }
.system-status { border-color: #ccebdd; background: #f0fbf6; }

/* Componentes e formulários */
button,.button {
  color: #fff;
  background: linear-gradient(135deg, #23b8ec, #087eae);
  box-shadow: 0 8px 18px rgba(4, 133, 183, .22);
}
button:hover,.button:hover { box-shadow: 0 11px 24px rgba(4, 133, 183, .28); }
.secondary,.app-body .button.secondary,.app-body button.secondary {
  color: #3e657b;
  border-color: #d4e8f1;
  background: #edf7fb;
}
.secondary:hover { background: #e2f2f8; }
input,select,textarea,.app-body input,.app-body select,.app-body textarea {
  border-color: #cfe3ed;
  color: #183c53;
  background: rgba(255,255,255,.96);
}
input:focus,select:focus,textarea:focus,
.app-body input:focus,.app-body select:focus,.app-body textarea:focus {
  border-color: #27afe0;
  box-shadow: 0 0 0 4px rgba(14,165,233,.12);
}
.form-grid,.panel,.card,.table-wrap,.filters,.filter-panel {
  border-color: #d9eaf2;
  background: linear-gradient(145deg, #fff, #fbfeff);
  box-shadow: 0 10px 30px rgba(19,104,145,.065);
}
.app-body .panel,.app-body .card,.app-body .form-grid,.app-body .table-wrap,.app-body .filter-panel {
  border-color: #d7e9f2;
  box-shadow: 0 10px 30px rgba(19,104,145,.065);
}
.app-body .card:hover { border-color: #bce1ef; box-shadow: 0 16px 34px rgba(19,104,145,.10); }
.app-body .page-head { border-color: #d9eaf2; }
.app-body .page-head h1 { color: #143a53; }
details.panel summary::after { color: #0789bb; background: #e1f4fb; }
th,.app-body .table-wrap thead th { color: #54758a; background: #edf7fb; }
.app-body .table-wrap tbody tr:hover td,.platform-funnel-table tr:hover td { background: #f1faff; }
.record-actions a,.actions a,.edit-link,.link-btn,.current-file a { color: #0784b5; }
.app-body .record-actions a:hover,.app-body .actions a:hover,.app-body .edit-link:hover { background: #e4f5fb; }
.month-picker,.month-arrow,.horizon-tabs { border-color: #cfe4ee; }
.calendar-button { color: #087fac; border-color: #d4e9f2; background: #eef8fc; }
.month-arrow:hover { color: #0786b7; border-color: #6cc9e9; }
.horizon-tabs a.active { background: linear-gradient(135deg,#28b7e8,#087daa); }
.financial-health { background: linear-gradient(135deg,#fff 0%,#f1faff 100%); }
.health-summary { border-color: #d4e9f2; box-shadow: 0 11px 28px rgba(19,104,145,.08); }

/* Painel e indicadores */
.app-body .dashboard-command-head {
  border-color: #0e91c4;
  background:
    radial-gradient(circle at 88% 4%,rgba(125,211,252,.38),transparent 28%),
    linear-gradient(124deg,#075b82,#0ea5d7 58%,#62c9ed);
  box-shadow: 0 18px 42px rgba(7,104,148,.20);
}
.dashboard-command-head .eyebrow { color: #d8f5ff!important; }
.dashboard-command-head h1 em { color: #d9f6ff; }
.dashboard-command-head p { color: #d7f2fc!important; }
.dashboard-command-chips span { color: #e8f9ff; background: rgba(255,255,255,.12); }
.app-body .home-modules,.app-body .executive-panel,.app-body .executive-pulse-card {
  border: 1px solid #d9ebf3!important;
  box-shadow: 0 12px 31px rgba(13,105,146,.075)!important;
}
.app-body .home-module-card { border-color: #d8eaf2!important; background: linear-gradient(145deg,#fff,#f5fbfe)!important; }
.app-body .home-module-card:hover { border-color: #75cce9!important; box-shadow: 0 12px 25px rgba(11,139,189,.11)!important; }
.app-body .funnel-stage { border-color: #d8e9f1!important; background: #f6fbfd!important; }
.executive-main-ring,.health-ring { filter: drop-shadow(0 10px 18px rgba(10,126,174,.12)); }

/* Assistente */
.assistant-avatar,.assistant-showcase header>b {
  background: linear-gradient(145deg,#36c3ef,#087dab);
  box-shadow: 0 8px 18px rgba(5,135,183,.22);
}
.assistant-thread.active { color: #075d82; background: #ddf3fb; box-shadow: inset 3px 0 #0ea5e9; }
.assistant-thread:hover { color: #14516e; background: #edf8fc; }
.assistant-chat-header { border-color: #d8eaf2; }

/* Checklist e seleções */
.checklist-studio { --studio-yellow:#0ea5e9; --studio-line:#d6e8f1; --studio-soft:#f2f9fc; }
.checklist-template-settings > details > summary,.checklist-section-photo-add > summary { color: #087fac; }
.checklist-camera-button { border-color: #65c6e7; color: #076d97; background: #eefaff; }
.checklist-sticky-actions { border-color: #8dd5ed; background: rgba(239,250,254,.96); box-shadow: 0 9px 28px rgba(11,116,158,.14); }
.subscription-module-card:has(input[name="modules"]):hover { border-color:#65c8e9; box-shadow:0 10px 24px rgba(11,119,161,.09); }
.subscription-module-card.active { border-color:#6bc9e8; background:#eefaff; }
.subscription-module-card.active .subscription-module-check { border-color:#0788ba; background:#0ea5e9; color:#fff; }
.platform-module-option input { accent-color:#0a93c6; }
.platform-module-option:has(input:checked) { border-color:#69c8e8; background:#eefaff; }
.user-access-option:hover,.user-access-option.selected { border-color:#59c1e5; }
.user-access-option.selected { background:#edf9fd; box-shadow:inset 3px 0 #0ea5e9; }
.user-access-option.selected .user-access-option-check { border-color:#0a8fc1; }

/* Landing pública */
.saas-public-body,.saas-landing { background:#f7fcff!important; }
.saas-landing { --ink:#123b56; --muted:#648197; --line:#d7eaf3; --gold:#0ea5e9; --blue:#0789bc; }
.saas-topbar {
  position: relative;
  z-index: 5;
  border-bottom: 1px solid rgba(207,232,242,.75);
  background: rgba(255,255,255,.82);
  backdrop-filter: blur(18px);
}
.saas-topbar a { color:#426c83; }
.saas-button { color:#fff!important; background:linear-gradient(135deg,#2bc0ef,#087eae); box-shadow:0 12px 24px rgba(6,136,185,.22); }
.saas-button:hover { box-shadow:0 16px 30px rgba(6,136,185,.28); }
.saas-kicker { color:#0781b0; }
.saas-kicker i { background:#38bdf8; box-shadow:0 0 0 5px rgba(56,189,248,.15); }
.saas-hero { position:relative; }
.saas-hero::before { content:""; position:absolute; inset:3% -20% auto 42%; height:430px; border-radius:50%; background:radial-gradient(circle,rgba(125,211,252,.24),transparent 68%); pointer-events:none; }
.saas-hero h1 strong { color:#0789bc; }
.saas-secondary-action span { color:#0789bc; }
.saas-product-preview { border-color:#d3e9f2; box-shadow:0 26px 60px rgba(15,114,157,.15); }
.saas-product-preview:before { background:#9de1f6; }
.saas-product-preview>header>b { color:#fff; background:linear-gradient(145deg,#36c4ef,#087ead); }
.preview-chart { background:#eff9fd; }
.preview-chart i { background:linear-gradient(#70d1ef,#0788bb); }
.saas-logo-strip { color:#d9f4fe; background:linear-gradient(90deg,#075579,#0b8cbc); }
.saas-logo-strip i { background:#79daf5; }
.saas-principles span { color:#0787b8; }
.saas-module { --accent:#0787b8; --tint:#e5f6fc; border-color:#d8eaf2; box-shadow:0 11px 27px rgba(18,105,145,.055); }
.saas-module:hover { border-color:#66c8e8; box-shadow:0 20px 38px rgba(18,105,145,.11); }
.saas-module.check { --accent:#386fd1; --tint:#eef2ff; }
.saas-module.people { --accent:#0d927f; --tint:#e6f8f4; }
.saas-builder,.build-system-section { background:radial-gradient(circle at 86% 2%,#58c6e9 0,transparent 30%),linear-gradient(135deg,#064c70,#0b86b6); }
.saas-builder .saas-kicker,.build-system-section .eyebrow { color:#d8f6ff; }
.builder-card label.selected { border-color:#67d2f0; color:#e7faff; background:rgba(75,196,232,.14); }
.builder-card label i { color:#bceeff; }
.assistant-showcase .mine { background:#0789bc; }
.assistant-showcase footer b { background:#0789bc; }
.saas-final { background:radial-gradient(circle at 85% 10%,rgba(137,221,247,.5),transparent 33%),linear-gradient(135deg,#075b82,#0da5d5); box-shadow:0 25px 60px rgba(6,111,154,.18); }

/* Acesso, cadastro, demonstração e administração */
.auth-body,.login-main {
  background:
    radial-gradient(circle at 14% 17%, rgba(94,203,239,.28), transparent 29%),
    radial-gradient(circle at 85% 84%, rgba(186,230,253,.35), transparent 32%),
    linear-gradient(145deg,#eaf8fd,#f9fdff);
}
.login-card { border-color:#d8ebf3; box-shadow:0 28px 70px rgba(9,103,146,.17); }
.auth-form-tools a,.auth-switch a,.auth-back-link,.register-back-link { color:#087eac; }
.register-shell { border-color:#d5e9f2; box-shadow:0 30px 74px rgba(9,103,146,.15); }
.register-intro { color:#fff; background:radial-gradient(circle at 10% 90%,rgba(162,226,247,.35),transparent 35%),linear-gradient(145deg,#087fac,#43c5ed); }
.register-intro>p,.register-price small,.register-price span,.register-price .register-regular-price { color:#e5f8ff; }
.register-benefits i { color:#087ead; }
.register-price { border-color:rgba(255,255,255,.34); background:rgba(255,255,255,.16); backdrop-filter:blur(10px); }
.register-cnpj-note.is-loading { color:#087ead; }
.platform-admin-body { color:#16384e; background:#f1f8fc; }
.platform-admin-header { border-bottom-color:#1eafe0; box-shadow:0 5px 20px rgba(12,109,150,.09); }
.platform-admin-header>div a { background:#0b6288; }
.platform-admin-nav a { color:#466b80!important; background:#edf7fb!important; }
.platform-admin-nav a.active { color:#056d98!important; background:#d9f3fc!important; }
.platform-company-card { border-left-color:#0ea5e9; }
.platform-access-explanation { color:#245c75; background:#eaf8fd; }
.platform-funnel-head .eyebrow { color:#0786b7; }
.platform-funnel-reset>summary { color:#076d96; border-color:#84d2eb; background:#eefaff; }
.platform-funnel-reset[open]>summary { background:#dff5fc; }
.platform-funnel-reset button { color:#fff; background:#0789bb; }
.platform-funnel-step { border-top-color:#0ea5e9; }
.platform-funnel-step .step-number { color:#05719c; background:#def4fb; }
.platform-funnel-kpis .panel { border-left-color:#0ea5e9; }
.demo-app { --demo-yellow:#0ea5e9; --demo-dark:#0a4c6d; background:#f1f8fc; }
.demo-header { border-bottom-color:#0ea5e9; }
.demo-create-account,.demo-inline-form button,.demo-chat form button,.demo-bottom-cta a { color:#fff!important; }
.demo-safety-banner { color:#205f7a; background:#e2f6fd; }
.demo-sidebar { color:#17435b; border-right:1px solid #cbe7f1; background:linear-gradient(180deg,#fff,#e8f7fc); }
.demo-company { border-color:#cde8f2; background:#f5fcff; }
.demo-company>span { color:#fff; background:#0ea5e9; }
.demo-company small { color:#7895a6; }
.demo-sidebar nav button { color:#4d7184; }
.demo-sidebar nav button:hover,.demo-sidebar nav button.active { color:#066d97; background:#dff4fb; }
.demo-sidebar nav i { color:#0780ae; background:#e0f3fa; }
.demo-sidebar nav button.active i { color:#fff; background:#0789bb; }
.demo-inline-form { border-color:#8bd4ec; background:#effaff; }
.demo-cost-bars em { background:#0ea5e9; }
.demo-ai-message i { color:#fff; }
.demo-user-message { background:#087cac; }
.demo-bottom-cta { background:#074a6a; }

/* Instalação e uso offline */
.pwa-install-action { background:linear-gradient(135deg,#25b9ea,#087dab); }
.pwa-install-panel { border-color:#cce7f2; box-shadow:0 18px 48px rgba(7,103,145,.2); }

@media (max-width: 900px) {
  .sidebar { box-shadow: 16px 0 45px rgba(6,93,133,.18); }
  .saas-topbar { background:#fff; }
}

/* Plano, módulos e usuários */
.main-nav .nav-group{display:grid;margin:2px 0}.main-nav .nav-group>summary{display:grid;grid-template-columns:29px minmax(0,1fr) 15px;align-items:center;gap:8px;min-height:40px;padding:0 10px;border-radius:9px;color:#acb9ca;cursor:pointer;list-style:none;font-size:11px;font-weight:750}.main-nav .nav-group>summary::-webkit-details-marker{display:none}.main-nav .nav-group>summary:hover,.main-nav .nav-group.current>summary{color:#fff;background:rgba(255,255,255,.075)}.main-nav .nav-group>summary i{font-size:13px;font-style:normal;text-align:center;transition:transform .18s ease}.main-nav .nav-group[open]>summary i{transform:rotate(180deg)}.main-nav .nav-group>div{display:grid;gap:2px;margin:2px 0 5px 38px;padding-left:8px;border-left:1px solid rgba(255,255,255,.12)}.main-nav .nav-group a{padding:7px 9px;border-radius:7px;color:#94a4b8;font-size:10px;font-weight:700;text-decoration:none}.main-nav .nav-group a:hover{color:#fff;background:rgba(255,255,255,.06)}.main-nav .nav-group a.active{color:#fff;background:rgba(14,165,233,.17);box-shadow:inset 2px 0 #0ea5e9}

/* Camada visual unificada — listagens, formulários e estados compartilhados */
.app-body .content{max-width:1580px}.app-body .page-head{padding-bottom:15px;border-bottom:1px solid #e5ebf1}.app-body .page-head h1{color:#152b45;letter-spacing:-.45px}.app-body .page-head p{max-width:740px;color:#718196}.app-body .panel,.app-body .card,.app-body .form-grid,.app-body .table-wrap,.app-body .filter-panel{border-color:#dce5ee;border-radius:13px;box-shadow:0 8px 26px rgba(19,40,64,.045)}.app-body .panel,.app-body .form-grid{background:linear-gradient(180deg,#fff,#fcfdff)}.app-body .card{border-left-width:1px}.app-body .card:hover{border-color:#cdd9e5;box-shadow:0 13px 30px rgba(19,40,64,.08)}.app-body input,.app-body select,.app-body textarea{border-color:#d5dfe9;border-radius:9px;background:#fff;box-shadow:inset 0 1px 1px rgba(18,43,68,.02);transition:border-color .16s ease,box-shadow .16s ease}.app-body input:focus,.app-body select:focus,.app-body textarea:focus{border-color:#f0ad18;box-shadow:0 0 0 3px rgba(14,165,233,.16);outline:0}.app-body .button,.app-body button:not(.menu-toggle):not(.month-arrow){border-radius:9px;font-weight:800;letter-spacing:.01em}.app-body .button.secondary,.app-body button.secondary{border-color:#d7e1eb;color:#324b65;background:#fff}.app-body .table-wrap table{border-collapse:separate;border-spacing:0}.app-body .table-wrap thead th{position:sticky;top:0;z-index:1;color:#617287;background:#f6f8fb;font-size:10px;letter-spacing:.04em;text-transform:uppercase}.app-body .table-wrap tbody tr{transition:background .14s ease}.app-body .table-wrap tbody tr:hover td{background:#fffaf0}.app-body .table-wrap td{border-color:#e9eef3}.app-body .tag{border-radius:999px;font-weight:800}.app-body .alert{border-radius:12px}.app-body .empty-state,.app-body .executive-empty{display:grid;place-items:center;min-height:118px;border:1px dashed #cfd9e4;border-radius:12px;color:#77879a;background:#fbfcfd}.app-body details.panel>summary{padding:15px 18px;color:#2d465f;font-weight:850}.app-body .record-actions a,.app-body .actions a,.app-body .edit-link{padding:5px 7px;border-radius:6px}.app-body .record-actions a:hover,.app-body .actions a:hover,.app-body .edit-link:hover{background:#fff3c8;text-decoration:none}.app-body .month-filter,.app-body .filters{border-radius:11px}.app-body .pagination a,.app-body .pagination span{border-radius:8px}
@media(max-width:760px){.app-body .content{padding:14px 11px 30px}.app-body .page-head{padding-bottom:11px}.app-body .page-head p{font-size:10px}.app-body .panel,.app-body .form-grid,.app-body .table-wrap{border-radius:10px}.app-body .table-wrap{margin-inline:-1px}.app-body .table-wrap th,.app-body .table-wrap td{white-space:nowrap}.app-body .record-actions{gap:5px}.app-body .button,.app-body button:not(.menu-toggle):not(.month-arrow){min-height:40px}.main-nav .nav-group>summary{min-height:42px}.main-nav .nav-group>div{margin-left:34px}}

/* Redesenho visível do Painel: menos blocos, mais hierarquia e foco na decisão */
.app-body .executive-dashboard-v2{gap:20px!important}.app-body .dashboard-command-head{align-items:stretch!important;min-height:176px;padding:28px 30px!important;border:1px solid #202f42;border-radius:19px;background:radial-gradient(circle at 88% 4%,rgba(255,205,72,.32),transparent 25%),linear-gradient(122deg,#16263a,#223c58);box-shadow:0 16px 38px rgba(20,38,58,.16)}.dashboard-command-copy{display:grid;align-content:center}.dashboard-command-head .eyebrow{color:#d8f5ff!important}.dashboard-command-head h1{margin:6px 0!important;color:#fff!important;font-size:clamp(27px,2.7vw,39px)!important;letter-spacing:-1.25px!important}.dashboard-command-head h1 em{color:#d9f6ff;font-style:normal}.dashboard-command-head p{color:#c4d0dc!important;font-size:12px!important}.dashboard-command-chips{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:17px}.dashboard-command-chips span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(255,255,255,.14);border-radius:99px;color:#cfdae5;background:rgba(255,255,255,.07);font-size:9px;font-weight:750}.dashboard-command-chips i{width:6px;height:6px;border-radius:50%;background:#4dde9a;box-shadow:0 0 0 4px rgba(77,222,154,.13)}.dashboard-command-head .executive-head-actions{align-self:flex-start}.dashboard-command-head .month-filter{border-color:rgba(255,255,255,.17);background:rgba(255,255,255,.95);box-shadow:none}.app-body .home-modules{padding:22px!important;border:0!important;border-radius:18px!important;background:#fff!important;box-shadow:0 10px 28px rgba(18,38,60,.06)!important}.app-body .home-modules-head{margin-bottom:18px!important}.app-body .home-modules-head h2{font-size:19px!important}.app-body .home-modules-grid{gap:14px!important}.app-body .home-module-card{border:1px solid #e1e7ee!important;border-radius:13px!important;background:linear-gradient(145deg,#fff,#fafcff)!important}.app-body .home-module-card:hover{border-color:#f0bd32!important;transform:translateY(-3px)}.app-body .executive-pulse-grid{gap:14px!important}.app-body .executive-pulse-card{min-height:124px!important;border:0!important;border-radius:15px!important;box-shadow:0 9px 25px rgba(21,38,58,.065)!important}.app-body .executive-panel{border:0!important;border-radius:16px!important;box-shadow:0 10px 28px rgba(21,38,58,.055)!important}.app-body .executive-panel-head h2{font-size:18px!important}.app-body .executive-panel-head p{font-size:10px!important}.app-body .commercial-funnel{gap:12px!important}.app-body .funnel-stage{border-radius:12px!important;background:#fbfcfd!important}.app-body .dashboard-attention-grid{gap:14px!important}@media(max-width:760px){.app-body .dashboard-command-head{min-height:0;padding:23px 19px!important}.dashboard-command-head h1{font-size:28px!important}.dashboard-command-head .executive-head-actions{width:100%;margin-top:17px}.dashboard-command-chips{margin-top:13px}.dashboard-command-chips span:last-child{display:none}.app-body .home-modules{padding:16px!important}.app-body .executive-pulse-grid{gap:10px!important}}

/* Página pública SaaS — composição independente da landing anterior */
.saas-public-body{background:#f8fafc!important;color:#172b43!important}.saas-public-body .content{max-width:none!important;padding:0!important}.saas-landing{--ink:#172b43;--muted:#6d7d91;--line:#dde5ed;--gold:#f4b900;--blue:#3569dd;overflow:hidden;background:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.saas-topbar{display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:1240px;margin:auto;padding:22px 28px}.saas-brand img{display:block;width:158px}.saas-topbar nav{display:flex;gap:25px}.saas-topbar a{color:#4e6075;font-size:12px;font-weight:700;text-decoration:none}.saas-topbar-actions,.saas-topbar>div{display:flex;align-items:center;gap:17px}.saas-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;border-radius:11px;color:#17263a!important;background:linear-gradient(135deg,#ffd44a,#f4b900);box-shadow:0 11px 21px rgba(236,174,0,.2);font-size:12px!important;font-weight:850!important;transition:.2s ease}.saas-button:hover{transform:translateY(-2px);box-shadow:0 14px 26px rgba(236,174,0,.28)}.saas-button.compact{min-height:38px;padding:0 14px;font-size:11px!important}.saas-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.88fr);align-items:center;gap:62px;max-width:1240px;margin:0 auto;padding:74px 28px 85px}.saas-kicker{display:inline-flex;align-items:center;gap:8px;color:#a36d00;font-size:10px;font-weight:900;letter-spacing:1.1px}.saas-kicker i{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(244,185,0,.14)}.saas-hero h1{max-width:650px;margin:16px 0;color:var(--ink);font-size:clamp(38px,4.3vw,61px);line-height:1.04;letter-spacing:-2.7px}.saas-hero h1 strong{display:block;color:#3267d8}.saas-hero p{max-width:585px;margin:0;color:var(--muted);font-size:16px;line-height:1.65}.saas-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:26px}.saas-secondary-action{color:#384f68;font-size:12px;font-weight:800;text-decoration:none}.saas-secondary-action span{margin-left:6px;color:#b17b00}.saas-hero-notes{display:flex;flex-wrap:wrap;gap:14px;margin-top:25px;color:#748398;font-size:10px;font-weight:700}.saas-product-preview{position:relative;padding:20px;border:1px solid #dce5ee;border-radius:19px;background:#fff;box-shadow:0 24px 55px rgba(31,58,88,.13)}.saas-product-preview:before{content:"";position:absolute;z-index:0;top:45px;right:-45px;width:120px;height:120px;border-radius:50%;background:#ffe083;filter:blur(2px);opacity:.55}.saas-product-preview>*{position:relative;z-index:1}.saas-product-preview>header{display:flex;align-items:center;gap:10px;padding-bottom:17px;border-bottom:1px solid #edf1f5}.saas-product-preview>header>b{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:#1d2b40;background:#ffd050;font-size:10px}.saas-product-preview header div{display:grid;gap:2px}.saas-product-preview header small{color:#8a99aa;font-size:8px;font-weight:850}.saas-product-preview header strong{font-size:12px}.saas-product-preview header>span{display:flex;align-items:center;gap:5px;margin-left:auto;padding:5px 7px;border-radius:99px;color:#22815b;background:#e7f8ef;font-size:8px;font-weight:850}.saas-product-preview header>span i{width:5px;height:5px;border-radius:50%;background:#32b978}.preview-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.preview-kpis article{display:grid;gap:5px;padding:10px;border:1px solid #e7edf2;border-radius:10px;background:#fbfcfe}.preview-kpis small,.preview-kpis em{color:#7c8b9c;font-size:8px;font-style:normal}.preview-kpis strong{color:#20364f;font-size:14px;letter-spacing:-.4px}.preview-kpis em:first-letter{color:#26966b}.preview-chart{padding:13px;border-radius:12px;background:#f5f8fb}.preview-chart header{display:flex;justify-content:space-between;color:#485d74;font-size:9px;font-weight:800}.preview-chart header small{color:#8c98a6;font-size:8px;font-weight:600}.preview-chart>div{display:flex;align-items:end;gap:9px;height:78px;margin-top:10px}.preview-chart i{display:block;flex:1;height:var(--bar);border-radius:4px 4px 1px 1px;background:linear-gradient(#86aaf8,#376be0)}.preview-list{display:grid;gap:8px;margin-top:13px}.preview-list span{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:6px;color:#506278;font-size:9px;font-weight:750}.preview-list b{display:grid;place-items:center;width:17px;height:17px;border-radius:5px;color:#16875e;background:#e3f7ed;font-size:8px}.preview-list span+span b{color:#c98a00;background:#fff2c8}.preview-list small{color:#9ba6b3;font-size:8px;font-weight:600}.saas-logo-strip{display:flex;align-items:center;justify-content:center;gap:24px;padding:18px;background:#172b43;color:#b9c8d9;font-size:10px;font-weight:900;letter-spacing:1px}.saas-logo-strip i{width:4px;height:4px;border-radius:50%;background:#f4bf20}.saas-section{max-width:1240px;margin:auto;padding:105px 28px}.intro-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.section-intro h2{margin:12px 0;color:var(--ink);font-size:clamp(28px,3vw,43px);line-height:1.12;letter-spacing:-1.5px}.section-intro p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}.saas-principles{display:grid;gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--line)}.saas-principles article{padding:19px 22px;background:#fff}.saas-principles span{color:#b37d00;font-size:10px;font-weight:900}.saas-principles h3{margin:5px 0;color:#263d57;font-size:15px}.saas-principles p{margin:0;color:#748397;font-size:11px;line-height:1.5}.modules-section{padding-top:45px}.centered{max-width:680px;margin:0 auto 34px;text-align:center}.saas-modules-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.saas-module{--accent:#c48700;--tint:#fff3ca;display:flex;flex-direction:column;min-height:431px;padding:25px;border:1px solid #dde5ed;border-radius:17px;background:#fff;box-shadow:0 9px 22px rgba(30,56,83,.045);transition:.2s ease}.saas-module:hover{border-color:#efbd37;box-shadow:0 18px 33px rgba(30,56,83,.09);transform:translateY(-4px)}.saas-module.check{--accent:#4668cf;--tint:#edf0ff}.saas-module.people{--accent:#11857d;--tint:#e3f7f4}.saas-module header{display:flex;align-items:center;gap:9px;color:var(--accent);font-size:9px;font-weight:900;letter-spacing:.7px}.saas-module header b{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:var(--tint);font-size:11px}.saas-module h3{margin:19px 0 6px;color:#213750;font-size:21px}.saas-module>p{min-height:58px;margin:0;color:#6d7c8e;font-size:11px;line-height:1.55}.saas-module ul{display:grid;gap:8px;margin:20px 0;padding:0;list-style:none}.saas-module li{position:relative;padding-left:15px;color:#506278;font-size:10px}.saas-module li:before{content:"✓";position:absolute;left:0;color:var(--accent);font-weight:900}.saas-module footer{display:flex;align-items:end;justify-content:space-between;gap:7px;margin-top:auto;padding-top:14px;border-top:1px solid #edf0f3}.saas-module footer small,.saas-module footer>span{display:block;color:#8793a0;font-size:8px}.saas-module footer strong{display:block;color:#1d324a;font-size:19px;letter-spacing:-.4px}.saas-module footer em{color:#6e7c8f;font-size:9px;font-style:normal;font-weight:600}.modules-next{margin:18px 0 0;padding:12px 15px;border:1px dashed #ccd7e1;border-radius:10px;color:#718094;background:#fff;font-size:10px;text-align:center}.saas-builder{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:85px;max-width:1240px;margin:0 auto;padding:61px 58px;border-radius:24px;color:#fff;background:radial-gradient(circle at 86% 2%,#426f9c 0,transparent 26%),linear-gradient(135deg,#12263c,#1c3856)}.saas-builder .saas-kicker{color:#f6cd58}.saas-builder h2{max-width:580px;margin:12px 0;color:#fff;font-size:38px;line-height:1.08;letter-spacing:-1.7px}.saas-builder p{max-width:560px;color:#c6d4e2;font-size:13px;line-height:1.65}.saas-button.light{color:#243145!important;background:#fff}.builder-card{display:grid;gap:9px;padding:23px;border:1px solid rgba(255,255,255,.16);border-radius:15px;background:rgba(8,23,40,.48);box-shadow:0 17px 35px rgba(0,0,0,.18)}.builder-card>small{color:#90a9c4;font-size:8px;font-weight:850;letter-spacing:.8px}.builder-card h3{margin:0 0 5px;font-size:22px}.builder-card label{display:grid;grid-template-columns:21px minmax(0,1fr) auto;align-items:center;gap:8px;padding:11px;border:1px solid rgba(255,255,255,.13);border-radius:8px;color:#d4e0eb;font-size:10px}.builder-card label i{display:grid;place-items:center;width:18px;height:18px;border-radius:5px;color:#f9d157;background:rgba(255,255,255,.1);font-style:normal;font-weight:900}.builder-card label.selected{border-color:#e9ba36;color:#fff6d7;background:rgba(245,188,35,.13)}.builder-card label b{font-size:9px}.builder-card footer{display:grid;gap:4px;margin-top:5px;padding-top:13px;border-top:1px solid rgba(255,255,255,.12)}.builder-card footer span{color:#9fb4cb;font-size:8px}.builder-card footer strong{font-size:10px}.assistant-section{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:85px}.assistant-showcase{padding:19px;border:1px solid #dce5ef;border-radius:17px;background:#fff;box-shadow:0 16px 35px rgba(28,56,86,.07)}.assistant-showcase header{display:flex;align-items:center;gap:9px;padding-bottom:14px;border-bottom:1px solid #edf1f4}.assistant-showcase header>b{display:grid;place-items:center;width:33px;height:33px;border-radius:10px;color:#fff;background:linear-gradient(135deg,#f9b300,#e88318);font-size:9px}.assistant-showcase header div{display:grid;gap:2px}.assistant-showcase header strong{font-size:11px}.assistant-showcase header small{color:#7b899a;font-size:8px}.assistant-showcase header small i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#28b577}.assistant-showcase p{max-width:83%;margin:17px 0 0;padding:10px 12px;border-radius:10px;font-size:10px;line-height:1.5}.assistant-showcase .mine{margin-left:auto;color:#fff;background:#356bdd}.assistant-showcase .bot{color:#4d6075;background:#f3f6f9}.assistant-showcase footer{display:flex;align-items:center;justify-content:space-between;margin-top:17px;padding:10px 11px;border:1px solid #dce4ec;border-radius:9px;color:#91a0b0;font-size:9px}.assistant-showcase footer b{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;color:#fff;background:#386ddd}.assistant-benefits{display:grid;gap:13px;margin:23px 0 0;padding:0;list-style:none}.assistant-benefits li{display:flex;gap:10px}.assistant-benefits li>b{display:grid;place-items:center;flex:0 0 auto;width:20px;height:20px;border-radius:6px;color:#238056;background:#e2f7ed;font-size:9px}.assistant-benefits span{display:grid;gap:2px;color:#748397;font-size:10px}.assistant-benefits strong{color:#334a64;font-size:11px}.saas-final{max-width:1120px;margin:0 auto 85px;padding:65px 30px;border-radius:22px;color:#fff;background:linear-gradient(135deg,#2a58bb,#3773df);text-align:center}.saas-final .saas-kicker{color:#dae7ff}.saas-final h2{margin:13px 0 8px;font-size:37px;letter-spacing:-1.4px}.saas-final p{margin:0;color:#d7e5fb;font-size:13px}.saas-final .saas-actions{justify-content:center}.saas-final .saas-button{color:#243a61!important;background:#fff}.saas-final .saas-secondary-action{color:#fff}.saas-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1240px;margin:auto;padding:28px;color:#7d8c9e;border-top:1px solid #dfe6ed;font-size:10px}.saas-footer img{width:126px}.saas-footer div{display:flex;gap:16px}.saas-footer a{color:#52647a;text-decoration:none}
@media(max-width:920px){.saas-topbar nav{display:none}.saas-hero,.intro-section,.assistant-section{grid-template-columns:1fr;gap:40px}.saas-hero{padding-top:45px}.saas-product-preview{max-width:600px}.saas-modules-grid{grid-template-columns:1fr}.saas-module{min-height:0}.saas-builder{grid-template-columns:1fr;gap:35px;margin:0 18px;padding:40px}.assistant-showcase{max-width:570px}.saas-final{margin-right:18px;margin-left:18px}.saas-logo-strip{gap:13px}.saas-logo-strip i{display:none}}@media(max-width:600px){.saas-topbar{padding:16px 17px}.saas-brand img{width:130px}.saas-topbar>div>a:first-child{display:none}.saas-hero,.saas-section{padding-right:18px;padding-left:18px}.saas-hero{padding-bottom:55px}.saas-hero h1{font-size:39px;letter-spacing:-1.8px}.saas-hero p{font-size:13px}.saas-actions{align-items:stretch;flex-direction:column}.saas-button{width:100%}.saas-secondary-action{text-align:center}.saas-hero-notes{gap:8px;font-size:8px}.preview-kpis{grid-template-columns:1fr}.preview-kpis article{grid-template-columns:1fr auto}.preview-kpis em{grid-column:1/-1}.saas-logo-strip{justify-content:space-around;padding:14px 8px;font-size:8px}.saas-logo-strip span:nth-of-type(2),.saas-logo-strip span:nth-of-type(4){display:none}.section-intro h2{font-size:30px}.saas-builder{margin:0;padding:35px 20px;border-radius:0}.saas-builder h2,.saas-final h2{font-size:30px}.assistant-section{padding-top:75px}.saas-final{margin:0;padding:52px 19px;border-radius:0}.saas-footer{align-items:flex-start;flex-direction:column;padding:25px 18px}.saas-footer div{width:100%}}
.plan-users-head{align-items:flex-end}.plan-current-total{display:grid;grid-template-columns:auto auto;align-items:end;gap:2px 12px;text-align:right}.plan-current-total small{grid-column:1/-1;color:#6d7b8e;font-size:9px;font-weight:800;text-transform:uppercase}.plan-current-total strong{color:#137846;font-size:25px}.plan-current-total .tag{align-self:center}
.plan-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px;overflow:hidden;border:1px solid #dce3eb;border-radius:8px;background:#dce3eb;gap:1px}.plan-summary-strip>div{display:grid;gap:4px;padding:15px 17px;background:#fff}.plan-summary-strip small{color:#718096;font-size:8px;font-weight:850;text-transform:uppercase}.plan-summary-strip strong{color:#182b42;font-size:20px}.plan-summary-strip span{color:#748195;font-size:9px}.plan-summary-strip>div:last-child{background:#f1fbf5}.plan-summary-strip>div:last-child strong{color:#137846}
.plan-trial{margin:0 0 14px}.plan-section{margin-top:14px;padding:20px}.subscription-module-copy em{color:#8a6500;font-size:9px;font-style:normal;font-weight:800}.plan-users-layout{grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);margin-top:14px}.plan-users-layout .users-list-panel,.plan-users-layout .new-user-panel{padding:20px}.plan-users-layout .user-access-card{grid-template-columns:38px minmax(0,1fr) auto auto auto;border-radius:8px}.user-access-price{display:grid;gap:2px;min-width:82px;text-align:right}.user-access-price small{color:#7a8797;font-size:8px}.user-access-price strong{color:#137846;font-size:11px}
.new-user-identity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.new-user-identity-grid label{display:grid;gap:5px}.access-choice-fieldset{min-width:0;margin:4px 0 0;padding:0;border:0}.access-choice-fieldset legend{margin-bottom:8px;color:#405169;font-size:10px;font-weight:850}.user-access-option-grid{display:grid;gap:8px}.user-access-option{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:80px;padding:12px;border:1px solid #dce2e9;border-radius:8px;background:#fff;cursor:pointer;transition:.16s ease}.user-access-option:hover{border-color:#d59b00}.user-access-option.selected{border-color:#d59b00;background:#fff9e8;box-shadow:inset 3px 0 #0ea5e9}.user-access-option.unavailable{padding-bottom:35px;background:#f5f7f9;cursor:not-allowed;opacity:.72}.user-access-option>input{position:absolute;opacity:0;pointer-events:none}.user-access-option-check{width:18px;height:18px;border:2px solid #aeb9c7;border-radius:50%}.user-access-option.selected .user-access-option-check{border:5px solid #d89c00;background:#fff}.user-access-option-copy{display:grid;gap:3px}.user-access-option-copy strong{color:#172a41;font-size:11px}.user-access-option-copy small{color:#6d7b8d;font-size:9px;line-height:1.35}.user-access-option-copy em{width:max-content;padding:3px 6px;border-radius:4px;color:#735300;background:#fff1b8;font-size:7px;font-style:normal;font-weight:900;text-transform:uppercase}.user-access-option-price{display:grid;gap:2px;text-align:right;white-space:nowrap}.user-access-option-price b{color:#137846;font-size:12px}.user-access-option-price small{color:#748195;font-size:8px}.user-access-option-lock{position:absolute;right:0;bottom:0;left:0;padding:6px 11px;border-top:1px solid #d9e0e8;color:#8d2d2d;background:#fff0f0;font-size:8px;font-weight:850}.new-user-total{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;border:1px solid #d6dfE8;border-radius:8px;background:#d6dfe8;gap:1px}.new-user-total>span{display:grid;gap:3px;padding:11px;background:#f7f9fb}.new-user-total small{color:#708096;font-size:8px;font-weight:800;text-transform:uppercase}.new-user-total strong{color:#183149;font-size:13px}.new-user-total>span:last-child{background:#eef9f3}.new-user-total>span:last-child strong{color:#137846}
.plan-billing-section{margin-top:14px;padding:20px}.plan-billing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid #e0e5eb;border-radius:8px;background:#e0e5eb;gap:1px}.plan-billing-grid>div{display:grid;gap:4px;padding:13px;background:#f8fafc}.plan-billing-grid small{color:#718096;font-size:8px;text-transform:uppercase}.plan-billing-grid strong{color:#26394f;font-size:10px}
.user-edit-plan{max-width:980px;padding:20px}.edit-access-options{grid-template-columns:repeat(2,minmax(0,1fr))}.user-status-control{display:grid;max-width:260px;gap:5px}.owner-access-fixed{display:grid;gap:4px;padding:15px;border:1px solid #d9bf63;border-radius:8px;background:#fff9e5}.owner-access-fixed strong{color:#4f3900}.owner-access-fixed span{color:#6f6040;font-size:10px}
.account-plan-link{display:flex;align-items:center;justify-content:space-between;gap:18px}.account-plan-link h2{margin:4px 0}.account-plan-link p{margin:0;color:#6f7d90}.account-plan-link>div:last-child{display:grid;justify-items:end;gap:3px}.account-plan-link>div:last-child>strong{color:#137846;font-size:21px}.account-plan-link>div:last-child>small{color:#758397;font-size:8px}.account-plan-link .button{margin-top:6px}
@media(max-width:1150px){.plan-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-users-layout{grid-template-columns:1fr}.user-access-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.plan-users-head{align-items:flex-start}.plan-current-total{text-align:left}.plan-summary-strip,.plan-billing-grid,.new-user-identity-grid,.user-access-option-grid,.edit-access-options{grid-template-columns:1fr}.plan-users-layout .user-access-card{grid-template-columns:38px minmax(0,1fr) auto}.plan-users-layout .user-access-price{grid-column:2;text-align:left}.plan-users-layout .user-access-card>.tag{grid-column:3;grid-row:1}.plan-users-layout .user-access-card>a{grid-column:2/-1;width:100%;text-align:center}.new-user-total{grid-template-columns:1fr}.plan-section,.plan-users-layout .users-list-panel,.plan-users-layout .new-user-panel,.plan-billing-section,.user-edit-plan{padding:15px}.account-plan-link{align-items:flex-start;flex-direction:column}.account-plan-link>div:last-child{justify-items:start}}

/* Editor dedicado de modelos de checklist */
.checklist-studio-main .content{max-width:none;padding:18px 22px 42px}
.checklist-studio{--studio-ink:#15273d;--studio-muted:#68788b;--studio-line:#dfe5eb;--studio-soft:#f5f7f9;--studio-yellow:#0ea5e9;display:grid;gap:14px;width:100%;color:var(--studio-ink)}
.checklist-studio summary{list-style:none}.checklist-studio summary::-webkit-details-marker{display:none}
.checklist-studio-toolbar{position:sticky;z-index:34;top:64px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-18px -22px 0;padding:15px 22px;border-bottom:1px solid var(--studio-line);background:rgba(255,255,255,.96);box-shadow:0 6px 18px rgba(21,39,61,.045);backdrop-filter:blur(12px)}
.checklist-studio-heading{display:flex;align-items:center;min-width:0;gap:13px}.checklist-studio-back{display:grid;flex:0 0 auto;width:38px;height:38px;place-items:center;border:1px solid #d9e0e7;border-radius:10px;color:#32465c;background:#fff;font-size:19px;text-decoration:none}.checklist-studio-heading h1{overflow:hidden;max-width:700px;margin:2px 0 1px;font-size:20px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.checklist-studio-heading p{margin:0;color:var(--studio-muted);font-size:10px}.checklist-studio-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.checklist-studio-actions .button,.checklist-studio-actions button{min-height:37px;padding:9px 13px;font-size:10px}
.checklist-studio-version{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:1px solid var(--studio-line);border-radius:11px;background:#fff}.checklist-studio-version>div{display:flex;align-items:center;gap:9px}.checklist-studio-version strong{font-size:11px}.checklist-studio-version small{color:#7c8998;font-size:9px}.checklist-studio-version>details{position:relative}.checklist-studio-version>details>summary{padding:7px 10px;border:1px solid #dce2e8;border-radius:8px;color:#42556a;background:#f8fafb;font-size:10px;font-weight:800;cursor:pointer}.checklist-studio-version nav{position:absolute;z-index:30;top:calc(100% + 7px);right:0;display:grid;min-width:230px;overflow:hidden;padding:7px;border:1px solid #dce2e8;border-radius:10px;background:#fff;box-shadow:0 15px 38px rgba(18,34,53,.15)}.checklist-studio-version nav a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:9px 10px;border-radius:7px;color:#2f4358;font-size:10px;text-decoration:none}.checklist-studio-version nav a.active{background:#fff4c8;font-weight:900}.checklist-studio-version nav small{font-size:8px}.checklist-studio-version nav form{padding:6px 3px 2px}.checklist-studio-version nav button{width:100%}
.checklist-studio-settings{overflow:hidden;border:1px solid #dce3e9;border-radius:12px;background:#fff}.checklist-studio-settings>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;cursor:pointer}.checklist-studio-settings>summary span{font-size:11px;font-weight:900}.checklist-studio-settings>summary small{color:var(--studio-muted);font-size:9px}.checklist-studio-settings[open]>summary{border-bottom:1px solid #e6eaee;background:#fafbfc}.checklist-studio-settings-body{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:15px;padding:15px}.checklist-studio-settings-body .form-grid{box-shadow:none}.checklist-studio-danger-actions{display:flex;gap:8px;padding-bottom:1px}.checklist-studio-danger-actions form{margin:0}
.checklist-studio-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:16px}.checklist-studio-canvas{display:grid;min-width:0;gap:12px}.checklist-canvas-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding:4px 2px 2px}.checklist-canvas-intro h2{margin:4px 0 3px;font-size:18px}.checklist-canvas-intro p{margin:0;color:var(--studio-muted);font-size:11px}.checklist-collapse-actions{display:flex;gap:9px}.checklist-collapse-actions button{padding:4px;color:#56677a!important;font-size:9px!important}
.checklist-studio-section{overflow:hidden;border:1px solid #dce3e9;border-radius:13px;background:#fff;box-shadow:0 5px 17px rgba(27,43,62,.035)}.checklist-studio-section>summary{display:grid;grid-template-columns:24px 34px minmax(0,1fr) 24px;align-items:center;gap:10px;min-height:68px;padding:13px 15px;cursor:pointer;transition:.15s ease}.checklist-studio-section>summary:hover{background:#fbfcfd}.checklist-studio-section[open]>summary{border-bottom:1px solid #e5e9ed;background:#f8fafb}.checklist-studio-drag{color:#a5aeb8;font-size:15px;letter-spacing:-5px}.checklist-studio-section .checklist-sequence{width:32px;height:32px;border-radius:9px;font-size:11px}.checklist-section-copy{display:grid;min-width:0;gap:4px}.checklist-section-copy strong{overflow:hidden;color:#20354b;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.checklist-section-copy small{overflow:hidden;color:#7b8897;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.checklist-section-chevron{color:#788697;font-size:17px;text-align:center;transition:transform .15s ease}.checklist-studio-section[open] .checklist-section-chevron{transform:rotate(180deg)}.checklist-section-body{padding:0}
.checklist-inline-settings{border-bottom:1px solid #e6eaee;background:#fbfcfd}.checklist-inline-settings>summary{padding:10px 16px;color:#4f6277;font-size:9px;font-weight:850;cursor:pointer}.checklist-inline-settings[open]>summary{color:#7b5900;background:#fffaf0}.checklist-inline-settings-body{display:grid;gap:12px;padding:14px 16px;border-top:1px solid #eceff2}.checklist-inline-settings-body>.form-grid{box-shadow:none}.checklist-photo-quick-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;align-items:end;gap:10px}.checklist-photo-quick-form label{display:grid;gap:5px;color:#526479;font-size:9px;font-weight:800}
.checklist-studio-items{display:grid}.checklist-studio-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:start;gap:11px;padding:14px 16px;border-bottom:1px solid #e9edf0;background:#fff;transition:.15s ease}.checklist-studio-item:hover{background:#fdfdfd}.checklist-item-order{display:flex;align-items:center;gap:7px;min-height:30px}.checklist-item-order span{color:#b1b8c1;letter-spacing:-5px}.checklist-item-order b{color:#8b6500;font-size:9px}.checklist-item-summary{display:grid;min-width:0;gap:4px}.checklist-item-summary>strong{color:#263b51;font-size:12px;line-height:1.35}.checklist-item-summary>p{margin:0;color:#6e7c8e;font-size:9px;line-height:1.45}.checklist-item-badges{display:flex;flex-wrap:wrap;gap:5px;margin-top:3px}.checklist-item-badges span{padding:4px 7px;border-radius:99px;color:#536477;background:#f0f3f6;font-size:8px;font-weight:750}.checklist-item-badges span:first-child{color:#6d5100;background:#fff3c2}.checklist-item-editor>summary{padding:7px 9px;border:1px solid #dce2e8;border-radius:7px;color:#3f566d;background:#fff;font-size:9px;font-weight:850;cursor:pointer}.checklist-item-editor[open]{grid-column:1/-1;display:grid;gap:8px}.checklist-item-editor[open]>summary{justify-self:end;margin-top:-38px}.checklist-item-editor-body{display:grid;gap:10px;margin:7px -3px 0;padding:15px;border:1px solid #dce3e9;border-radius:11px;background:#f8fafb}.checklist-studio-item-form{display:grid;gap:12px}.checklist-form-primary{display:grid;grid-template-columns:minmax(280px,1.7fr) minmax(210px,.8fr);gap:10px}.checklist-studio-item-form label,.checklist-advanced-grid label{display:grid;gap:5px;color:#485c71;font-size:9px;font-weight:850}.checklist-form-toggles{display:flex;align-items:center;flex-wrap:wrap;gap:15px}.checklist-form-toggles>label:first-child{display:flex;align-items:center;gap:7px}.checklist-form-toggles input[type=checkbox]{width:auto}.checklist-form-toggles>label:last-child{display:flex;align-items:center;gap:8px}.checklist-form-toggles select{width:210px}.checklist-studio-item-form>button{justify-self:start}.checklist-advanced-options{border:1px solid #e0e5e9;border-radius:9px;background:#fff}.checklist-advanced-options>summary{padding:10px 12px;color:#596b7e;font-size:9px;font-weight:850;cursor:pointer}.checklist-advanced-options[open]>summary{border-bottom:1px solid #e7ebee}.checklist-advanced-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}.checklist-advanced-grid [hidden]{display:none!important}.checklist-editor-actions{display:flex;align-items:center;gap:10px;padding-top:2px;border-top:1px solid #e2e7eb}.checklist-editor-actions form{margin:0}.checklist-editor-actions button{font-size:9px}
.checklist-empty-section{display:grid;justify-items:center;gap:3px;padding:26px 15px;border-bottom:1px solid #e8ecef;color:#647487;text-align:center}.checklist-empty-section>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:#7a5900;background:#fff2bd;font-size:18px}.checklist-empty-section strong{font-size:11px}.checklist-empty-section small{font-size:9px}.checklist-quick-add{background:#fff}.checklist-quick-add>summary{margin:12px 15px;padding:11px;border:1px dashed #d7aa22;border-radius:9px;color:#795800;background:#fffaf0;font-size:10px;font-weight:900;text-align:center;cursor:pointer}.checklist-quick-add[open]>summary{margin-bottom:0;border-radius:9px 9px 0 0}.checklist-quick-add>form{margin:0 15px 15px;padding:14px;border:1px solid #e2c66d;border-top:0;border-radius:0 0 9px 9px;background:#fffdf7}
.checklist-new-section{overflow:hidden;border:2px dashed #d6a91c;border-radius:13px;background:#fffaf0}.checklist-new-section>summary{padding:16px;color:#725300;font-size:11px;font-weight:950;text-align:center;cursor:pointer}.checklist-new-section[open]>summary{border-bottom:1px dashed #dfba4b}.checklist-new-section>form{margin:0;padding:15px;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}.checklist-studio-empty{display:grid;justify-items:center;gap:6px;padding:55px 20px;border:2px dashed #d6dde4;border-radius:14px;background:#fafbfc;text-align:center}.checklist-studio-empty>span{display:grid;width:52px;height:52px;place-items:center;border-radius:15px;color:#735400;background:#ffda62;font-size:25px;font-weight:950}.checklist-studio-empty h2{margin:7px 0 0;font-size:17px}.checklist-studio-empty p{margin:0 0 8px;color:#738194;font-size:10px}
.checklist-studio-panel{position:sticky;top:145px;display:grid;gap:12px}.checklist-studio-help,.checklist-studio-side-card,.checklist-studio-publish{overflow:hidden;border:1px solid #dce3e9;border-radius:12px;background:#fff}.checklist-studio-help{padding:17px}.checklist-studio-help h2{margin:4px 0 13px;font-size:15px}.checklist-studio-help ol{display:grid;gap:10px;margin:0;padding:0;list-style:none}.checklist-studio-help li{display:flex;align-items:center;gap:9px}.checklist-studio-help li>b{display:grid;flex:0 0 auto;width:25px;height:25px;place-items:center;border-radius:8px;color:#705100;background:#ffe48c;font-size:9px}.checklist-studio-help li span{display:grid;gap:2px}.checklist-studio-help li strong{font-size:10px}.checklist-studio-help li small{color:#7d8998;font-size:8px}.checklist-studio-side-card>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;color:#2c4056;font-size:10px;font-weight:900;cursor:pointer}.checklist-studio-side-card>summary small{color:#83909e;font-size:8px;font-weight:700}.checklist-studio-side-card[open]>summary{border-bottom:1px solid #e8ebef}.checklist-studio-side-card>.checklist-status-options,.checklist-studio-side-card>form{padding:7px 14px 13px}.checklist-studio-side-card .checklist-status-options strong{font-size:10px}.checklist-studio-side-card .checklist-status-options small{font-size:8px}.checklist-studio-side-card .checklist-status-options>details>form{margin-top:9px;padding:10px;border-radius:8px;background:#f6f8fa}.checklist-studio-publish{padding:17px;border-color:#e5bd42;background:linear-gradient(145deg,#fffdf5,#fff7d4)}.checklist-studio-publish h2{margin:4px 0 6px;font-size:15px}.checklist-studio-publish p{margin:0 0 13px;color:#6f6550;font-size:9px;line-height:1.5}.checklist-studio-publish button{width:100%}
@media(max-width:1180px){.checklist-studio-workspace{grid-template-columns:minmax(0,1fr) 270px}.checklist-studio-toolbar{align-items:flex-start}.checklist-studio-actions{max-width:430px}}
@media(max-width:980px){.checklist-studio-toolbar{top:58px;margin:-18px -15px 0;padding:13px 15px}.checklist-studio-workspace{grid-template-columns:1fr}.checklist-studio-panel{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.checklist-studio-publish{grid-column:1/-1}.checklist-studio-main .content{padding:18px 15px 34px}}
@media(max-width:760px){.checklist-studio-toolbar{align-items:stretch;flex-direction:column}.checklist-studio-actions{justify-content:flex-start;max-width:none}.checklist-studio-heading h1{font-size:18px}.checklist-studio-version{align-items:stretch;flex-direction:column}.checklist-studio-version>details>summary{text-align:center}.checklist-studio-version nav{right:auto;left:0;width:100%}.checklist-studio-settings-body{grid-template-columns:1fr}.checklist-studio-danger-actions{flex-wrap:wrap}.checklist-canvas-intro{align-items:flex-start;flex-direction:column}.checklist-studio-panel{grid-template-columns:1fr}.checklist-studio-publish{grid-column:auto}.checklist-form-primary,.checklist-advanced-grid{grid-template-columns:1fr}.checklist-advanced-grid .span-2{grid-column:auto}.checklist-photo-quick-form{grid-template-columns:1fr}.checklist-studio-item{grid-template-columns:42px minmax(0,1fr)}.checklist-item-editor{grid-column:2}.checklist-item-editor[open]{grid-column:1/-1}.checklist-form-toggles{align-items:stretch;flex-direction:column}.checklist-form-toggles>label:last-child{align-items:stretch;flex-direction:column}.checklist-form-toggles select{width:100%}}
@media(max-width:480px){.checklist-studio-main .content{padding:14px 9px 28px}.checklist-studio-toolbar{margin:-14px -9px 0;padding:11px 9px}.checklist-studio-heading{align-items:flex-start}.checklist-studio-back{width:34px;height:34px}.checklist-studio-actions .tag{display:none}.checklist-studio-actions .button,.checklist-studio-actions button{flex:1}.checklist-studio-section>summary{grid-template-columns:28px minmax(0,1fr) 20px;gap:8px;padding:12px}.checklist-studio-drag{display:none}.checklist-section-copy small{white-space:normal}.checklist-studio-item{padding:12px 10px}.checklist-item-editor[open]>summary{margin-top:0}.checklist-quick-add>summary{margin:10px}.checklist-quick-add>form{margin:0 10px 10px}.checklist-studio-settings>summary{align-items:flex-start;flex-direction:column}.checklist-studio-version>div{flex-wrap:wrap}}

@media (min-width:901px){.app-body .menu-toggle{display:grid!important;place-items:center;width:34px;height:34px;min-height:34px;padding:0;border:1px solid #dce4ec;border-radius:9px;color:#334b65;background:#fff;font-size:16px;box-shadow:none}.app-body.sidebar-collapsed{--app-sidebar-width:78px}.app-body.sidebar-collapsed .sidebar{width:78px;transition:width .2s ease}.app-body.sidebar-collapsed .brand{padding:14px}.app-body.sidebar-collapsed .sidebar-brand-logo{width:36px;overflow:hidden}.app-body.sidebar-collapsed .main-nav{align-items:center;padding-inline:10px}.app-body.sidebar-collapsed .nav-label,.app-body.sidebar-collapsed .nav-link>span:not(.nav-icon),.app-body.sidebar-collapsed .nav-link>small,.app-body.sidebar-collapsed .nav-group>summary>span:not(.nav-icon),.app-body.sidebar-collapsed .nav-group>summary>i,.app-body.sidebar-collapsed .nav-group>div,.app-body.sidebar-collapsed .sidebar-company,.app-body.sidebar-collapsed .sidebar-user{display:none}.app-body.sidebar-collapsed .nav-link,.app-body.sidebar-collapsed .nav-group>summary{grid-template-columns:1fr;width:42px;padding:5px;justify-items:center}.app-body.sidebar-collapsed .nav-icon{margin:auto}.app-body.sidebar-collapsed .sidebar-footer{padding-inline:9px}.app-body.sidebar-collapsed .logout-link{padding:10px 0;font-size:0;justify-content:center}.app-body.sidebar-collapsed .logout-link span{font-size:17px}.app-body main{transition:margin-left .2s ease}}
/* Área autenticada do colaborador — ponto e RH */
.employee-os-link{display:grid;gap:5px;width:min(100%,420px);margin:20px auto -13px;color:#d7e4f1;font-size:.75rem;font-weight:700}.employee-os-link select{border:1px solid #7790a9;background:#fff;color:#213e5c;border-radius:9px;padding:9px;font:inherit}
.employee-portal-body{background:#f3f7fb;color:#192a3d}.employee-portal{width:min(1080px,100%);margin:0 auto;padding:24px 18px 56px}.employee-portal-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:30px}.employee-portal-top>div{display:flex;gap:18px}.employee-portal-top a{color:#506179;text-decoration:none;font-size:.9rem;font-weight:700}.employee-portal-brand{display:flex;align-items:center;gap:10px!important;color:#18314c!important;letter-spacing:.12em;font-size:.72rem!important}.employee-portal-brand img{width:116px;height:auto}.employee-greeting{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px}.employee-greeting h1,.employee-history-head h1{font-size:clamp(1.7rem,3vw,2.35rem);letter-spacing:-.045em;margin:5px 0}.employee-greeting p,.employee-history-head p{margin:0;color:#607187}.employee-live-clock{min-width:160px;background:#fff;border:1px solid #e1e8f0;border-radius:16px;padding:13px 16px;display:grid;gap:2px}.employee-live-clock small,.employee-punch-status small{color:#77859a;font-size:.65rem;font-weight:800;letter-spacing:.1em}.employee-live-clock b{font-variant-numeric:tabular-nums;font-size:1.28rem}.employee-live-clock span{font-size:.78rem;color:#3b8a72}.employee-punch-card{background:radial-gradient(circle at 91% 5%,#2d5e95 0,#17324e 42%,#132944 100%);border-radius:24px;padding:28px;color:#fff;box-shadow:0 19px 44px #15335733}.employee-punch-status{display:flex;align-items:center;gap:11px}.status-dot{width:10px;height:10px;border-radius:99px;background:#f5b942}.status-dot.working{background:#57d699;box-shadow:0 0 0 5px #57d69920}.employee-punch-status b{display:block;font-size:1rem;margin-top:2px}.employee-punch-button{border:0;width:min(100%,420px);margin:28px auto 14px;display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;align-items:center;text-align:left;padding:18px 22px;border-radius:17px;background:#ffc642;color:#122b47;box-shadow:0 10px 24px #0003;cursor:pointer}.employee-punch-button>span{grid-row:1/3;font-size:1.55rem}.employee-punch-button strong{font-size:1.15rem}.employee-punch-button small{opacity:.72;margin-top:2px}.employee-punch-privacy{font-size:.75rem;color:#c7d3e1;text-align:center;margin:0}.employee-finished{padding:28px 0;text-align:center;display:grid;gap:4px}.employee-finished b{color:#78e1aa}.employee-finished span{font-size:.88rem;color:#c7d3e1}.employee-receipt-banner{margin:0 0 16px;background:#e8fff3;border:1px solid #aee8c9;padding:13px 16px;border-radius:14px;display:flex;gap:11px;align-items:center;color:#1f6d4c}.employee-receipt-banner>span{background:#25aa6d;color:#fff;border-radius:50%;width:25px;height:25px;text-align:center;line-height:25px}.employee-receipt-banner b,.employee-receipt-banner small{display:block}.employee-receipt-banner small{font-size:.8rem}.employee-day-marks,.employee-month-summary,.employee-request-list,.employee-calendar,.employee-history-forms{margin-top:22px}.employee-day-marks,.employee-month-summary,.employee-request-list{background:#fff;border:1px solid #e2e9f0;border-radius:20px;padding:22px}.employee-day-marks header,.employee-month-summary header{display:flex;align-items:center;justify-content:space-between;gap:12px}.employee-day-marks h2,.employee-month-summary h2,.employee-request-list h2,.employee-form-card h2{font-size:1.1rem;margin:4px 0 0}.employee-day-marks header a,.employee-month-summary header a{font-size:.82rem;font-weight:700;color:#2863a1;text-decoration:none}.employee-mark-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.employee-mark-grid article{border:1px solid #e5ecf3;border-radius:12px;padding:12px;display:grid;gap:3px}.employee-mark-grid span,.employee-mark-grid small{font-size:.72rem;color:#718095}.employee-mark-grid b{font-size:1.08rem}.employee-mark-grid a{color:#2863a1}.employee-month-summary>div{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:18px}.employee-month-summary article{background:#f6f9fc;border-radius:13px;padding:13px;display:grid;gap:3px}.employee-month-summary article span,.employee-month-summary article small{font-size:.71rem;color:#75839a}.employee-month-summary article b{font-size:1.04rem}.employee-month-summary article.success b{color:#168154}.employee-month-summary article.warning b{color:#b76e18}.employee-quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.employee-quick-actions a{background:#fff;border:1px solid #e2e9f0;border-radius:16px;padding:17px;text-decoration:none;color:#1b2d43;display:grid;gap:4px}.employee-quick-actions a>span{width:29px;height:29px;display:grid;place-items:center;background:#eaf3ff;color:#2164aa;border-radius:8px}.employee-quick-actions b{font-size:.9rem}.employee-quick-actions small{font-size:.74rem;color:#738198}.employee-history-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end}.employee-history-head form{display:flex;gap:7px}.employee-history-head input{border:1px solid #dbe5ee;border-radius:9px;padding:9px}.employee-history-head button,.employee-form-card button,.employee-receipt button{border:0;border-radius:9px;padding:10px 15px;background:#183d63;color:#fff;font-weight:700;cursor:pointer}.employee-calendar{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.employee-calendar article{background:#fff;border:1px solid #e0e8f1;border-top:3px solid #94a3b8;border-radius:14px;padding:13px;min-height:135px;display:flex;flex-direction:column;gap:10px}.employee-calendar article.complete{border-top-color:#29a56a}.employee-calendar article.pending{border-top-color:#e6ad2d}.employee-calendar article.extra{border-top-color:#8658c9}.employee-calendar header{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center}.employee-calendar header b{font-size:1.28rem;grid-row:span 2}.employee-calendar header span{font-size:.78rem}.employee-calendar header small{font-size:.65rem;color:#738198}.employee-calendar article>div{display:grid;gap:3px;font-size:.72rem;color:#56677e}.employee-calendar article>div b{color:#162a42}.employee-calendar article>div a{color:#2564a4;text-decoration:none}.employee-calendar footer{display:flex;justify-content:space-between;align-items:end;margin-top:auto;font-size:.65rem;color:#718096}.employee-calendar footer b.positive{color:#168154}.employee-calendar footer b.negative{color:#c95c50}.employee-history-forms{display:grid;grid-template-columns:1fr 1fr;gap:18px}.employee-form-card{background:#fff;border:1px solid #e1e9f1;border-radius:18px;padding:21px;display:grid;gap:12px}.employee-form-card label{display:grid;gap:5px;color:#485b71;font-size:.78rem;font-weight:700}.employee-form-card input,.employee-form-card select,.employee-form-card textarea{border:1px solid #dce6ef;border-radius:9px;padding:9px;font:inherit;font-weight:400;min-width:0}.employee-form-card button{margin-top:4px}.employee-request-list>div{display:grid;gap:8px;margin-top:15px}.employee-request-list article{display:grid;grid-template-columns:1fr auto;gap:3px;padding:10px 0;border-bottom:1px solid #edf1f5}.employee-request-list article span{font-size:.78rem;color:#6e7d91}.employee-request-list article small{grid-column:2;grid-row:1/3;align-self:center}.employee-auth-card{max-width:460px}.employee-company-list{display:grid;gap:10px}.employee-company-option{border:1px solid #dae5ef!important;background:#fff!important;color:#18314c!important;display:flex!important;align-items:center;gap:12px;text-align:left;padding:14px!important;box-shadow:none!important}.employee-company-option span:nth-child(2){display:grid;gap:3px}.employee-company-option small{color:#75839a}.employee-company-option i{margin-left:auto;font-style:normal;font-size:1.1rem}
.receipt-page{max-width:680px}.employee-receipt{max-width:520px;margin:5vh auto;background:#fff;border:1px solid #dfe8f0;border-radius:24px;padding:37px;text-align:center;box-shadow:0 18px 45px #18314c18}.employee-receipt-check{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 14px;border-radius:50%;background:#dff8ea;color:#168154;font-size:1.5rem;font-weight:800}.employee-receipt h1{margin:7px 0;font-size:1.45rem}.receipt-time{font-size:3.2rem;letter-spacing:-.06em;color:#183d63}.employee-receipt p{color:#687990;font-size:.88rem}.employee-receipt dl{text-align:left;margin:27px 0;display:grid;gap:10px}.employee-receipt dl div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #edf1f5;padding-bottom:9px;font-size:.82rem}.employee-receipt dt{color:#748297}.employee-receipt dd{margin:0;text-align:right;font-weight:700;color:#283a4e}
.time-clock-pending-list{display:grid;gap:0}.time-clock-pending-list article{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.8fr);gap:22px;padding:17px 0;border-bottom:1px solid #e7edf3}.time-clock-pending-list p{margin:5px 0;color:#63748a;font-size:.86rem}.time-clock-pending-list form{display:grid;gap:8px}.time-clock-pending-list textarea{border:1px solid #dce5ee;border-radius:8px;padding:8px;font:inherit}.time-clock-pending-list form>div{display:flex;gap:7px;flex-wrap:wrap}.time-clock-pending-list button{border:0;border-radius:8px;background:#173d63;color:white;padding:8px 11px;font-weight:700;cursor:pointer}.time-clock-pending-list .button.secondary{background:#edf3f8;color:#263f58}
@media(max-width:760px){.employee-portal{padding:18px 13px 38px}.employee-portal-top{margin-bottom:22px}.employee-portal-brand img{width:101px}.employee-greeting{align-items:flex-start;flex-direction:column;gap:13px}.employee-live-clock{width:100%;box-sizing:border-box}.employee-punch-card{padding:21px 17px;border-radius:19px}.employee-mark-grid{grid-template-columns:repeat(2,1fr)}.employee-month-summary>div{grid-template-columns:repeat(2,1fr)}.employee-quick-actions{grid-template-columns:1fr}.employee-history-head{align-items:flex-start;flex-direction:column}.employee-calendar{grid-template-columns:1fr 1fr;gap:8px}.employee-calendar article{min-height:124px;padding:10px}.employee-history-forms{grid-template-columns:1fr}.employee-receipt{padding:25px 17px!important}.employee-portal-top>div{gap:11px}.employee-portal-top a{font-size:.78rem}}
@media print{.employee-portal-top,.employee-receipt button{display:none}.employee-receipt{box-shadow:none!important;border:0!important}}

/* Blue Horizon deve permanecer como a última camada de tema. */
.main-nav .nav-group>summary{color:#547689}.main-nav .nav-group>summary:hover,.main-nav .nav-group.current>summary{color:#057aa8;background:rgba(255,255,255,.72)}.main-nav .nav-group>div{border-color:#c8e4ef}.main-nav .nav-group a{color:#638396}.main-nav .nav-group a:hover{color:#067ca9;background:#edf9fd}.main-nav .nav-group a.active{color:#056c95;background:#dff4fb;box-shadow:inset 2px 0 #0ea5e9}
.app-body .page-head{border-color:#d9eaf2}.app-body .page-head h1{color:#143a53}.app-body .panel,.app-body .card,.app-body .form-grid,.app-body .table-wrap,.app-body .filter-panel{border-color:#d7e9f2;box-shadow:0 10px 30px rgba(19,104,145,.065)}.app-body .panel,.app-body .form-grid{background:linear-gradient(180deg,#fff,#fbfeff)}.app-body .card:hover{border-color:#bce1ef;box-shadow:0 16px 34px rgba(19,104,145,.10)}.app-body input,.app-body select,.app-body textarea{border-color:#cfe3ed}.app-body input:focus,.app-body select:focus,.app-body textarea:focus{border-color:#27afe0;box-shadow:0 0 0 4px rgba(14,165,233,.12)}.app-body .button.secondary,.app-body button.secondary{border-color:#d4e8f1;color:#3e657b;background:#edf7fb}.app-body .table-wrap thead th{color:#54758a;background:#edf7fb}.app-body .table-wrap tbody tr:hover td{background:#f1faff}.app-body .record-actions a:hover,.app-body .actions a:hover,.app-body .edit-link:hover{background:#e4f5fb}
.app-body .dashboard-command-head{border-color:#0e91c4!important;background:radial-gradient(circle at 88% 4%,rgba(125,211,252,.38),transparent 28%),linear-gradient(124deg,#075b82,#0ea5d7 58%,#62c9ed)!important;box-shadow:0 18px 42px rgba(7,104,148,.20)!important}.dashboard-command-head .eyebrow{color:#d8f5ff!important}.dashboard-command-head h1 em{color:#d9f6ff!important}.dashboard-command-head p{color:#d7f2fc!important}.dashboard-command-chips span{color:#e8f9ff;background:rgba(255,255,255,.12)}.app-body .home-modules,.app-body .executive-panel,.app-body .executive-pulse-card{border:1px solid #d9ebf3!important;box-shadow:0 12px 31px rgba(13,105,146,.075)!important}.app-body .home-module-card{border-color:#d8eaf2!important;background:linear-gradient(145deg,#fff,#f5fbfe)!important}.app-body .home-module-card:hover{border-color:#75cce9!important}.app-body .funnel-stage{border-color:#d8e9f1!important;background:#f6fbfd!important}
.saas-public-body,.saas-landing{background:#f7fcff!important}.saas-landing{--ink:#123b56;--muted:#648197;--line:#d7eaf3;--gold:#0ea5e9;--blue:#0789bc}.saas-topbar{border-bottom:1px solid rgba(207,232,242,.75);background:rgba(255,255,255,.88);backdrop-filter:blur(18px)}.saas-topbar a{color:#426c83}.saas-button{color:#fff!important;background:linear-gradient(135deg,#2bc0ef,#087eae);box-shadow:0 12px 24px rgba(6,136,185,.22)}.saas-button:hover{box-shadow:0 16px 30px rgba(6,136,185,.28)}.saas-kicker{color:#0781b0}.saas-kicker i{background:#38bdf8;box-shadow:0 0 0 5px rgba(56,189,248,.15)}.saas-hero h1 strong{color:#0789bc}.saas-secondary-action span{color:#0789bc}.saas-product-preview{border-color:#d3e9f2;box-shadow:0 26px 60px rgba(15,114,157,.15)}.saas-product-preview:before{background:#9de1f6}.saas-product-preview>header>b{color:#fff;background:linear-gradient(145deg,#36c4ef,#087ead)}.preview-chart{background:#eff9fd}.preview-chart i{background:linear-gradient(#70d1ef,#0788bb)}.saas-logo-strip{color:#d9f4fe;background:linear-gradient(90deg,#075579,#0b8cbc)}.saas-logo-strip i{background:#79daf5}.saas-principles span{color:#0787b8}.saas-module{--accent:#0787b8;--tint:#e5f6fc;border-color:#d8eaf2;box-shadow:0 11px 27px rgba(18,105,145,.055)}.saas-module:hover{border-color:#66c8e8;box-shadow:0 20px 38px rgba(18,105,145,.11)}.saas-module.check{--accent:#386fd1;--tint:#eef2ff}.saas-module.people{--accent:#0d927f;--tint:#e6f8f4}.saas-builder,.build-system-section{background:radial-gradient(circle at 86% 2%,#58c6e9 0,transparent 30%),linear-gradient(135deg,#064c70,#0b86b6)}.saas-builder .saas-kicker,.build-system-section .eyebrow{color:#d8f6ff}.builder-card label.selected{border-color:#67d2f0;color:#e7faff;background:rgba(75,196,232,.14)}.builder-card label i{color:#bceeff}.assistant-showcase header>b{background:linear-gradient(145deg,#36c3ef,#087dab)}.assistant-showcase .mine,.assistant-showcase footer b{background:#0789bc}.saas-final{background:radial-gradient(circle at 85% 10%,rgba(137,221,247,.5),transparent 33%),linear-gradient(135deg,#075b82,#0da5d5);box-shadow:0 25px 60px rgba(6,111,154,.18)}

/* Hero da pagina inicial: produto real em destaque ao lado do teste. */
.saas-topbar{max-width:none;padding-right:clamp(28px,7vw,138px);padding-left:clamp(28px,7vw,138px)}
.saas-landing>main{width:100%;margin-left:0}
.saas-hero{grid-template-columns:minmax(0,.83fr) minmax(590px,1.17fr);gap:clamp(45px,5vw,96px);max-width:none;min-height:690px;padding:70px clamp(32px,7vw,138px) 82px;background:#f3fbff}
.saas-hero::before{display:none}
.saas-section,.saas-footer{max-width:1480px}
.saas-product-demo{width:100%;max-width:870px;justify-self:end;margin:0;overflow:hidden;border:1px solid #b8dce9;border-radius:8px;background:#fff;box-shadow:0 22px 46px rgba(10,97,135,.18)}
.saas-product-demo figcaption{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;border-bottom:1px solid #d8e9f0;background:#fff}
.saas-product-demo figcaption span{display:inline-flex;align-items:center;gap:7px;color:#087da7;font-size:9px;font-weight:900;letter-spacing:.7px}
.saas-product-demo figcaption i{display:block;width:7px;height:7px;border-radius:50%;background:#27ba7a;box-shadow:0 0 0 4px #e0f7ed}
.saas-product-demo figcaption strong{color:#1e4a62;font-size:12px}
.saas-demo-screen{display:block;line-height:0;background:#eaf6fb}
.saas-demo-screen img{display:block;width:100%;height:auto;transition:transform .25s ease}
.saas-demo-screen:hover img{transform:scale(1.012)}
.saas-demo-foot{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:12px 16px;border-top:1px solid #d8e9f0;color:#56788a;background:#fbfeff;font-size:10px}
.saas-demo-foot b{color:#17445d;font-size:11px}
@media(max-width:1180px){.saas-hero{grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);gap:42px;padding-right:38px;padding-left:38px}.saas-product-demo{max-width:720px}}
@media(max-width:920px){.saas-hero{grid-template-columns:1fr;min-height:0;padding-top:48px}.saas-product-demo{justify-self:stretch;max-width:800px}.saas-hero-copy{max-width:700px}}
@media(max-width:600px){.saas-hero{gap:30px;padding:38px 18px 48px}.saas-product-demo figcaption{align-items:flex-start;flex-direction:column;gap:5px;padding:11px 12px}.saas-demo-foot{align-items:flex-start;flex-direction:column;gap:3px;padding:11px 12px}.saas-product-demo{border-radius:6px}}
.checklist-studio{--studio-yellow:#0ea5e9;--studio-line:#d6e8f1;--studio-soft:#f2f9fc}.checklist-studio-toolbar{border-color:#d5eaf3;background:rgba(255,255,255,.94);box-shadow:0 9px 25px rgba(11,106,148,.08)}.checklist-studio-section{border-color:#d8e9f1;box-shadow:0 7px 22px rgba(14,105,144,.05)}.checklist-studio-section>summary:hover{background:#f1faff}.checklist-quick-add>summary{border-color:#69c9e9;color:#076f99;background:#eefaff}.checklist-quick-add>form{border-color:#9bd9ed;background:#fbfeff}.checklist-new-section{border-color:#70cae8;background:#eefaff}.checklist-new-section>summary{color:#076d96}.checklist-empty-section>span,.checklist-studio-empty>span{color:#fff;background:linear-gradient(145deg,#39c2ef,#087eae)}.checklist-studio-help li>b{color:#076f99;background:#dff4fb}.checklist-studio-publish{border-color:#8ed4eb;background:linear-gradient(145deg,#fbfeff,#eaf8fd)}.checklist-camera-button{border-color:#65c6e7;color:#076d97;background:#eefaff}.checklist-sticky-actions{border-color:#8dd5ed;background:rgba(239,250,254,.96)}
.employee-portal-body{background:#f3fafd;color:#183a51}.employee-punch-card{background:radial-gradient(circle at 91% 5%,#44bde6 0,#0b719d 42%,#075274 100%);box-shadow:0 19px 44px rgba(7,91,130,.24)}.employee-punch-button{color:#fff;background:linear-gradient(135deg,#2bc0ef,#087eae)}.employee-day-marks,.employee-month-summary,.employee-request-list,.employee-quick-actions a,.employee-calendar article,.employee-form-card,.employee-receipt{border-color:#d9eaf2;box-shadow:0 9px 26px rgba(14,105,144,.05)}.employee-quick-actions a>span{color:#087fae;background:#e1f4fb}.employee-history-head button,.employee-form-card button,.employee-receipt button,.time-clock-pending-list button{background:#087dab}

/* Checklist — paleta Blue Horizon completa */
.checklist-page-head,
.checklist-hero {
  border: 1px solid #d6ebf4!important;
  background:
    radial-gradient(circle at 92% 10%,rgba(103,207,239,.24),transparent 28%),
    linear-gradient(135deg,#fff 0%,#f1faff 100%)!important;
  box-shadow: 0 14px 34px rgba(12,111,153,.08)!important;
}
.checklist-hero { border-left: 4px solid #16a9dc!important; }
.checklist-hero h1,
.checklist-page-head h1 { color: #123d57!important; }
.checklist-hero p,
.checklist-page-head p { color: #658397!important; }
.checklist-subnav {
  border: 1px solid #d4e9f2;
  background: rgba(255,255,255,.9);
  box-shadow: 0 9px 25px rgba(11,106,148,.06);
  backdrop-filter: blur(12px);
}
.checklist-subnav a { color: #52778c; }
.checklist-subnav a:hover { color: #067da9; background: #edf9fd; }
.checklist-subnav a.active { color: #fff; background: linear-gradient(135deg,#2bc0ef,#087eae); }

.checklist-summary-card,
.checklist-template-card,
.checklist-order-card,
.checklist-equipment-card,
.checklist-start-card,
.checklist-order-overview,
.checklist-register-section,
.checklist-create-box {
  border-color: #d7eaf3!important;
  background: linear-gradient(145deg,#fff,#f7fcfe)!important;
  box-shadow: 0 10px 28px rgba(13,105,146,.065)!important;
}
.checklist-summary-card:hover,
.checklist-template-card:hover,
.checklist-order-card:hover,
.checklist-equipment-card:hover {
  border-color: #6ac9e8!important;
  box-shadow: 0 16px 34px rgba(10,126,174,.12)!important;
  transform: translateY(-2px);
}
.checklist-summary-card strong,
.checklist-template-card h2,
.checklist-order-card h2,
.checklist-order-overview h2 { color: #153e58!important; }
.checklist-order-date,
.checklist-item-code,
.checklist-builder-section details>summary { color: #087da9!important; }
.checklist-template-icon,
.checklist-execution-icon,
.checklist-template-list b,
.checklist-sequence,
.checklist-section-number {
  color: #fff!important;
  background: linear-gradient(145deg,#39c2ef,#087eae)!important;
  box-shadow: 0 7px 16px rgba(7,132,180,.18);
}
.checklist-order-list>a,
.checklist-template-list>a { border-color: #e0edf3!important; }
.checklist-order-list>a:hover,
.checklist-template-list>a:hover { background: #f1faff; }

.checklist-builder-section,
.checklist-studio-section,
.checklist-studio-side-card,
.checklist-studio-panel {
  border-color: #d7eaf3!important;
  background: #fff!important;
  box-shadow: 0 9px 27px rgba(13,105,146,.06)!important;
}
.checklist-builder-section>header,
.checklist-studio-section>summary,
.checklist-item-summary { background: linear-gradient(135deg,#f5fbfe,#edf8fc)!important; }
.checklist-builder-section>header:hover,
.checklist-studio-section>summary:hover { background: #eaf8fd!important; }
.checklist-add-item,
.checklist-add-section,
.checklist-add-status,
.checklist-quick-add>form,
.checklist-new-section,
.checklist-inline-form {
  border-color: #83d0e9!important;
  background: #f4fbfe!important;
}
.checklist-add-item>summary,
.checklist-add-section>summary,
.checklist-add-status>summary,
.checklist-new-section>summary,
.checklist-quick-add>summary { color: #076f99!important; }
.checklist-publish-card,
.checklist-studio-publish {
  border-color: #86d2eb!important;
  background: linear-gradient(145deg,#fbfeff,#e9f8fd)!important;
  box-shadow: 0 13px 30px rgba(8,127,173,.1)!important;
}
.checklist-studio-toolbar {
  border-color: #d5eaf3!important;
  background: rgba(255,255,255,.95)!important;
  box-shadow: 0 10px 30px rgba(11,106,148,.09)!important;
}
.checklist-studio-version nav a.active,
.checklist-inline-settings[open]>summary,
.checklist-item-editor[open]>summary {
  color: #066f99!important;
  background: #dff4fb!important;
}
.checklist-item-order b,
.checklist-studio-item:first-child .checklist-item-badges span:first-child {
  color: #06769f!important;
  background: #ddf4fb!important;
}
.checklist-empty-section,
.checklist-studio-empty { border-color: #acddec!important; background: #f7fcfe!important; }

.checklist-progress {
  border-color: #cce6f1!important;
  background: rgba(255,255,255,.96)!important;
  box-shadow: 0 11px 29px rgba(11,106,148,.1)!important;
  backdrop-filter: blur(12px);
}
.checklist-progress>div { background: #dceef6!important; }
.checklist-progress i { background: linear-gradient(90deg,#41c7ef,#087eae)!important; }
.checklist-field-section { border-color: #d4e8f1!important; box-shadow: 0 10px 30px rgba(13,105,146,.07)!important; }
.checklist-field-section>header {
  background:
    radial-gradient(circle at 91% 0,rgba(125,211,252,.28),transparent 32%),
    linear-gradient(135deg,#075675,#0b91c2)!important;
}
.checklist-field-section>header p { color: #d4f3fd!important; }
.checklist-field-item { border-color: #dcecf3!important; }
.checklist-field-item>header { background: #f2f9fc!important; }
.checklist-field-item>header>span { color: #0780ad!important; }
.checklist-field-item h3 { color: #173f59!important; }
.checklist-answer { background: #fff!important; }
.checklist-status-picker span {
  border-color: #d5e8f0;
  color: #3f6479;
  background: #fff;
  box-shadow: 0 3px 10px rgba(13,105,146,.035);
}
.checklist-status-picker input:checked+span {
  border-color: var(--status-color);
  background: color-mix(in srgb,var(--status-color) 8%,#fff);
}
.checklist-boolean-picker label,
.checklist-choice-grid label { border-color: #d7e9f1!important; background: #fbfeff; }
.checklist-boolean-picker label:has(input:checked),
.checklist-choice-grid label:has(input:checked) {
  border-color: #58c3e6!important;
  color: #066f98;
  background: #e9f8fd;
  box-shadow: 0 0 0 3px rgba(14,165,233,.1);
}
.checklist-measurement span { border-color: #cfe5ef!important; color: #28708d!important; background: #edf8fc!important; }
.checklist-note { color: #4f7489!important; }

.checklist-photo-area,
.checklist-section-reference-photos,
.checklist-signature-grid { border-color: #d8eaf2!important; }
.checklist-photo-grid figure,
.checklist-signature-list>div,
.signature-form canvas {
  border-color: #cfe6f0!important;
  background: #f8fcfe!important;
  box-shadow: 0 7px 18px rgba(14,105,144,.045);
}
.checklist-camera-button {
  border-color: #63c7e8!important;
  color: #066f98!important;
  background: #eaf9fd!important;
}
.checklist-camera-button:hover { border-color: #159fce!important; background: #dcf4fb!important; }
.checklist-conclusion {
  border-color: #cfe7f1!important;
  background: linear-gradient(145deg,#fff,#f0faff)!important;
}
.checklist-sticky-actions {
  border-color: #84d2eb!important;
  background: rgba(239,250,254,.97)!important;
  box-shadow: 0 12px 34px rgba(9,111,153,.16)!important;
}
.checklist-sticky-actions .button:not(.secondary),
.checklist-studio-actions .button:not(.secondary),
.checklist-form-primary button,
.checklist-order-form button[type="submit"] {
  color: #fff!important;
  background: linear-gradient(135deg,#2bc0ef,#087eae)!important;
  box-shadow: 0 9px 19px rgba(6,136,185,.2)!important;
}

@media(max-width:720px) {
  .checklist-hero,
  .checklist-page-head { border-radius: 14px!important; }
  .checklist-progress { border-radius: 12px!important; }
  .checklist-field-section { border-radius: 13px!important; }
  .checklist-sticky-actions { background: rgba(243,251,254,.99)!important; }
}

/* Acesso direto aos relatórios de checklist */
.checklist-execution-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 3px;border-bottom:1px solid #dcebf2}.checklist-execution-row:last-child{border-bottom:0}.checklist-execution-main{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-width:0;padding:3px 0;color:#23485e;text-decoration:none}.checklist-execution-main:hover{color:#087eae}.checklist-execution-pdf{display:inline-flex;align-items:center;justify-content:center;min-height:31px;padding:0 10px;border:1px solid #82d1e9;border-radius:8px;color:#08739c;background:#effbff;font-size:9px;font-weight:900;text-decoration:none}.checklist-execution-pdf:hover{color:#fff;background:#087eae}.checklist-report-panel{padding:18px}.checklist-report-list{display:grid}.checklist-report-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 2px;border-bottom:1px solid #dcebf2}.checklist-report-row:last-child{border-bottom:0}.checklist-report-row strong,.checklist-report-row small{display:block}.checklist-report-row strong{color:#23485e;font-size:11px}.checklist-report-row small{margin-top:3px;color:#71879a;font-size:8px}.checklist-report-row>a:not(.button){min-width:0;text-decoration:none}.checklist-report-row>a:not(.button):hover strong{color:#087eae}.checklist-report-row .button{min-height:34px;padding:0 12px}
@media(max-width:720px){.checklist-execution-main{grid-template-columns:34px minmax(0,1fr) auto}.checklist-execution-main>.tag{grid-column:2/-1;justify-self:start}.checklist-execution-row{align-items:start}.checklist-execution-pdf{margin-top:3px}.checklist-report-row{grid-template-columns:32px minmax(0,1fr)}.checklist-report-row .button{grid-column:2;justify-self:start}}

/* Aquisição, teste gratuito e contratação modular */
.trial-register-body{background:#eef7fa!important}.trial-register-shell{width:min(1040px,calc(100% - 32px));min-height:calc(100vh - 48px);margin:24px auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.75fr);border:1px solid #cfe3eb;background:#fff;box-shadow:0 24px 70px rgba(22,70,92,.14)}.trial-register-card{padding:34px 44px}.trial-register-card .register-brand-logo{display:block;margin:26px 0 28px}.trial-register-card .login-heading{margin-bottom:24px}.trial-register-card .login-heading h1{max-width:620px;font-size:clamp(1.8rem,3vw,2.7rem);letter-spacing:0}.trial-register-form{display:grid;gap:16px}.trial-register-form>label{display:grid;gap:7px;color:#23475a;font-size:.82rem;font-weight:800}.trial-register-form input{width:100%;box-sizing:border-box;border:1px solid #c8dce5;border-radius:7px;padding:13px 14px;font:inherit;background:#fff}.trial-register-form input:focus{outline:0;border-color:#0798c8;box-shadow:0 0 0 4px rgba(7,152,200,.12)}.trial-register-form label>small{color:#6b8390;font-weight:500}.trial-register-form>button{min-height:48px;border:0;border-radius:7px;color:#fff;background:#057ca7;font-weight:900;cursor:pointer}.password-input-wrap{position:relative;display:block}.password-input-wrap input{padding-right:82px}.password-input-wrap button{position:absolute;right:6px;top:6px;bottom:6px;border:0;background:#e8f5f9;color:#176079;border-radius:5px;padding:0 11px;font-weight:800;cursor:pointer}.field-error{color:#bd2938!important;font-size:.74rem!important;font-weight:800!important}.form-error{margin-bottom:15px;border-left:3px solid #c93443;background:#fff0f1;padding:10px 12px}.signup-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.trial-register-assurance{margin:17px 0 8px;color:#476978;font-size:.78rem}.trial-register-legal{margin:0;color:#718792;font-size:.7rem}.trial-register-legal a{color:#087ba4}.trial-register-side{display:flex;flex-direction:column;justify-content:center;padding:54px 40px;color:#fff;background:#123f51}.trial-register-side .eyebrow{color:#ffcc3d}.trial-register-side h2{margin:10px 0 28px;font-size:1.8rem;letter-spacing:0}.trial-register-side ul{display:grid;gap:16px;margin:0;padding:0;list-style:none}.trial-register-side li{position:relative;padding-left:25px;color:#deedf1;font-size:.88rem}.trial-register-side li:before{content:'✓';position:absolute;left:0;color:#ffca2f;font-weight:900}.legacy-login-fields{border:1px solid #dbe6eb;padding:10px 12px}.legacy-login-fields summary{cursor:pointer;color:#52717f;font-size:.76rem;font-weight:800}.legacy-login-fields[open]{display:grid;gap:10px}.legacy-login-fields[open] summary{margin-bottom:8px}
.onboarding-shell{max-width:1120px;margin:0 auto;padding:20px 0 60px}.onboarding-head{max-width:760px;margin-bottom:28px}.onboarding-head h1{margin:8px 0 10px;font-size:2.2rem;letter-spacing:0;color:#173f52}.onboarding-head p{color:#69818e}.onboarding-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.onboarding-module-card{position:relative;display:grid;grid-template-columns:44px 1fr;gap:6px 14px;min-height:190px;padding:22px;border:1px solid #cfe0e8;background:#fff;cursor:pointer;box-sizing:border-box}.onboarding-module-card input{position:absolute;opacity:0}.onboarding-module-card .module-select-mark{grid-row:1/4;display:grid;place-items:center;width:40px;height:40px;border:1px solid #b9d0da;color:transparent;background:#f6fafb;font-weight:900}.onboarding-module-card>strong{font-size:1.03rem;color:#1e4658}.onboarding-module-card p{margin:0;color:#5d7784;font-size:.85rem;line-height:1.55}.onboarding-module-card small{color:#78909a;line-height:1.5}.onboarding-module-card.selected{border-color:#0798c8;box-shadow:0 0 0 3px rgba(7,152,200,.1)}.onboarding-module-card.selected .module-select-mark{border-color:#0798c8;color:#fff;background:#0798c8}.onboarding-module-card.all{border-color:#dfb11e;background:#fffdf5}.onboarding-submit{display:block;min-width:240px;min-height:48px;margin:24px auto 0;border:0;border-radius:7px;color:#fff;background:#087ea9;font-weight:900;cursor:pointer}.onboarding-submit:disabled{opacity:.45;cursor:not-allowed}
.first-steps-page,.checklist-first-steps{max-width:1080px;margin:0 auto}.first-steps-page>header,.checklist-first-steps>header{padding:24px 0;border-bottom:1px solid #d6e5eb}.first-steps-page h1,.checklist-first-steps h1{margin:7px 0;font-size:2rem;letter-spacing:0;color:#173f52}.first-steps-page header p,.checklist-first-steps header p{color:#68818d}.first-steps-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:28px 0;padding:0;list-style:none}.first-steps-list li{min-height:120px;padding:18px;border-top:3px solid #12a0cc;background:#fff;box-shadow:0 8px 24px rgba(22,72,91,.07)}.first-steps-list li span{display:grid;place-items:center;width:30px;height:30px;margin-bottom:18px;border-radius:50%;color:#fff;background:#12617d;font-weight:900}.first-steps-list strong{font-size:.84rem;color:#234b5d}.first-steps-actions{display:flex;gap:10px}.checklist-start-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:24px 0;padding:0;list-style:none;background:#dce8ed}.checklist-start-progress li{display:flex;align-items:center;gap:9px;min-height:58px;padding:10px 13px;color:#69818d;background:#f6fafb;font-size:.78rem;font-weight:900}.checklist-start-progress li.active,.checklist-start-progress li.done{color:#08779e;background:#e6f7fc}.checklist-start-progress li span{font-weight:700}.starter-choice-band{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0}.starter-choice-band h2{margin:0 0 4px;font-size:1.2rem}.starter-choice-band p{margin:0;color:#6a818c;font-size:.82rem}.starter-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.starter-model-grid article{display:grid;grid-template-columns:34px 1fr;gap:7px 11px;min-height:180px;padding:18px;border:1px solid #d4e4ea;background:#fff}.starter-model-grid article>span{grid-row:1/4;display:grid;place-items:center;width:30px;height:30px;color:#fff;background:#0a8eb9;font-weight:900}.starter-model-grid h3{margin:3px 0 0;font-size:.94rem}.starter-model-grid p{margin:0;color:#6b818d;font-size:.76rem;line-height:1.5}.starter-model-grid form{grid-column:2;align-self:end}.starter-model-grid button{min-height:36px;border:0;border-radius:6px;color:#fff;background:#087ea9;padding:0 13px;font-weight:800;cursor:pointer}
.trial-center-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px 30px;margin-bottom:18px;padding:24px;border-left:4px solid #08a0ce;background:#eefaff}.trial-center-summary.expired{border-left-color:#d59913;background:#fff9e9}.trial-center-summary h2{margin:6px 0;font-size:1.25rem;letter-spacing:0}.trial-center-summary p{max-width:700px;margin:0;color:#587583;font-size:.84rem;line-height:1.55}.trial-center-summary dl{display:grid;grid-template-columns:repeat(2,minmax(100px,1fr));gap:12px;margin:0}.trial-center-summary dl div{display:grid;gap:3px}.trial-center-summary dt{color:#6b8490;font-size:.68rem;font-weight:800;text-transform:uppercase}.trial-center-summary dd{margin:0;color:#18475b;font-size:.94rem;font-weight:900}.trial-no-charge{grid-column:1/-1;color:#087ca3;font-size:.76rem}.subscription-module-card{display:grid!important;grid-template-columns:36px minmax(0,1fr) auto!important;gap:12px!important}.subscription-module-card>form{grid-column:2/-1;justify-self:end}.subscription-module-card>form button{min-height:34px;border:0;border-radius:6px;color:#fff;background:#087ea9;padding:0 12px;font-size:.72rem;font-weight:800;cursor:pointer}.subscription-module-card>form button.secondary{color:#51717f;background:#edf4f6}.contract-invitation-band{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:18px;padding:24px;border:1px solid #cfe2e9;background:#fff}.contract-invitation-band h2{margin:5px 0;font-size:1.2rem}.contract-invitation-band p{margin:0;color:#667f8b;font-size:.8rem}.account-state-banner{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px;padding:11px 14px;border-left:4px solid #e1ae15;background:#fff9e6;color:#5f511e;font-size:.77rem}.account-state-banner.read-only{border-left-color:#c76e29;background:#fff3eb}.account-state-banner a{white-space:nowrap;color:#0a6e91;font-weight:900}
.contract-builder-page{max-width:1120px;margin:0 auto;padding-bottom:100px}.contract-builder-head{display:flex;justify-content:space-between;align-items:center;gap:18px;padding-bottom:20px;border-bottom:1px solid #d6e5eb}.contract-builder-head h1{margin:6px 0;font-size:2rem;letter-spacing:0}.contract-builder-head p{margin:0;color:#68808c}.contract-section{padding:25px 0;border-bottom:1px solid #d6e5eb}.contract-section>header{display:flex;gap:13px;margin-bottom:17px}.contract-section>header>b{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border-radius:50%;color:#fff;background:#11607c}.contract-section>header h2{margin:1px 0 3px;font-size:1.08rem}.contract-section>header p{margin:0;color:#6c818b;font-size:.78rem}.contract-module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.contract-module-grid label{position:relative;display:grid;grid-template-columns:28px 1fr;gap:5px 9px;min-height:130px;padding:17px;border:1px solid #ccdde4;background:#fff;cursor:pointer}.contract-module-grid input{position:absolute;opacity:0}.contract-module-grid label>span{grid-row:1/4;display:grid;place-items:center;width:25px;height:25px;border:1px solid #b9cfd8;color:transparent}.contract-module-grid label>small{color:#6a818c}.contract-module-grid label>b{align-self:end;color:#0b769b;font-size:.78rem}.contract-module-grid label.selected{border-color:#0a96c4;background:#f0fbfe}.contract-module-grid label.selected>span{border-color:#0a96c4;color:#fff;background:#0a96c4}.contract-selection-list{display:grid;gap:7px}.contract-selection-list>label{display:grid;grid-template-columns:22px 36px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid #d8e5ea;background:#fff}.contract-selection-list input{width:18px;height:18px}.contract-person-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#fff;background:#13627d;font-weight:900}.contract-selection-list label>span:nth-of-type(2){display:grid;gap:2px}.contract-selection-list small{color:#718791;font-size:.7rem}.contract-selection-list label>b{font-size:.74rem;color:#21718c}.contract-compact-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.contract-compact-list label{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid #d5e4e9;background:#fff;font-size:.78rem;font-weight:700}.contract-tier-note{display:block;margin-top:10px;color:#6d828c}.contract-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.contract-form-grid label{display:grid;gap:6px;color:#486673;font-size:.76rem;font-weight:800}.contract-form-grid .contract-address-wide{grid-column:1/-1}.contract-form-grid input,.contract-form-grid select{width:100%;box-sizing:border-box;border:1px solid #cadce3;border-radius:6px;padding:11px;font:inherit;background:#fff}.contract-terms{display:flex;align-items:center;gap:9px;margin-top:15px;color:#456470;font-size:.78rem;font-weight:700}.contract-total-bar{position:fixed;left:var(--sidebar-w,250px);right:0;bottom:0;z-index:30;display:flex;align-items:center;justify-content:flex-end;gap:30px;padding:13px max(24px,calc((100vw - 1360px)/2));border-top:1px solid #bdd5df;background:rgba(255,255,255,.97);box-shadow:0 -9px 30px rgba(25,72,90,.1)}.contract-total-bar>div{display:grid;text-align:right}.contract-total-bar small,.contract-total-bar span{color:#6b818b;font-size:.67rem}.contract-total-bar strong{color:#087da7;font-size:1.35rem}.contract-total-bar button{min-height:44px;border:0;border-radius:7px;color:#fff;background:#0a7ea8;padding:0 20px;font-weight:900;cursor:pointer}.legal-page{max-width:760px;margin:30px auto;padding:38px;border:1px solid #d5e3e8;background:#fff}.legal-page>img{display:block;width:160px;margin:28px 0}.legal-page h1{font-size:2rem;letter-spacing:0}.legal-page p{color:#536f7c;line-height:1.7}
.module-public-body .login-main{display:block!important;padding:0!important}.module-public-body .content{max-width:none!important;padding:0!important}.module-public-page{color:#183e50;background:#fff}.module-public-nav{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:18px clamp(18px,5vw,74px);background:rgba(255,255,255,.94)}.module-public-nav img{width:150px}.module-public-nav>div{display:flex;align-items:center;gap:18px}.module-public-nav a{color:#234e60;text-decoration:none;font-weight:800}.module-public-nav .module-nav-cta{padding:10px 15px;color:#fff;background:#087da8}.module-public-hero{position:relative;min-height:min(760px,92vh);overflow:hidden}.module-public-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.module-public-overlay{position:absolute;inset:0;background:rgba(5,34,46,.66)}.module-public-copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;max-width:760px;min-height:min(760px,92vh);padding:70px clamp(20px,8vw,130px) 30px;color:#fff}.module-public-copy>span{color:#ffd24b;font-size:.74rem;font-weight:900}.module-public-copy h1{margin:13px 0;font-size:clamp(2.3rem,5vw,4.8rem);line-height:1.03;letter-spacing:0}.module-public-copy p{max-width:650px;color:#e7f1f4;font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.6}.module-public-copy>div{display:flex;gap:10px;flex-wrap:wrap;margin:17px 0}.module-primary-cta,.module-secondary-cta{display:inline-flex;align-items:center;min-height:48px;padding:0 18px;text-decoration:none;font-weight:900}.module-primary-cta{color:#153b4a;background:#ffd044}.module-secondary-cta{border:1px solid rgba(255,255,255,.6);color:#fff;background:rgba(255,255,255,.08)}.module-public-copy>small{color:#d6e7ec}.module-benefit-band{padding:70px clamp(20px,7vw,110px);background:#f2f8fa}.module-benefit-band header{max-width:680px}.module-benefit-band header span,.module-proof-band>div>span{color:#087fa9;font-size:.7rem;font-weight:900}.module-benefit-band h2,.module-proof-band h2{margin:8px 0 28px;font-size:clamp(1.6rem,3vw,2.7rem);letter-spacing:0}.module-benefit-band>div{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d3e2e8}.module-benefit-band article{display:flex;align-items:center;gap:11px;min-height:76px;padding:14px;background:#fff}.module-benefit-band article b{color:#0a8eb9}.module-benefit-band article strong{font-size:.78rem}.module-proof-band{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);align-items:center;gap:40px;padding:70px clamp(20px,7vw,110px)}.module-proof-band p{color:#607a86;line-height:1.6}.module-proof-band img{width:100%;max-height:620px;object-fit:contain;border:1px solid #cfe0e7;box-shadow:0 18px 50px rgba(21,70,90,.14)}.module-final-cta{padding:70px 20px;text-align:center;color:#fff;background:#123f51}.module-final-cta h2{margin:0;font-size:2rem;letter-spacing:0}.module-final-cta p{color:#dce9ed}.module-final-cta a{display:inline-flex;align-items:center;min-height:46px;margin-top:10px;padding:0 18px;color:#183e4c;background:#ffd044;text-decoration:none;font-weight:900}
@media(max-width:900px){.trial-register-shell{grid-template-columns:1fr}.trial-register-card{order:1}.trial-register-side{order:2}.onboarding-module-grid{grid-template-columns:1fr}.first-steps-list{grid-template-columns:repeat(2,1fr)}.starter-model-grid{grid-template-columns:repeat(2,1fr)}.contract-module-grid{grid-template-columns:1fr}.contract-compact-list{grid-template-columns:repeat(2,1fr)}.contract-total-bar{left:0}.module-benefit-band>div{grid-template-columns:repeat(2,1fr)}.module-proof-band{grid-template-columns:1fr}}
@media(max-width:600px){.trial-register-shell{width:100%;min-height:100vh;margin:0;border:0}.trial-register-card{padding:24px 18px}.trial-register-side{padding:36px 22px}.trial-register-card .login-heading h1{font-size:1.8rem}.onboarding-shell{padding:6px 0 40px}.onboarding-head h1{font-size:1.65rem}.onboarding-module-card{min-height:0;padding:16px}.first-steps-list,.starter-model-grid{grid-template-columns:1fr}.first-steps-actions,.starter-choice-band{align-items:stretch;flex-direction:column}.checklist-start-progress{grid-template-columns:1fr 1fr}.trial-center-summary{grid-template-columns:1fr;padding:18px}.trial-center-summary dl{grid-template-columns:1fr 1fr}.trial-no-charge{grid-column:1}.subscription-module-card{grid-template-columns:32px minmax(0,1fr)!important}.subscription-module-price{grid-column:2}.subscription-module-card>form{grid-column:2;justify-self:stretch}.subscription-module-card>form button{width:100%}.contract-invitation-band,.contract-builder-head{align-items:stretch;flex-direction:column}.contract-selection-list>label{grid-template-columns:22px 34px minmax(0,1fr)}.contract-selection-list label>b{grid-column:3}.contract-compact-list,.contract-form-grid{grid-template-columns:1fr}.contract-total-bar{justify-content:space-between;gap:10px;padding:10px 12px}.contract-total-bar>div{text-align:left}.contract-total-bar strong{font-size:1.05rem}.contract-total-bar button{padding:0 12px;font-size:.75rem}.account-state-banner{align-items:flex-start;flex-direction:column}.module-public-nav{padding:13px 16px}.module-public-nav img{width:120px}.module-public-nav>div>a:first-child{display:none}.module-public-copy{min-height:86vh;padding:90px 18px 26px}.module-public-copy h1{font-size:2.25rem}.module-public-copy>div{align-items:stretch;flex-direction:column}.module-primary-cta,.module-secondary-cta{justify-content:center;text-align:center}.module-benefit-band,.module-proof-band{padding:44px 18px}.module-benefit-band>div{grid-template-columns:1fr}.module-proof-band{gap:20px}.legal-page{margin:0;padding:28px 18px;border:0}}
.internal-username-field{display:none!important}
.checklist-onboarding-band,.checklist-growth-offer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0;padding:18px 20px;border-left:4px solid #0a9cca;background:#eefaff}.checklist-onboarding-band h2,.checklist-growth-offer h2{margin:4px 0;font-size:1rem}.checklist-onboarding-band p,.checklist-growth-offer p{margin:0;color:#63808d;font-size:.76rem}.checklist-growth-offer{border-left-color:#d6a613;background:#fff9e8}.checklist-growth-offer button{min-height:38px;border:0;border-radius:6px;color:#fff;background:#0a7ea8;padding:0 14px;font-weight:900;cursor:pointer}@media(max-width:600px){.checklist-onboarding-band,.checklist-growth-offer{align-items:stretch;flex-direction:column}.checklist-growth-offer button{width:100%}}

/* Demonstração pública do Checklist: campo no celular e relatório que chega ao cliente. */
.trial-register-side-copy{margin:-17px 0 22px;color:#dcecf1;font-size:.86rem;line-height:1.55}.checklist-product-proof{position:relative;display:grid;grid-template-columns:minmax(126px,.52fr) minmax(0,1fr);gap:14px;align-items:end;max-width:700px;margin:0 auto}.checklist-proof-heading{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between;gap:12px}.checklist-proof-heading span{color:#0b6f92;font-size:.62rem;font-weight:900;letter-spacing:0}.checklist-proof-heading strong{color:#173e51;font-size:.78rem}.trial-register-side .checklist-proof-heading span{color:#ffd045}.trial-register-side .checklist-proof-heading strong{color:#fff}.checklist-phone-preview{align-self:end;overflow:hidden;border:5px solid #173d4f;border-radius:24px;background:#fff;box-shadow:0 16px 30px rgba(0,0,0,.24);color:#173344}.checklist-phone-preview>header{display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:7px;align-items:center;padding:13px 10px 10px;background:#eef9fc}.checklist-phone-dot{display:block;width:7px;height:7px;border-radius:50%;background:#13a166}.checklist-phone-preview small{display:block;color:#5b7886;font-size:.48rem;font-weight:900;letter-spacing:.04em}.checklist-phone-preview header strong{display:block;margin-top:2px;font-size:.66rem}.checklist-phone-preview header>b{color:#087ca7;font-size:.63rem}.checklist-phone-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:0 10px 9px;background:#eef9fc}.checklist-phone-progress i{display:block;height:3px;background:#cfe8ef}.checklist-phone-progress i:nth-child(-n+2){background:#0a9dc8}.checklist-phone-item{display:grid;grid-template-columns:19px minmax(0,1fr) auto;gap:6px;align-items:center;margin:0 8px;padding:8px 2px;border-bottom:1px solid #e4ecef}.checklist-phone-item>span{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;color:#fff;background:#168e5c;font-size:.55rem;font-weight:900}.checklist-phone-item.is-alert>span{background:#d59310}.checklist-phone-item strong,.checklist-phone-item small{display:block}.checklist-phone-item strong{font-size:.59rem}.checklist-phone-item small{margin-top:2px;font-size:.48rem}.checklist-phone-item>b{padding:3px 4px;color:#fff;background:#168e5c;font-size:.48rem}.checklist-phone-item.is-alert>b{background:#d59310}.checklist-phone-photo{margin:8px}.checklist-phone-photo img{display:block;width:100%;height:76px;object-fit:cover}.checklist-phone-photo figcaption{padding:5px 6px;background:#f5f8f9;color:#607a87;font-size:.47rem;line-height:1.35}.checklist-phone-preview>p{margin:7px 9px;color:#4d6875;font-size:.49rem;line-height:1.42}.checklist-phone-preview>footer{display:flex;justify-content:space-between;gap:5px;padding:8px 9px;border-top:1px solid #e4ecef;color:#617984;font-size:.47rem}.checklist-phone-preview>footer b{color:#087da7}.checklist-report-preview{position:relative;min-width:0;margin:0;overflow:hidden;border:1px solid #c8dde5;border-radius:6px;background:#fff;box-shadow:0 16px 30px rgba(20,62,80,.2)}.checklist-report-label{display:flex;align-items:center;gap:7px;padding:9px 10px;border-bottom:1px solid #d9e6eb;color:#294f61}.checklist-report-label span{display:grid;place-items:center;width:23px;height:18px;border-radius:3px;color:#fff;background:#db4b43;font-size:.53rem;font-weight:900}.checklist-report-label strong{font-size:.62rem}.checklist-report-preview>img{display:block;width:100%;height:275px;object-fit:cover;object-position:top}.checklist-report-preview figcaption{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:8px 10px;color:#5d7784;font-size:.58rem}.checklist-report-preview figcaption button{border:0;color:#087ea8;background:transparent;font:inherit;font-weight:900;cursor:pointer}.checklist-report-dialog{width:min(92vw,900px);max-height:90vh;padding:13px;border:0;background:#fff;box-shadow:0 24px 70px rgba(9,36,48,.34)}.checklist-report-dialog::backdrop{background:rgba(5,30,42,.72)}.checklist-report-dialog form{display:flex;justify-content:flex-end}.checklist-report-close{width:32px;height:32px;border:0;border-radius:4px;color:#fff;background:#173d4f;font-size:1.25rem;cursor:pointer}.checklist-report-dialog img{display:block;max-width:100%;max-height:calc(90vh - 58px);margin:8px auto 0}.checklist-public-hero{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(460px,1.15fr);align-items:center;gap:38px;min-height:730px;padding:112px clamp(20px,7vw,110px) 54px;background:#eaf7fb}.checklist-public-hero .module-public-copy{position:static;z-index:auto;min-height:0;max-width:600px;padding:0;color:#173e51}.checklist-public-hero .module-public-copy>span{color:#087ca5}.checklist-public-hero .module-public-copy h1{color:#173e51;font-size:clamp(2.2rem,4vw,4rem)}.checklist-public-hero .module-public-copy p{color:#557481}.checklist-public-hero .module-secondary-cta{border-color:#9fbcc8;color:#285567;background:#fff}.checklist-public-hero .module-public-copy>small{color:#607e8c}.checklist-public-hero .checklist-product-proof{width:100%;max-width:660px;justify-self:end}.landing-proof .checklist-report-preview>img{height:348px}.register-proof{max-width:470px;margin:0}.register-proof .checklist-report-preview>img{height:220px}.register-proof .checklist-phone-photo img{height:58px}.register-proof .checklist-phone-preview{border-width:4px}.register-proof .checklist-phone-preview>header{padding:10px 8px 8px}.register-proof .checklist-phone-item{padding:6px 2px}.register-proof .checklist-phone-preview>footer{padding:6px 8px}.register-proof .checklist-report-preview figcaption{display:block}.register-proof .checklist-report-preview figcaption span{display:block;margin-bottom:4px}.trial-register-side .register-proof{margin:0 0 20px}.signup-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;white-space:nowrap!important}
@media(max-width:900px){.checklist-public-hero{grid-template-columns:1fr;gap:30px;min-height:0;padding-top:100px}.checklist-public-hero .checklist-product-proof{justify-self:stretch;max-width:720px}.landing-proof .checklist-report-preview>img{height:300px}}
@media(max-width:600px){.checklist-product-proof{grid-template-columns:minmax(104px,.5fr) minmax(0,1fr);gap:10px}.checklist-proof-heading{align-items:flex-start;flex-direction:column;gap:4px}.checklist-proof-heading strong{font-size:.72rem}.checklist-report-preview>img,.landing-proof .checklist-report-preview>img{height:232px}.checklist-report-preview figcaption{align-items:flex-start;flex-direction:column}.checklist-public-hero{padding:91px 18px 42px}.checklist-public-hero .module-public-copy h1{font-size:2.18rem}.register-proof{max-width:100%}.register-proof .checklist-report-preview>img{height:220px}.trial-register-side-copy{margin:-13px 0 20px}.trial-register-side .checklist-product-proof{margin-bottom:17px}.checklist-phone-preview{border-width:4px;border-radius:19px}.checklist-phone-photo img{height:62px}}
.signup-honeypot input{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;border:0!important;opacity:0!important;pointer-events:none!important}

/* Colaboradores: formulário e tabela não podem competir pela mesma largura. */
.app-body .employee-management-layout{grid-template-columns:minmax(400px,440px) minmax(0,1fr);gap:14px;align-items:start}
.app-body .employee-management-form{grid-template-columns:minmax(0,1fr);min-width:0;align-content:start}
.app-body .employee-management-form>label,.app-body .employee-management-form>.form-grid,.app-body .employee-management-form>.employee-access-fields,.app-body .employee-management-form .form-grid>label{min-width:0;width:100%}
.app-body .employee-management-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.app-body .employee-management-form .employee-identification-grid>label:last-child{grid-column:1/-1}
.app-body .employee-management-form input,.app-body .employee-management-form select{box-sizing:border-box;min-width:0;width:100%}
.app-body .employee-management-form .employee-access-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}
.app-body .employee-management-form .employee-access-fields>p{margin:0;color:#63808d;font-size:10px;line-height:1.45}
.app-body .employee-management-form label.inline-check{display:flex;align-items:center;gap:8px;width:100%;min-width:0;color:#274d62;font-size:10px;font-weight:750;line-height:1.35}
.app-body .employee-management-form label.inline-check>input[type=checkbox]{flex:0 0 auto;width:17px;height:17px;min-height:0;margin:0;padding:0;accent-color:#087eae}
.app-body .employee-documentation-panel{min-width:0;overflow:hidden}
.app-body .employee-documentation-panel .table-wrap{max-width:100%;overflow-x:auto}
@media(max-width:1180px){.app-body .employee-management-layout{grid-template-columns:minmax(360px,400px) minmax(0,1fr)}}
@media(max-width:980px){.app-body .employee-management-layout{grid-template-columns:1fr}.app-body .employee-management-form{max-width:none}}
@media(max-width:560px){.app-body .employee-management-form .form-grid{grid-template-columns:1fr}}
.app-body .employee-documentation-panel button.danger-link{width:auto;min-width:0;height:auto;min-height:28px;padding:5px 8px;border:1px solid #f1c7cd;border-radius:5px;color:#b82029!important;background:#fff4f4;box-shadow:none;font-size:9px!important;line-height:1.2}
.app-body .employee-documentation-panel button.danger-link::before{display:none}

/* Ação destrutiva nas tabelas: ícone Lucide visível e acessível. */
.app-body .record-actions .icon-danger-button{display:inline-flex;align-items:center;justify-content:center;width:30px;min-width:30px;height:30px;min-height:30px;padding:0;border:1px solid #f1c7cd;border-radius:5px;color:#b82029!important;background:#fff4f4!important;box-shadow:none!important;cursor:pointer}
.app-body .record-actions .icon-danger-button:hover{border-color:#dc8d97;background:#ffe7ea!important;transform:none}
.app-body .record-actions .icon-danger-button:focus-visible{outline:2px solid rgba(184,32,41,.25);outline-offset:2px}
.app-body .record-actions .icon-danger-button img{display:block;width:15px;height:15px}
