@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{box-shadow:0 0 #2d822566}70%{box-shadow:0 0 0 12px #2d822500}}html{scroll-behavior:smooth}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #f2f5f8;--surface: #fff;--surface2: #f5f7fa;--surface3: #eaecf2;--border: #d2d8e4;--border2: #bcc5d6;--sidebar: #081F2F;--sidebar-text: #7a9ab8;--sidebar-active: #0d2d44;--sidebar-hover: #0a2438;--accent: #2D8225;--accent2: #5DC14B;--accent-light: #eaf6e8;--accent-dim: rgba(45,130,37,.1);--green: #2D8225;--green-light: #e6f5e4;--green-dim: rgba(45,130,37,.1);--red: #dc2626;--red-light: #fee2e2;--red-dim: rgba(220,38,38,.1);--yellow: #d97706;--yellow-light: #fef3c7;--yellow-dim: rgba(217,119,6,.1);--blue: #081F2F;--blue-light: #e8edf5;--blue-dim: rgba(8,31,47,.08);--teal: #5DC14B;--teal-light: #edfae8;--text: #081F2F;--text2: #1a3a52;--text3: #4a6a82;--text4: #8aaabb;--radius: 12px;--radius-sm: 8px;--radius-lg: 16px;--shadow: 0 2px 12px rgba(8,31,47,.08);--shadow-md: 0 4px 20px rgba(8,31,47,.14);--font: "Plus Jakarta Sans", sans-serif}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.6;min-height:100vh}input,select,textarea,button{font-family:var(--font)}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:var(--surface3)}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px}.scroll-thick{scrollbar-width:auto}.scroll-thick::-webkit-scrollbar{width:15px;height:15px}.scroll-thick::-webkit-scrollbar-thumb{background:var(--border2);border-radius:8px;border:3px solid var(--surface3)}.scroll-thick::-webkit-scrollbar-thumb:hover{background:var(--text4)}.app{display:flex;min-height:100vh}.sidebar{width:230px;background:var(--sidebar);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;box-shadow:4px 0 20px #0000001a}.sb-logo{padding:24px 20px 16px}.sb-logo-row{display:flex;align-items:center;gap:10px;margin-bottom:4px}.sb-logo-icon{width:34px;height:34px;background:linear-gradient(135deg,#081f2f,#0d2a40);border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;color:#fff;flex-shrink:0}.sb-logo-text{font-size:17px;font-weight:800;color:#fff;letter-spacing:-.3px}.sb-logo-sub{font-size:9px;color:#a8d4b480;letter-spacing:2px;text-transform:uppercase;margin-left:44px}.sb-empresa{margin:0 12px 14px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:9px 11px}.sb-empresa-label{font-size:9px;color:#a8d4b473;text-transform:uppercase;letter-spacing:1px;font-weight:700}.sb-empresa-nome{font-size:12px;font-weight:600;color:#fff;margin-top:1px}.sb-nav{flex:1;padding:2px 10px;overflow-y:auto}.sb-section{font-size:9px;color:#a8d4b459;text-transform:uppercase;letter-spacing:2px;font-weight:700;padding:12px 8px 4px}.sb-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:7px;cursor:pointer;color:var(--sidebar-text);transition:all .15s;font-size:12px;font-weight:500;border:none;background:none;width:100%;text-align:left;position:relative}.sb-item:hover{background:var(--sidebar-hover);color:#fff}.sb-item.active{background:var(--sidebar-active);color:#fff;font-weight:600}.sb-item.active:before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;background:#5dc14b;border-radius:0 3px 3px 0}.sb-badge{margin-left:auto;background:var(--red);color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:20px}.sb-footer{padding:12px;border-top:1px solid rgba(255,255,255,.08)}.sb-user{display:flex;align-items:center;gap:9px;padding:8px 8px 10px}.sb-avatar{width:32px;height:32px;background:linear-gradient(135deg,#081f2f,#0d2a40);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:#fff;flex-shrink:0}.sb-uname{font-size:12px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-urole{font-size:10px;color:#a8d4b473}.sb-logout{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:7px;cursor:pointer;color:#a8d4b48c;background:none;border:none;width:100%;font-size:12px;font-weight:500;transition:all .15s}.sb-logout:hover{color:#ff8080;background:#ff505014}.main{margin-left:230px;flex:1;display:flex;flex-direction:column;min-height:100vh}.topbar{background:var(--surface);border-bottom:1px solid var(--border);padding:0 26px;height:58px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;box-shadow:var(--shadow)}.tb-title{font-size:16px;font-weight:800;color:var(--text)}.tb-right{display:flex;align-items:center;gap:9px}.tb-date{font-size:11px;color:var(--text3);background:var(--surface3);padding:4px 11px;border-radius:20px;border:1px solid var(--border);display:flex;align-items:center;gap:5px}.tb-bell{width:34px;height:34px;background:var(--surface3);border:1px solid var(--border);border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text3);position:relative;transition:all .15s}.tb-bell:hover{background:var(--accent-dim);color:var(--accent)}.tb-bell .dot{position:absolute;top:7px;right:7px;width:7px;height:7px;background:var(--red);border-radius:50%;border:1px solid var(--surface)}.tb-av{width:34px;height:34px;background:linear-gradient(135deg,#081f2f,#0d2a40);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:#fff;cursor:pointer;border:2px solid var(--accent-light)}.content{padding:22px 26px;flex:1}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 15px;border-radius:8px;font-size:13px;font-weight:600;border:none;cursor:pointer;transition:all .15s}.btn-primary{background:#1a2744;color:#fff;box-shadow:0 2px 8px #1a274440}.btn-primary:hover{background:#243460}.btn-ghost{background:var(--surface);color:var(--text2);border:1px solid var(--border)}.btn-ghost:hover{background:var(--surface3)}.btn-danger{background:var(--red-dim);color:var(--red);border:1px solid rgba(220,38,38,.2)}.btn-danger:hover{background:var(--red);color:#fff}.btn-success{background:var(--green-dim);color:var(--green);border:1px solid rgba(22,163,74,.2)}.btn-success:hover{background:var(--green);color:#fff}.btn-teal{background:var(--teal-light);color:var(--teal);border:1px solid rgba(13,148,136,.2)}.btn-teal:hover{background:var(--teal);color:#fff}.btn-sm{padding:5px 10px;font-size:12px}.btn-icon{padding:6px;width:30px;height:30px;justify-content:center}.btn-xs{padding:3px 8px;font-size:11px;border-radius:6px}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600}.b-green{background:var(--green-light);color:#15803d}.b-red{background:var(--red-light);color:#b91c1c}.b-yellow{background:var(--yellow-light);color:#92400e}.b-blue{background:var(--blue-light);color:#1d4ed8}.b-teal{background:var(--teal-light);color:#0f766e}.b-gray{background:var(--surface3);color:var(--text3);border:1px solid var(--border)}.b-accent{background:var(--accent-light);color:var(--accent)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:13px;margin-bottom:20px}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;position:relative;overflow:hidden;box-shadow:var(--shadow);transition:all .2s}.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.kpi-card:after{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--radius) var(--radius) 0 0}.kpi-card.cg:after{background:linear-gradient(90deg,#2d8225,#5dc14b)}.kpi-card.cr:after{background:linear-gradient(90deg,#dc2626,#ef4444)}.kpi-card.cy:after{background:linear-gradient(90deg,#d97706,#f59e0b)}.kpi-card.cb:after{background:linear-gradient(90deg,#081f2f,#0d2a40)}.kpi-card.ct:after{background:linear-gradient(90deg,#5dc14b,#83c939)}.kpi-card.ca:after{background:linear-gradient(90deg,#081f2f,#2d8225)}.kpi-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:10px}.kpi-label{font-size:10px;color:var(--text3);font-weight:700;text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px}.kpi-val{font-size:22px;font-weight:800;color:var(--text);line-height:1.1}.kpi-sub{font-size:11px;color:var(--text4);margin-top:4px}.tw{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}table{width:100%;border-collapse:collapse}thead tr{background:var(--surface2);border-bottom:1px solid var(--border)}th{padding:10px 14px;text-align:left;font-size:10px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.8px}td{padding:10px 14px;font-size:13px;color:var(--text2);border-bottom:1px solid var(--border)}tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--surface2)}.td-b{color:var(--text);font-weight:600}.td-act{display:flex;align-items:center;gap:5px}.fg{display:flex;flex-direction:column;gap:5px}.fg2{display:grid;grid-template-columns:1fr 1fr;gap:11px}.fg-full{grid-column:1/-1}label{font-size:10px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.7px}.inp,.sel,.textarea{background:var(--surface2);border:1px solid var(--border2);border-radius:8px;padding:8px 11px;color:var(--text);font-size:13px;transition:all .15s;outline:none;width:100%}.inp:focus,.sel:focus,.textarea:focus{border-color:#1a2744;box-shadow:0 0 0 3px #1a27441a}.sel option{background:var(--surface2)}.textarea{resize:vertical;min-height:72px}.form-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:14px;border-top:1px solid var(--border);margin-top:14px}.mo{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f2d1a59;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:560px;max-height:92vh;overflow-y:auto;box-shadow:0 8px 40px #0f2d1a2e}.modal-lg{max-width:780px}.mh{padding:20px 22px 0;display:flex;align-items:center;justify-content:space-between}.mh-title{font-size:16px;font-weight:800;color:var(--text)}.mc{background:var(--surface3);border:1px solid var(--border);border-radius:8px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text3);transition:all .15s}.mc:hover{background:var(--red-dim);color:var(--red)}.mb{padding:16px 22px 22px}.alert{border-radius:8px;padding:10px 13px;display:flex;align-items:flex-start;gap:8px;margin-bottom:12px;font-size:13px}.aw{background:var(--yellow-light);border:1px solid rgba(217,119,6,.2);color:#92400e}.as{background:var(--green-light);border:1px solid rgba(22,163,74,.2);color:#15803d}.ai{background:var(--blue-light);border:1px solid rgba(37,99,235,.15);color:#1d4ed8}.ad{background:var(--red-light);border:1px solid rgba(220,38,38,.2);color:#b91c1c}.sh{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:10px;flex-wrap:wrap}.st{font-size:15px;font-weight:800;color:var(--text)}.ss{font-size:12px;color:var(--text3);margin-top:1px}.fb{display:flex;align-items:center;gap:9px;padding:11px 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:14px;flex-wrap:wrap;box-shadow:var(--shadow)}.fl{font-size:10px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.8px;display:flex;align-items:center;gap:4px}.fd{background:var(--surface2);border:1px solid var(--border2);border-radius:7px;padding:5px 9px;color:var(--text);font-size:12px;outline:none;transition:border-color .15s}.fd:focus{border-color:var(--accent)}.fsel{background:var(--surface2);border:1px solid var(--border2);border-radius:7px;padding:5px 9px;color:var(--text);font-size:12px;outline:none}.fcl{padding:4px 9px;border-radius:7px;background:var(--red-dim);border:1px solid rgba(220,38,38,.2);color:var(--red);font-size:11px;font-weight:600;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:3px}.fcl:hover{background:var(--red);color:#fff}.fr{margin-left:auto;font-size:11px;color:var(--text3);background:var(--surface3);padding:3px 9px;border-radius:20px}.meter{height:6px;background:var(--surface3);border-radius:4px;overflow:hidden;margin-top:4px}.mf{height:100%;border-radius:4px;transition:width .5s}.tr{display:flex;gap:2px;border-bottom:2px solid var(--border);margin-bottom:16px}.tab{padding:8px 16px;font-size:13px;font-weight:600;color:var(--text3);cursor:pointer;border:none;background:none;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .15s;border-radius:7px 7px 0 0}.tab:hover{color:var(--text);background:var(--surface3)}.tab.active{color:#1a2744;border-bottom-color:#2d7a2d;background:var(--accent-light)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);transition:box-shadow .2s}.card:hover{box-shadow:var(--shadow-md)}.divider{height:1px;background:var(--border);margin:12px 0}.pill{display:inline-flex;align-items:center;gap:3px;padding:2px 9px;border-radius:20px;font-size:11px;font-weight:500;background:var(--surface3);color:var(--text3);border:1px solid var(--border)}.sc{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin-bottom:16px;box-shadow:var(--shadow)}.empty{text-align:center;padding:40px;color:var(--text4)}.search-w{position:relative;display:inline-flex;align-items:center}.search-w .si{position:absolute;left:9px;color:var(--text4)}.search-inp{background:var(--surface2);border:1px solid var(--border2);border-radius:8px;padding:7px 11px 7px 30px;color:var(--text);font-size:13px;outline:none;width:210px;transition:all .15s}.search-inp:focus{border-color:var(--accent);width:250px}.ingr-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:7px;align-items:end;padding:9px 11px;background:var(--surface2);border-radius:8px;border:1px solid var(--border);margin-bottom:6px}.add-ing{background:#eaf5ea;border:1px dashed #2d7a2d;border-radius:8px;padding:11px;margin-top:5px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mov-row{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--surface2);border-radius:8px;border:1px solid var(--border);margin-bottom:6px;transition:all .15s}.mov-row:hover{border-color:var(--border2);box-shadow:var(--shadow)}.mov-icon{width:32px;height:32px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stars{display:flex;gap:2px}.star-on{color:#f59e0b}.star-off{color:var(--border2)}.login-page{min-height:100vh;display:flex;background:var(--bg)}.lp-left{flex:1;background:linear-gradient(140deg,#081f2f,#0d2a40,#081f2f);display:flex;flex-direction:column;justify-content:center;padding:60px;position:relative;overflow:hidden}.lp-left:before{content:"";position:absolute;top:-80px;right:-80px;width:380px;height:380px;background:radial-gradient(circle,rgba(74,170,58,.12) 0%,transparent 65%)}.lp-title{font-size:38px;font-weight:800;color:#fff;line-height:1.15;margin-bottom:14px}.lp-title em{font-style:normal;color:#7dd44a}.lp-p{font-size:14px;color:#a8d4b4b3;line-height:1.7;max-width:400px;margin-bottom:28px}.lp-chips{display:flex;gap:8px;flex-wrap:wrap}.lp-chip{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:5px 13px;font-size:11px;font-weight:600;color:#a8d4b4cc}.lp-right{width:440px;display:flex;align-items:center;justify-content:center;padding:40px}.lp-box{width:100%;max-width:360px}.lp-tagline{font-size:13px;color:var(--text3);margin-bottom:28px}.lp-h{font-size:20px;font-weight:800;color:var(--text);margin-bottom:3px}.lp-sub{font-size:13px;color:var(--text3);margin-bottom:20px}.eye-w{position:relative}.eye-w .inp{padding-right:38px}.eye-btn{position:absolute;right:9px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text3)}.lp-btn{width:100%;padding:11px;background:#081f2f;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:700;cursor:pointer;transition:all .15s;margin-top:5px;box-shadow:0 4px 14px #081f2f4d}.lp-btn:hover{background:#2d8225}.lp-demo{margin-top:12px;padding:10px 13px;background:var(--surface3);border:1px dashed var(--border2);border-radius:8px;font-size:12px;color:var(--text3);line-height:1.7;text-align:center}.lp-demo strong{color:var(--text)}.ph{background:linear-gradient(135deg,#081f2f,#0d2a40);border-radius:var(--radius-lg);padding:24px;margin-bottom:18px;position:relative;overflow:hidden}.ph:before{content:"";position:absolute;top:-40px;right:-40px;width:200px;height:200px;background:radial-gradient(circle,rgba(74,170,58,.2) 0%,transparent 65%)}.ph-av{width:68px;height:68px;background:linear-gradient(135deg,#081f2f,#0d2a40);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:800;color:#fff;border:3px solid rgba(255,255,255,.2);margin-bottom:12px}.ph-name{font-size:20px;font-weight:800;color:#fff;margin-bottom:3px}.ph-role{font-size:12px;color:#a8d4b4b3;margin-bottom:10px}.ph-chips{display:flex;gap:7px;flex-wrap:wrap}.ph-chip{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:3px 11px;font-size:11px;font-weight:600;color:#a8d4b4e6}.pc{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.pc-title{font-size:13px;font-weight:700;color:var(--text);margin-bottom:12px;padding-bottom:9px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:6px}.act-item{display:flex;align-items:flex-start;gap:9px;padding:8px 0;border-bottom:1px solid var(--border)}.act-item:last-child{border-bottom:none}.act-dot{width:7px;height:7px;border-radius:50%;margin-top:5px;flex-shrink:0}.ss-wrap{position:relative;width:100%}.ss-trigger{background:var(--surface2);border:1px solid var(--border2);border-radius:8px;padding:8px 11px;color:var(--text);font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;transition:all .15s;outline:none;min-height:36px}.ss-trigger:focus,.ss-trigger.open{border-color:#1a2744;box-shadow:0 0 0 3px #1a27441a}.ss-trigger .ss-val{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ss-trigger .ss-arrow{flex-shrink:0;transition:transform .15s}.ss-trigger.open .ss-arrow{transform:rotate(180deg)}.ss-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--surface);border:1px solid var(--border2);border-radius:8px;box-shadow:0 4px 20px #081f2f24;z-index:500;overflow:hidden}.ss-search-w{padding:8px 8px 6px;border-bottom:1px solid var(--border);position:relative}.ss-search-input{width:100%;background:var(--surface2);border:1px solid var(--border2);border-radius:6px;padding:6px 9px 6px 30px;font-size:12px;color:var(--text);outline:none}.ss-search-input:focus{border-color:var(--accent)}.ss-search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text4);pointer-events:none}.ss-list{max-height:200px;overflow-y:auto}.ss-option{padding:8px 11px;font-size:13px;color:var(--text2);cursor:pointer;transition:background .1s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ss-option:hover{background:var(--surface2)}.ss-option.selected{background:var(--accent-dim);color:var(--accent);font-weight:600}.ss-option.placeholder{color:var(--text4)}.ss-empty{padding:10px 11px;font-size:12px;color:var(--text4);text-align:center}.pdf-btn{background:linear-gradient(135deg,#dc2626,#ef4444);color:#fff;border:none;padding:8px 15px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s;box-shadow:0 2px 8px #dc262640}.pdf-btn:hover{background:linear-gradient(135deg,#b91c1c,#dc2626)}@media print{.sidebar,.topbar,.no-print{display:none!important}.main{margin-left:0}.content{padding:0}body{background:#fff;color:#000;font-size:12px}.pdf-page{padding:20px;max-width:100%}.pdf-page table{font-size:11px}.pdf-header{border-bottom:2px solid #1a6b35;padding-bottom:10px;margin-bottom:16px}}
