/* Layout e componentes do Precifica. Identidade e tokens: digital-dash.css. */

@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:wght@400;500;600;700;800&display=swap');
*{box-sizing:border-box}body{margin:0;background:linear-gradient(130deg,#e7ecef,#f8fbf9 60%,#eaf4ec);color:var(--ink);font:15px 'Bricolage Grotesque','Segoe UI',Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:linear-gradient(165deg,#163042 0%,#145344 72%,#78ab3a 145%);color:#fff;padding:24px 16px;display:flex;flex-direction:column;gap:26px}.logo{width:100%;border-radius:12px;display:block}.brand-caption{font-size:10px;letter-spacing:2px;color:#c9e4d7;padding:8px 8px 0}.nav{display:grid;gap:7px}.nav button{border:1px solid transparent;background:transparent;color:#e4efec;text-align:left;border-radius:12px;padding:11px 12px;display:flex;align-items:center;gap:11px;font-weight:600}.nav button:hover{background:#ffffff16}.nav button.active{background:var(--green);color:#163042;border-color:#a5d16d;box-shadow:0 7px 18px #071e2130}.nav .num{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:#ffffff20;font-size:11px}.nav .active .num{background:var(--navy);color:#fff}.sidefoot{margin-top:auto;color:#c5d8d6;font-size:12px;line-height:1.6}.main{min-width:0}.topbar{background:#ffffffed;border-bottom:3px solid var(--green);padding:16px 32px;display:flex;justify-content:space-between;align-items:center;gap:15px}.topbar strong{font-size:18px}.topbar small{color:var(--muted);font-weight:400}.toptools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.status{font-size:12px;color:var(--muted)}main{max-width:1500px;margin:auto;padding:28px 32px}.hero{min-height:300px;border-radius:20px;background:linear-gradient(100deg,#388f4eeb 0%,#206d59ed 38%,#163042c9 70%,#16304240 100%),url('assets/banner.svg') center/cover;display:flex;align-items:center;padding:35px;color:#fff;margin-bottom:26px;box-shadow:0 18px 40px #16304222}.hero-copy{max-width:650px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:#e0f4ce}.hero h1{font-size:clamp(30px,3.4vw,48px);line-height:1.08;margin:12px 0}.hero p{font-size:17px;line-height:1.5;color:#f0f8f3;max-width:550px}.heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:0 0 20px}.heading h1{font-size:28px;margin:0;letter-spacing:-.5px}.heading h1:after{content:'';display:block;width:48px;height:4px;border-radius:4px;background:var(--green);margin-top:10px}.heading p{margin:7px 0 0;color:var(--muted)}.btn{border:0;border-radius:10px;background:var(--green);color:#163042;font-weight:800;padding:11px 16px}.btn:hover{filter:brightness(.96)}.btn.secondary{background:#eef7f2;border:1px solid #b7d6c8;color:var(--navy)}.btn.danger{background:#fae9e9;color:#9d3434}.btn.small{font-size:12px;padding:7px 10px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 22px}.card,.panel{background:#fff;border:1px solid #d1e0de;border-radius:16px;padding:19px;box-shadow:var(--shadow)}.card{border-top:4px solid var(--mint)}.card:nth-child(2){border-top-color:var(--green)}.card:nth-child(3){border-top-color:var(--navy)}.card:nth-child(4){border-top-color:var(--mint)}.card small{color:var(--muted)}.card strong{display:block;font-size:25px;margin:9px 0 3px;color:var(--navy)}.card em{font-style:normal;font-size:12px;color:var(--muted)}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel{margin-bottom:16px}.panel h2{font-size:18px;margin:0 0 16px;color:var(--navy)}.hint{font-size:12px;color:var(--muted);line-height:1.5}.notice{padding:13px 15px;background:#e7f4e8;border-left:4px solid var(--green);border-radius:9px;color:#285c42;font-size:13px;line-height:1.5;margin:14px 0}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:640px}th,td{text-align:left;padding:12px 9px;border-bottom:1px solid var(--line);font-size:13px}th{color:var(--muted);font-weight:700}td strong{font-weight:700}.actions{display:flex;gap:6px;flex-wrap:wrap}.pill{display:inline-block;background:#e5f2dd;color:#48782b;border-radius:30px;padding:5px 9px;font-size:11px}.pill.warn{background:#fff1dc;color:#9a691b}.field{display:grid;gap:6px;margin:10px 0}.field label{font-size:13px;font-weight:700}.field input,.field select,.field textarea{width:100%;padding:11px;border:1px solid #cbd9da;border-radius:9px;background:#fff;color:var(--ink)}.field input:focus,.field select:focus{outline:3px solid #7fb6a766;border-color:var(--green)}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.formactions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.recipe-row{display:grid;grid-template-columns:2fr 1fr auto;gap:9px;align-items:end;margin:9px 0}.journey{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 25px}.journey-card{background:linear-gradient(150deg,#fff,#eff8f2);border:1px solid #c8dfd1;border-radius:15px;padding:18px;text-align:left;display:flex;flex-direction:column;gap:9px;min-height:160px;color:var(--navy)}.journey-card:hover{border-color:var(--green);transform:translateY(-2px)}.journey-num{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--green);font-weight:800}.journey-card small{color:#59756e;line-height:1.4}.journey-card b{margin-top:auto;color:#28733f}.barrow{display:grid;grid-template-columns:110px 1fr 82px;gap:9px;align-items:center;margin:13px 0;font-size:12px}.track{height:11px;background:#edf2f1;border-radius:20px;overflow:hidden}.fill{height:100%;background:linear-gradient(90deg,var(--green),var(--mint));border-radius:20px}.fill.alt{background:linear-gradient(90deg,var(--navy),var(--mint))}.tabs{display:flex;gap:8px;margin-bottom:17px}.tabs button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:10px 14px}.tabs button.active{background:var(--navy);color:#fff}.split{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.chartstack{height:15px;display:flex;overflow:hidden;border-radius:20px;background:#edf2f1}.chartstack span{height:100%}.legend{display:flex;gap:13px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:10px}.dot{width:9px;height:9px;display:inline-block;border-radius:50%;margin-right:5px}.pareto{margin-top:18px}.pareto-row{display:grid;grid-template-columns:145px 1fr 82px;gap:10px;align-items:center;margin:15px 0;font-size:12px}.pareto-track{height:20px;background:#edf2f1;border-radius:5px;position:relative}.pareto-fill{height:100%;background:linear-gradient(90deg,var(--green),var(--mint));border-radius:5px}.pareto-track small{position:absolute;right:4px;top:-16px;font-size:10px;font-weight:800;color:var(--navy)}.price-result{background:linear-gradient(130deg,var(--navy),#1d6559);color:white;border-radius:14px;padding:20px;margin-top:17px}.price-result small{letter-spacing:1px;color:#cfe7d9}.price-result strong{font-size:32px;display:block;margin:8px 0}.empty{text-align:center;color:var(--muted);padding:35px}.auth-overlay{position:fixed;inset:0;z-index:99;background:linear-gradient(130deg,#163042 10%,#17664f 65%,#78ab3a);display:grid;place-items:center;padding:20px}.auth-overlay[hidden]{display:none}.auth-card{width:min(420px,100%);background:#fff;border-radius:20px;padding:30px;box-shadow:0 20px 70px #061b2c55}.auth-card img{width:190px}.auth-card label{display:block;font-weight:700;margin:14px 0 6px}.auth-card input{width:100%;padding:12px;border:1px solid #cbd9da;border-radius:9px}.auth-card button{width:100%;margin-top:16px}.muted{color:var(--muted)}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}.two{grid-template-columns:1fr}.journey{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.app{display:block}.sidebar{padding:12px;gap:10px}.logo{width:150px}.brand-caption,.sidefoot{display:none}.nav{display:flex;overflow:auto}.nav button{white-space:nowrap;padding:8px}.topbar{padding:12px 15px;align-items:flex-start;flex-direction:column}main{padding:17px}.hero{min-height:270px;padding:23px}.hero h1{font-size:31px}.heading{align-items:flex-start;flex-direction:column}.formgrid{grid-template-columns:1fr}.journey{grid-template-columns:1fr}.recipe-row{grid-template-columns:1fr 90px auto}.barrow{grid-template-columns:85px 1fr 68px}.pareto-row{grid-template-columns:100px 1fr 70px}.cards{gap:9px}.card{padding:13px}.card strong{font-size:21px}}
