:root{color:#173c30;font-synthesis:none;--forest:#123c2e;--forest-2:#1b4b3a;--lime:#b5dc49;--lime-soft:#edf4d8;--ink:#173c30;--muted:#71827a;--line:#dce4db;--paper:#fff;--cream:#f6f7f1;--danger:#b64c3d;background:#eff2eb;font-family:DM Sans,ui-sans-serif,system-ui,sans-serif;line-height:1.45}*{box-sizing:border-box}body{background:radial-gradient(circle at 90% 0,#f8faf4 0,#0000 35%),#eff2eb;min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}h1,h2,h3,h4,p{margin:0}h1,h2,h3,.brand strong,.metric strong,.grand-total strong{font-family:Manrope,DM Sans,sans-serif}.app-shell{grid-template-columns:252px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#fff;z-index:20;background:linear-gradient(165deg,#123c2e 0%,#0c2f24 100%);flex-direction:column;height:100vh;padding:25px 18px 22px;display:flex;position:sticky;top:0;box-shadow:5px 0 25px #102e2314}.brand{color:#fff;text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;padding:3px 8px 28px;display:flex}.brand-mark,.mini-logo{background:var(--lime);width:48px;height:48px;color:var(--forest);letter-spacing:-2px;border-radius:14px;place-items:center;font-size:22px;font-weight:900;display:grid;box-shadow:inset 0 -4px #00000014}.brand>span:last-child,.summary-brand>div{display:grid}.brand strong{letter-spacing:.045em;font-size:15px}.brand small{color:#b5c9c0;letter-spacing:.18em;margin-top:3px;font-size:8px}.nav-label{color:#77978b;letter-spacing:.22em;margin:6px 0 9px;padding:0 14px;font-size:9px;font-weight:800}.sidebar nav{gap:5px;display:grid}.sidebar nav button{color:#b4c8bf;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:11px;padding:12px 13px;font-weight:600;transition:all .18s;display:flex}.sidebar nav button:hover{color:#fff;background:#214c3d}.sidebar nav button.active{color:var(--forest);background:#fff;font-weight:800;box-shadow:0 7px 20px #0000001f}.nav-icon{border:1px solid;border-radius:9px;place-items:center;width:28px;height:28px;font-size:14px;display:grid}.active .nav-icon{background:var(--lime);border-color:var(--lime)}.sidebar-foot{border-top:1px solid #315649;align-items:center;gap:10px;margin-top:auto;padding:18px 10px 2px;display:flex}.status-dot{background:var(--lime);border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #b5dc491a}.sidebar-foot>span:last-child{display:grid}.sidebar-foot small{color:#89a69b;letter-spacing:.13em;font-size:8px}.sidebar-foot strong{margin-top:2px;font-size:11px}.main{width:100%;min-width:0;max-width:1660px;margin:0 auto;padding:28px 38px 34px}.topbar{justify-content:space-between;align-items:center;min-height:55px;margin-bottom:26px;display:flex}.topbar h1{letter-spacing:-.04em;font-size:24px}.eyebrow{letter-spacing:.18em;color:#73847c;margin-bottom:6px;font-size:9px;font-weight:800}.top-actions,.inline-actions,.form-actions,.hero-actions{align-items:center;gap:10px;display:flex}.date-chip{color:#65766e;background:#e6ebe4;border-radius:99px;padding:9px 12px;font-size:12px}.primary,.lime-btn,.dark-btn,.secondary,.ghost-btn{border:0;border-radius:11px;padding:12px 16px;font-weight:800;transition:all .15s}.primary,.lime-btn{background:var(--lime);color:var(--forest);box-shadow:0 5px 13px #73961d29}.primary:hover,.lime-btn:hover{background:#c3e65f;transform:translateY(-1px)}.dark-btn{background:var(--forest);color:#fff}.secondary{border:1px solid var(--line);color:var(--ink);background:#fff;box-shadow:0 3px 10px #18362b0a}.secondary:hover{border-color:#afc0b6}.ghost-btn{color:#fff;background:0 0;border:1px solid #ffffff47}.menu-btn{background:var(--forest);color:#fff;border:0;border-radius:11px;width:42px;height:42px;font-size:18px;display:none}.text-btn{color:#3d663c;background:0 0;border:0;padding:4px 0;font-weight:800}.danger-text,.danger{color:var(--danger)!important}.page{animation:.24s enter}@keyframes enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.page-intro{justify-content:space-between;align-items:end;gap:20px;margin:6px 0 23px;display:flex}.page-intro h2{letter-spacing:-.05em;font-size:29px}.page-intro>div>p:last-child{color:var(--muted);margin-top:5px;font-size:13px}.panel{border:1px solid var(--line);background:#fffffff5;border-radius:20px;padding:25px;box-shadow:0 7px 25px #1b382c0b}.panel-head{justify-content:space-between;align-items:start;margin-bottom:22px;display:flex}.panel h3{letter-spacing:-.035em;font-size:19px}.step{color:#9bb0a5;background:#f1f4ef;border-radius:8px;padding:6px 8px;font-family:Manrope;font-size:13px}.hero{color:#fff;background:linear-gradient(135deg,#173f31 0%,#0d3427 100%);border-radius:25px;justify-content:space-between;align-items:center;min-height:300px;padding:42px 48px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 45px #14382b26}.hero-copy{z-index:2;max-width:600px}.pill{letter-spacing:.18em;color:#183e30;background:var(--lime);border-radius:99px;padding:7px 10px;font-size:9px;font-weight:900}.hero h2{letter-spacing:-.06em;margin:24px 0 15px;font-size:51px;line-height:.96}.hero-copy>p{color:#bed0c8;max-width:470px}.hero-actions{margin-top:26px}.hero-rings{place-items:center;width:270px;height:270px;display:grid;position:absolute;right:7%}.hero-rings span{border:1px solid #bee35b33;border-radius:50%;position:absolute}.hero-rings span:first-child{width:270px;height:270px}.hero-rings span:nth-child(2){background:#b7dc4b0d;width:190px;height:190px}.hero-rings div{background:var(--lime);width:111px;height:111px;color:var(--forest);letter-spacing:-5px;z-index:2;border-radius:35px 35px 35px 8px;place-items:center;font-size:47px;font-weight:900;display:grid;transform:rotate(-5deg);box-shadow:0 20px 30px #0003}.hero-rings small{letter-spacing:.2em;margin-top:-28px;font-size:8px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:15px;margin:18px 0;display:grid}.metric{border:1px solid var(--line);background:#fff;border-radius:17px;min-width:0;padding:20px;display:grid}.metric.lime{background:var(--lime-soft);border-color:#d4e7a6}.metric>span{text-transform:uppercase;letter-spacing:.1em;color:#718078;font-size:10px;font-weight:800}.metric strong{letter-spacing:-.05em;text-overflow:ellipsis;margin:7px 0 1px;font-size:26px;overflow:hidden}.metric small{color:#839087;font-size:10px}.dashboard-grid{grid-template-columns:1.55fr .75fr;gap:18px;display:grid}.quick-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.quick{border:1px solid var(--line);text-align:left;background:#f9faf6;border-radius:14px;padding:18px;transition:all .15s;display:grid}.quick:hover{background:#fbfdf5;border-color:#b6cc8b;transform:translateY(-2px)}.quick>span{background:var(--lime);border-radius:11px;place-items:center;width:37px;height:37px;font-size:18px;font-weight:900;display:grid}.quick strong{margin:14px 0 3px;font-size:13px}.quick small{color:var(--muted);font-size:10px}.rate-card dl,.margin-card dl{margin:0}.rate-card dl div,.margin-card dl div{border-bottom:1px solid #edf0ec;justify-content:space-between;gap:15px;padding:9px 0;display:flex}.rate-card dt,.margin-card dt{color:var(--muted);font-size:11px}.rate-card dd,.margin-card dd{margin:0;font-size:12px;font-weight:800}.rate-card .text-btn{margin-top:15px;font-size:11px}.calculator-layout{grid-template-columns:minmax(0,1fr) 370px;align-items:start;gap:18px;display:grid}.calculator-forms{gap:15px;display:grid}.form-section{padding:25px}.fields{gap:13px;display:grid}.fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.fields.four{grid-template-columns:repeat(4,minmax(0,1fr))}.fields.small-first{grid-template-columns:130px 1fr}.fields.compact{gap:9px}.field{gap:7px;margin-top:13px;display:grid}.field>span{letter-spacing:.035em;color:#65776e;font-size:10px;font-weight:800}.field input,.field select,.field textarea,.search{color:var(--ink);background:#f8faf6;border:1px solid #d8e0d8;border-radius:10px;outline:none;width:100%;padding:11px 12px}.field input:focus,.field select:focus,.field textarea:focus,.search:focus{border-color:#96bd37;box-shadow:0 0 0 3px #b5dc4929}.field textarea{resize:vertical;min-height:82px}.unit-input{display:block;position:relative}.unit-input input{padding-right:45px}.unit-input b{color:#809088;font-size:10px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.customer-chip{background:#eef4e0;border-radius:11px;align-items:center;gap:10px;margin-top:13px;padding:12px;display:flex}.customer-chip>span,.avatar{background:var(--lime);border-radius:10px;place-items:center;width:36px;height:36px;font-weight:900;display:grid}.customer-chip>div{display:grid}.customer-chip strong{font-size:12px}.customer-chip small{color:var(--muted);font-size:9px}.package-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.package{text-align:left;min-height:146px;color:var(--ink);background:#f9faf7;border:1px solid #dbe2da;border-radius:14px;padding:17px;display:grid;position:relative}.package:hover{border-color:#aabd79}.package.active{background:#f2f8df;border:2px solid #8db229;padding:16px}.package em{background:var(--forest);color:#fff;letter-spacing:.12em;border-radius:99px;padding:4px 7px;font-size:7px;font-style:normal;position:absolute;top:-8px;right:10px}.package .radio{border:1px solid #b9c6bd;border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.package.active .radio{background:var(--lime);border-color:var(--lime)}.package>strong{margin-top:13px;font-size:14px}.package>b{color:#48603e;font-size:12px}.package small{color:var(--muted);margin-top:4px;font-size:9px}.check-row{flex-wrap:wrap;align-items:center;gap:18px;padding-top:16px;display:flex}.check-row.bordered{border-top:1px solid #edf0ec;margin-top:17px}.toggle{cursor:pointer;align-items:center;gap:8px;font-size:11px;font-weight:750;display:flex}.toggle input{opacity:0;position:absolute}.toggle>span{width:22px;height:22px;color:var(--forest);border:1px solid #bdc9c0;border-radius:7px;place-items:center;font-size:10px;display:grid}.toggle input:checked+span{background:var(--lime);border-color:var(--lime)}.summary-column{gap:15px;display:grid;position:sticky;top:20px}.summary-card{background:var(--forest);color:#fff;border-radius:22px;padding:26px;position:relative;overflow:hidden;box-shadow:0 16px 35px #14372b2e}.summary-card:after{content:"";border:40px solid #b5dc490f;border-radius:50%;width:180px;height:180px;position:absolute;top:-90px;right:-105px}.summary-brand{border-bottom:1px solid #34594b;align-items:center;gap:10px;padding-bottom:18px;display:flex}.mini-logo{border-radius:11px;width:40px;height:40px;font-size:19px}.summary-brand strong{letter-spacing:.05em;font-size:12px}.summary-brand small{letter-spacing:.17em;color:#9db8ac;font-size:7px}.summary-heading{padding:22px 0 17px;display:grid}.summary-heading small{color:#8ba99e;letter-spacing:.14em;font-size:8px}.summary-heading strong{margin:4px 0;font-size:18px}.summary-heading span{color:#b3c9c0;font-size:11px}.line-items{border-top:1px solid #34594b;padding:13px 0}.line-items div{justify-content:space-between;gap:10px;padding:7px 0;font-size:11px;display:flex}.line-items span{color:#b5c9c1}.grand-total{border-top:1px solid #49695d;padding:19px 0 16px;display:grid}.grand-total span{letter-spacing:.15em;color:#9eb5ac;font-size:8px}.grand-total strong{letter-spacing:-.06em;color:#c1e55e;margin:3px 0;font-size:39px;line-height:1.1}.grand-total small{color:#86a096;font-size:8px}.summary-actions{grid-template-columns:1fr 1fr;margin-top:10px;display:grid}.summary-actions button{padding:11px 8px;font-size:10px}.summary-actions .dark-btn{border:1px solid #527165}.print-note{color:#749187;margin-top:15px;font-size:7px}.margin-badge{color:#477126;background:#e9f3d1;border-radius:99px;padding:6px 9px;font-size:11px;font-weight:900}.margin-badge.bad{color:#aa3a2e;background:#ffe4dd}.margin-card .total-line{border-top:1px solid #d8e0d8;margin-top:7px;padding-top:13px}.margin-card .margin-line dt,.margin-card .margin-line dd{color:#4f7f27;font-weight:900}.planner-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:18px;display:grid}.tools-panel{padding:23px}.tool-list{gap:8px;display:grid}.tool{border:1px solid var(--line);text-align:left;color:var(--ink);background:#fafbf8;border-radius:11px;align-items:center;gap:10px;padding:10px;display:flex}.tool.active{background:#f2f8e3;border-color:#95bd32}.tool i,.plan-legend i{border:1px solid #00000014;border-radius:7px;flex:none;width:27px;height:27px}.tool i.grass,.plan-legend i.grass{background:#79ad4d}.tool i.stone,.plan-legend i.stone{background:#d2c7b7}.tool i.obstacle,.plan-legend i.obstacle{background:#365249}.tool i.empty,.plan-legend i.empty{background:#f7f8f3}.tool>span{flex:1;display:grid}.tool strong{font-size:11px}.tool small{color:var(--muted);font-size:8px}.tool b{font-size:10px}.tool-settings{border-top:1px solid var(--line);margin-top:16px;padding-top:5px}.tool-buttons{grid-template-columns:1fr 1fr;gap:7px;margin-top:14px;display:grid}.tool-buttons button{padding:10px;font-size:10px}.planner-tip{background:#eef4dd;border-radius:12px;margin-top:17px;padding:14px}.planner-tip strong{font-size:11px}.planner-tip p{color:#60705f;margin-top:4px;font-size:9px}.planner-work{border:1px solid var(--line);background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 7px 25px #1b382c0b}.plan-top{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;display:grid}.plan-top>div{border-right:1px solid var(--line);padding:18px 21px;display:grid}.plan-top>div:last-child{border:0}.plan-top span{color:var(--muted);letter-spacing:.06em;font-size:9px}.plan-top strong{margin-top:4px;font-size:15px}.plan-top .grass-result{background:var(--lime-soft)}.plan-top .grass-result strong{color:#426c29;font-size:22px}.grid-scroll{background:#e9eee6;max-height:660px;padding:20px;overflow:auto}.garden-grid{-webkit-user-select:none;user-select:none;touch-action:none;background:#d4dcd3;border:1px solid #c9d3c9;border-radius:8px;gap:2px;padding:3px;display:grid}.garden-cell{aspect-ratio:1;background:#f8faf5;border:0;border-radius:2px;min-width:0;padding:0}.garden-cell:hover{box-shadow:inset 0 0 0 2px #b1d54a}.garden-cell.grass{background:linear-gradient(135deg,#83b952,#72a646)}.garden-cell.stone{background:linear-gradient(135deg,#dbd1c3,#cbbfaf)}.garden-cell.obstacle{background:#365249}.plan-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:18px;padding:15px 20px;font-size:9px;display:flex}.plan-legend span{align-items:center;gap:6px;display:flex}.plan-legend i{border-radius:3px;width:13px;height:13px}.plan-legend small{margin-left:auto}.customers-layout{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:18px;display:grid}.customer-form .field{margin-top:10px}.form-actions{justify-content:flex-end;margin-top:18px}.list-toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.list-toolbar h3{font-size:19px}.search{max-width:290px;font-size:11px}.customer-rows{display:grid}.customer-row{border-top:1px solid #edf0ec;grid-template-columns:40px minmax(120px,1fr) minmax(150px,1fr) auto;align-items:center;gap:12px;padding:12px 2px;display:grid}.customer-main,.customer-contact,.quote-tr>span{display:grid}.customer-main strong,.customer-contact span{font-size:12px}.customer-main small,.customer-contact small,.quote-tr small{color:var(--muted);font-size:9px}.row-actions{justify-content:flex-end;gap:5px;display:flex}.row-actions button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;padding:7px 9px;font-size:10px}.row-actions .delete{color:var(--danger);padding:4px 9px;font-size:15px}.empty-state{text-align:center;min-height:260px;color:var(--muted);align-content:center;place-items:center;display:grid}.empty-state>span{color:#577266;background:#edf2e8;border-radius:15px;place-items:center;width:48px;height:48px;margin-bottom:11px;font-size:22px;display:grid}.empty-state strong{color:var(--ink);font-size:13px}.empty-state p{max-width:300px;margin-top:4px;font-size:10px}.quote-table{overflow-x:auto}.quote-tr{border-top:1px solid #edf0ec;grid-template-columns:1.1fr 1.2fr 1.1fr 1fr .9fr 1.2fr;align-items:center;gap:12px;min-width:850px;padding:13px 4px;display:grid}.quote-tr.head{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;background:#f3f6f0;border:0;border-radius:9px;padding:9px;font-size:9px}.quote-tr strong{font-size:11px}.quote-price{text-align:right;font-size:13px;font-weight:900}.status{color:#58685f;background:#eef1ee;border:0;border-radius:99px;padding:6px 8px;font-size:9px;font-weight:800}.status.goedgekeurd,.status.uitgevoerd{color:#4a702c;background:#e5f2cc}.status.verzonden{color:#3c6090;background:#e7eef7}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.settings-card .field{margin-top:10px}.setting-rows{display:grid}.setting-row{border-top:1px solid #edf0ec;justify-content:space-between;align-items:center;gap:15px;padding:8px 0;display:flex}.setting-row label{color:#62736b;font-size:10px}.setting-row>span{width:115px;position:relative}.setting-row b{color:#84918a;font-size:10px;position:absolute;top:50%;left:9px;transform:translateY(-50%)}.setting-row input{border:1px solid var(--line);text-align:right;background:#f8faf6;border-radius:8px;width:100%;padding:7px 8px 7px 24px;font-size:11px}.setting-group{margin-top:16px}.setting-group h4{letter-spacing:.12em;text-transform:uppercase;color:#557065;margin-bottom:4px;font-size:10px}.helper{color:var(--muted);background:#f2f5ef;border-radius:10px;margin-top:15px;padding:11px;font-size:9px}.backup-card>p{color:var(--muted);font-size:10px}.backup-visual{background:var(--forest);color:var(--lime);border-radius:14px;align-items:center;gap:14px;padding:16px;font-size:28px;display:flex}.backup-visual span{display:grid}.backup-visual strong{color:#fff;font-size:13px}.backup-visual small{color:#a7beb5;font-size:9px}.backup-card .form-actions{flex-wrap:wrap;justify-content:flex-start}.backup-card .text-btn{margin-top:15px;font-size:10px}.app-footer{text-align:center;color:#88968f;padding:28px 0 0;font-size:9px}.app-footer span{margin:0 6px}.toast{color:#fff;z-index:50;background:#113c2d;border-radius:13px;align-items:center;gap:9px;padding:13px 18px;font-size:12px;font-weight:700;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 35px #00000038}.toast span{background:var(--lime);color:var(--forest);border-radius:50%;place-items:center;width:20px;height:20px;display:grid}@media (width<=1180px){.main{padding:25px}.fields.four{grid-template-columns:repeat(2,1fr)}.calculator-layout{grid-template-columns:minmax(0,1fr) 330px}.stats-grid{grid-template-columns:repeat(2,1fr)}.customers-layout{grid-template-columns:310px minmax(0,1fr)}.hero-rings{right:2%}}@media (width<=950px){.app-shell{grid-template-columns:1fr}.sidebar{width:252px;transition:all .2s;position:fixed;left:-270px}.sidebar.open{left:0}.menu-btn{place-items:center;display:grid}.topbar{justify-content:flex-start;gap:13px}.top-actions{margin-left:auto}.calculator-layout,.planner-layout,.customers-layout{grid-template-columns:1fr}.summary-column{grid-template-columns:1fr 1fr;position:static}.tools-panel{order:2}.hero-rings{opacity:.5}.dashboard-grid,.settings-grid{grid-template-columns:1fr}.customer-form{max-width:none}}@media (width<=650px){.main{padding:17px 13px}.topbar{margin-bottom:19px}.topbar h1{font-size:19px}.date-chip,.top-actions .primary{display:none}.page-intro{flex-direction:column;align-items:flex-start}.page-intro h2{font-size:25px}.hero{align-items:flex-start;min-height:350px;padding:31px 25px}.hero h2{font-size:42px}.hero-rings{top:auto;bottom:-55px;right:-80px}.hero-actions{flex-direction:column;align-items:stretch;width:190px}.stats-grid{grid-template-columns:1fr 1fr;gap:9px}.metric{padding:15px}.metric strong{font-size:21px}.quick-grid,.package-grid,.fields.two,.fields.four,.fields.small-first,.summary-column{grid-template-columns:1fr}.plan-top{grid-template-columns:1fr 1fr}.plan-top .grass-result{grid-column:1/-1}.customer-row{grid-template-columns:38px 1fr auto}.customer-contact{display:none}.list-toolbar{flex-direction:column;align-items:flex-start}.search{max-width:none}.settings-card{padding:20px}.inline-actions{flex-wrap:wrap;width:100%}.inline-actions button{flex:1}.app-footer{line-height:1.8}.app-footer span{display:none}.toast{bottom:13px;left:13px;right:13px}.plan-legend small{width:100%;margin-left:0}}@media print{body{background:#fff}.sidebar,.topbar,.calculator-forms,.no-print,.app-footer,.page-intro{display:none!important}.app-shell,.calculator-layout{display:block}.main{max-width:none;padding:0}.summary-column{display:block}.summary-card{box-shadow:none;border-radius:0;min-height:100vh;padding:44px}.print-note{font-size:9px}.summary-card:after{display:none}.grand-total strong{font-size:50px}}
