:root{--green:#1f4d3f;--green-deep:#15362c;--green-soft:#3a6a5a;--cream:#f5f1e8;--cream-warm:#eee7d6;--ink:#14110e;--ink-soft:#4a463f;--terracotta:#b5613c;--line:#ddd4c2;--radius:14px}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--cream);color:var(--ink);font-family:var(--font-inter), -apple-system, "Segoe UI", system-ui, sans-serif;-webkit-font-smoothing:antialiased;line-height:1.5}.wrap{max-width:760px;margin:0 auto;padding:48px 24px 80px}.head{align-items:center;gap:18px;margin-bottom:32px;display:flex}.head .mark{background:var(--green);border-radius:12px;flex:none;width:46px;height:46px;-webkit-mask:url(/novum-mark.png) 50%/64% no-repeat;mask:url(/novum-mark.png) 50%/64% no-repeat}.head h1{color:var(--green-deep);letter-spacing:-.01em;font-size:22px;font-weight:600}.head p{color:var(--ink-soft);margin-top:2px;font-size:14px}.card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:26px;box-shadow:0 1px 2px #14110e0a}label{color:var(--green-deep);margin-bottom:7px;font-size:13px;font-weight:600;display:block}.field{margin-bottom:20px}select,textarea,input[type=text],input[type=password],input[type=date],input[type=number],input[type=email]{width:100%;font:inherit;color:var(--ink);background:var(--cream);border:1px solid var(--line);border-radius:10px;outline:none;padding:11px 13px;transition:border-color .15s,box-shadow .15s}select:focus,textarea:focus,input:focus{border-color:var(--green-soft);box-shadow:0 0 0 3px #3a6a5a1f}textarea{resize:vertical;min-height:230px;line-height:1.55}.hint{color:var(--ink-soft);margin-top:6px;font-size:12px}button.primary{font:inherit;color:var(--cream);background:var(--green);cursor:pointer;border:none;border-radius:10px;padding:12px 22px;font-weight:600;transition:background .15s,opacity .15s}button.primary:hover{background:var(--green-deep)}button.primary:disabled{opacity:.55;cursor:not-allowed}.row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.spinner{border:2px solid #f5f1e866;border-top-color:var(--cream);vertical-align:-2px;border-radius:50%;width:16px;height:16px;margin-right:8px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.alert{border-radius:10px;margin-top:18px;padding:12px 14px;font-size:13.5px}.alert.error{color:#8a3f23;background:#fbe9e2;border:1px solid #e7c3b3}.alert.warn{color:#836b1f;background:#fcf3d9;border:1px solid #e7d6a0}.alert.success{color:var(--green-deep);background:#e4efe7;border:1px solid #b9d4c2;margin-top:0;margin-bottom:18px}.btn-secondary{font:inherit;color:var(--green-deep);border:1px solid var(--green-soft);cursor:pointer;background:0 0;border-radius:10px;padding:12px 22px;font-weight:600;transition:background .15s,opacity .15s}.btn-secondary:hover:not(:disabled){background:var(--cream-warm)}.btn-secondary:disabled{opacity:.55;cursor:not-allowed}.spinner.dark{border:2px solid #1f4d3f40;border-top-color:var(--green)}.result{border-top:1px solid var(--line);margin-top:26px;padding-top:24px}.result h2{color:var(--green-deep);margin-bottom:14px;font-size:16px}.report{margin-top:22px}.report h3{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin:18px 0 8px;font-size:13px}.report ul{padding-left:18px}.report li{margin-bottom:5px;font-size:13.5px}.framing-item{background:var(--cream-warm);border-radius:10px;margin-bottom:10px;padding:12px 14px;font-size:13px}.framing-item b{color:var(--green-deep)}.login-wrap{max-width:380px;margin:12vh auto 0;padding:24px}.editor code{background:var(--cream-warm);border-radius:4px;padding:1px 5px;font-size:12px}.editor-section{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.editor-section:first-of-type{border-top:none;margin-top:8px;padding-top:0}.editor-section>h3{text-transform:uppercase;letter-spacing:.05em;color:var(--green-deep);margin-bottom:12px;font-size:13px}.editor input[type=text],.editor textarea{background:#fff}.editor textarea{min-height:0}.kenmerk-row{grid-template-columns:1fr 1.4fr;gap:12px;display:grid}.editor-job{background:var(--cream);border:1px solid var(--line);border-radius:10px;margin-bottom:14px;padding:14px 16px}.job-meta{color:var(--ink-soft);margin-bottom:10px;font-size:12px;font-weight:600}@media (max-width:560px){.kenmerk-row{grid-template-columns:1fr}}.topnav{border-bottom:1px solid var(--line);gap:6px;margin-bottom:22px;display:flex}.topnav a{color:var(--ink-soft);border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 16px;font-size:14px;font-weight:600;text-decoration:none}.topnav a.active{color:var(--green-deep);border-bottom-color:var(--green)}.topnav a:hover{color:var(--green-deep)}.grid-3{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.form-section{text-transform:uppercase;letter-spacing:.05em;color:var(--green-deep);border-top:1px solid var(--line);margin:24px 0 12px;padding-top:18px;font-size:13px}.line-head,.line-row{grid-template-columns:80px 1fr 110px 110px 34px;align-items:center;gap:10px;display:grid}.line-head{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin-bottom:8px;padding:0 2px;font-size:11px}.line-head .r{text-align:right}.line-row{margin-bottom:8px}.line-total{text-align:right;color:var(--green-deep);font-variant-numeric:tabular-nums;font-size:13px}.btn-ghost{font:inherit;border:1px solid var(--line);color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:8px;padding:8px;line-height:1}.btn-ghost:hover:not(:disabled){border-color:var(--terracotta);color:var(--terracotta)}.btn-ghost:disabled{opacity:.4;cursor:not-allowed}.btn-ghost.add{width:auto;color:var(--green-deep);border-color:var(--green-soft);margin-top:4px;padding:9px 16px;font-size:13px;font-weight:600}.client-actions{align-items:center;gap:16px;margin-top:2px;display:flex}.link-danger{font:inherit;color:var(--terracotta);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;text-decoration:underline}.grekening{margin-top:18px}.split-rows{border-top:1px dotted var(--line);margin-top:8px;padding-top:8px}.checkbox-row{color:var(--green-deep);cursor:pointer;align-items:center;gap:10px;margin-bottom:0;font-size:14px;font-weight:600;display:flex}.checkbox-row input[type=checkbox]{width:17px;height:17px;accent-color:var(--green);cursor:pointer}.grekening-body{grid-template-columns:1fr 280px;align-items:start;gap:24px;margin-top:16px;display:grid}.split-preview{background:var(--cream-warm);border-radius:10px;align-self:start;padding:14px 16px}.split-preview .row{color:var(--ink-soft);font-variant-numeric:tabular-nums;justify-content:space-between;padding:4px 0;font-size:14px;display:flex}@media (max-width:560px){.grekening-body{grid-template-columns:1fr}}.grid-2-totals{border-top:1px solid var(--line);grid-template-columns:1fr 280px;align-items:start;gap:24px;margin-top:24px;padding-top:18px;display:grid}.btw-field{max-width:160px;margin-bottom:0}.totals-preview{background:var(--cream-warm);border-radius:10px;padding:14px 16px}.totals-preview .row{color:var(--ink-soft);font-variant-numeric:tabular-nums;justify-content:space-between;padding:5px 0;font-size:14px;display:flex}.totals-preview .row.grand{border-top:1px solid var(--line);color:var(--green-deep);margin-top:6px;padding-top:10px;font-size:16px;font-weight:700}@media (max-width:560px){.grid-3,.grid-2-totals{grid-template-columns:1fr}.line-head{display:none}.line-row{grid-template-columns:60px 1fr 90px;grid-template-areas:"qty desc desc""price price total""rm rm rm"}}
@font-face{font-family:inter;src:url(../media/inter_300-s.p.27_7dh3ayjpp4.woff2)format("woff2");font-display:swap;font-weight:300;font-style:normal}@font-face{font-family:inter;src:url(../media/inter_400-s.p.2qdljeg3s-lsl.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:inter;src:url(../media/inter_500-s.p.1d14jwmkqqa0f.woff2)format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:inter;src:url(../media/inter_600-s.p.2dov6rjg62vru.woff2)format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:inter;src:url(../media/inter_700-s.p.4421omqeymgmp.woff2)format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:inter Fallback;src:local(Arial);ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.0%;size-adjust:107.89%}.inter_2fd2bc9d-module__NgdghG__className{font-family:inter,inter Fallback}.inter_2fd2bc9d-module__NgdghG__variable{--font-inter:"inter", "inter Fallback"}
