:root{--green:#14883e;--green2:#e5f6e9;--ink:#152033;--muted:#667085;--line:#e6e9ef;--bg:#f6f8fb;--card:#fff;--blue:#1269d3;--red:#b42318;--amber:#b54708}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--bg)}button,a{cursor:pointer}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.rail{background:#fff;border-right:1px solid var(--line);padding:18px;display:flex;flex-direction:column;gap:8px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;margin-bottom:12px}.qb{background:var(--green);color:#fff;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800}.brand small{background:var(--green2);color:var(--green);padding:3px 8px;border-radius:99px}.rail button{border:0;background:transparent;text-align:left;padding:12px;border-radius:10px;font-size:15px}.rail button:hover,.rail button.active{background:#eef7f0;color:var(--green);font-weight:700}.createBtn{background:linear-gradient(#19a84b,#0e7e35)!important;color:white!important;text-align:center!important;font-weight:800!important}.pinned{border-top:1px solid var(--line);margin-top:16px;padding-top:14px;display:grid;gap:9px}.pinned a{color:#344054;text-decoration:none}.topbar{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:0 26px;position:sticky;top:0;z-index:3}.topbar input{flex:1;border:1px solid var(--line);border-radius:999px;padding:13px 18px;font-size:15px}.topbar select,.topbar button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:11px 14px}#workspace{padding:26px}.hero{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.hero h1{font-size:38px;margin:0 0 8px}.hero p{color:var(--muted);margin:0}.grid{display:grid;gap:16px}.grid.kpi{grid-template-columns:repeat(4,minmax(180px,1fr))}.grid.two{grid-template-columns:1.2fr .8fr}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 1px 2px #00000005}.card h3{margin:0 0 12px}.kpi-card b{font-size:26px}.kpi-card span{color:var(--muted);font-size:13px}.row{display:flex;gap:12px;align-items:center}.between{display:flex;justify-content:space-between;align-items:center}.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.table th,.table td{padding:13px;border-bottom:1px solid var(--line);text-align:left}.table th{color:#475467;background:#f8fafc;font-size:13px}.badge{padding:4px 9px;border-radius:999px;font-weight:700;font-size:12px}.ok{background:var(--green2);color:#176b32}.warn{background:#fff4e5;color:var(--amber)}.bad{background:#fee4e2;color:var(--red)}.btn{border:1px solid var(--line);background:#fff;border-radius:9px;padding:9px 13px;font-weight:700}.btn.primary{background:var(--green);color:#fff;border-color:var(--green)}.btn.blue{background:var(--blue);color:#fff;border-color:var(--blue)}.btn.danger{background:var(--red);color:#fff;border-color:var(--red)}.tabs{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}.tabs button{border:1px solid var(--line);background:#fff;border-radius:99px;padding:9px 14px}.tabs button.active{background:var(--green);color:#fff;border-color:var(--green)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.form-grid.three{grid-template-columns:repeat(3,1fr)}label{display:grid;gap:6px;font-weight:700;font-size:14px}input,select,textarea{border:1px solid var(--line);border-radius:10px;padding:11px;font-size:15px;background:#fff}textarea{min-height:90px}.line-items{border:1px solid var(--line);border-radius:12px;overflow:hidden}.line-row{display:grid;grid-template-columns:2fr .8fr .8fr .8fr .6fr 38px;gap:8px;padding:10px;border-bottom:1px solid var(--line);align-items:center}.line-row.header{background:#f8fafc;font-weight:800;font-size:13px}.preview{background:#f8fafc;border:1px dashed #b7c2d0;border-radius:12px;padding:14px;margin-top:16px}.modal{position:fixed;inset:0;background:#10182888;z-index:10;display:grid;place-items:center;padding:24px}.hidden{display:none}.modal-card{background:#fff;border-radius:18px;width:min(1180px,96vw);max-height:92vh;overflow:auto;padding:28px;position:relative}.close{position:absolute;right:18px;top:14px;border:0;background:#fff;font-size:34px}.create-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}.create-grid h3{font-size:22px}.create-grid a{display:block;padding:9px 0;color:#222;text-decoration:none}.report-view{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}.report-title{text-align:center;border-bottom:2px solid var(--ink);padding-bottom:14px;margin-bottom:18px}.report-line{display:grid;grid-template-columns:1fr 160px;gap:20px;padding:7px 0;border-bottom:1px solid #f1f3f6}.report-line.total{font-weight:900;border-top:2px solid var(--ink);border-bottom:0}.module-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.module-tile{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.module-tile h3{margin:0 0 8px}.small{color:var(--muted);font-size:13px}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.rail{position:static;height:auto}.grid.kpi,.grid.two,.form-grid,.form-grid.three,.module-list,.create-grid{grid-template-columns:1fr}.line-row{grid-template-columns:1fr}.topbar{flex-wrap:wrap;height:auto;padding:14px}}
