
:root{
  --green:#244532;--green2:#2f6b3e;--orange:#cf7b2d;--cream:#fffaf0;--paper:#fbf8f1;--ink:#142014;--muted:#7c786f;--line:#eadfce;--active-cat:#e6f7ff;
}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:#fbf8f1}button,input,select,textarea{font:inherit}button{cursor:pointer}
.hidden{display:none!important}

/* Nieuwe moderne kaartvormgeving */
.modern-menu-body{background:#fbf8f1}
.modern-app{min-height:100vh;display:grid;grid-template-columns:230px 1fr}
.side-menu{position:sticky;top:0;height:100vh;background:#fffdf8;border-right:1px solid var(--line);padding:22px 16px;display:flex;flex-direction:column;gap:18px}
.side-logo{text-align:center;border-bottom:1px solid var(--line);padding-bottom:22px;color:var(--green)}
.side-logo img{width:110px;height:110px;object-fit:contain;margin:auto;display:block}.side-logo strong{display:block;font-size:22px;letter-spacing:.02em}.side-logo span{display:block;color:#504b43;font-size:14px;margin-top:4px}
.side-tabs{display:grid;gap:8px}.side-tabs button{display:flex;align-items:center;gap:13px;border:0;background:transparent;border-radius:13px;padding:13px;color:#3b3b36;text-align:left}.side-tabs button span{width:24px;text-align:center}.side-tabs button.active{background:#f0f3ea;color:var(--green);font-weight:900}
.side-cart{margin-top:auto;border:1px solid #9db09c;background:#fff;border-radius:14px;color:var(--green);padding:15px;font-weight:800;display:flex;gap:10px;align-items:center;justify-content:center}.side-cart b{background:var(--green);color:#fff;border-radius:999px;min-width:26px;height:26px;display:grid;place-items:center}
.made{text-align:center;color:#8a847a;font-size:13px;line-height:1.55}

.menu-shell{min-width:0}
.menu-topbar{height:86px;background:#fffdf8;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;gap:18px;padding:0 28px;position:sticky;top:0;z-index:8}
.mobile-brand{margin-right:auto;display:flex;align-items:center;gap:12px}.mobile-brand img{width:56px;height:56px;object-fit:contain}.mobile-brand b{display:block;color:var(--green);font-size:22px}.mobile-brand span{display:block;color:#5d574e}
.table-button,.modern-cart{border:1px solid var(--line);background:#fffaf0;border-radius:13px;padding:14px 18px;font-size:18px}.modern-cart{position:relative}.modern-cart span{position:absolute;right:-8px;top:-8px;background:var(--green);color:#fff;border-radius:999px;font-size:13px;min-width:24px;height:24px;display:grid;place-items:center;font-weight:900}

.category-hero{margin:24px 28px 0;background:#fff;border:1px solid var(--line);border-radius:14px 14px 0 0;display:flex;align-items:center;gap:18px;padding:22px 26px;background:linear-gradient(90deg,#fff,var(--active-cat))}
.category-icon{font-size:35px;width:58px;height:58px;border-radius:16px;background:#fffaf0;display:grid;place-items:center;border:1px solid var(--line)}
.category-hero h1{margin:0;font-size:29px}.category-hero p{margin:3px 0 0;color:#5d574e;font-size:18px}

.filterbar{margin:0 28px;background:#fff;border:1px solid var(--line);border-top:0;padding:18px 24px;display:flex;gap:18px;align-items:center;justify-content:space-between}
.chip-tabs{display:flex;gap:12px;overflow:auto}.chip-tabs button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 18px;display:flex;gap:8px;align-items:center;white-space:nowrap}.chip-tabs button.active{background:var(--green);color:#fff;border-color:var(--green);font-weight:900}
.searchbox{display:flex;align-items:center;border:1px solid var(--line);border-radius:12px;background:#fff;min-width:280px;padding:0 12px}.searchbox input{border:0;outline:0;padding:13px;width:100%;background:transparent}

.modern-grid{margin:0 28px 34px;background:#fff;border:1px solid var(--line);border-top:0;border-radius:0 0 14px 14px;padding:18px 24px;display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:16px}
.modern-card{border:1px solid #ebe1d3;background:#fff;border-radius:14px;min-height:205px;padding:16px;display:grid;grid-template-columns:92px 1fr;grid-template-rows:1fr auto;gap:10px 16px;box-shadow:0 8px 20px #00000005;transition:.15s}
.modern-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px #0000000d;border-color:#dccbb4}
.modern-img{grid-row:1/3;width:92px;height:144px;display:grid;place-items:center;background:linear-gradient(180deg,#fff,var(--catcolor));border-radius:12px;overflow:hidden}
.modern-img img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain}
.modern-info h3{margin:2px 0 5px;font-size:19px;color:#151c15}.modern-info p{margin:0;color:#7c786f;font-size:14px;line-height:1.35}.modern-info strong{display:block;margin-top:18px;color:var(--green);font-size:21px}
.modern-card button{grid-column:2;border:0;background:var(--green);color:#fff;border-radius:12px;padding:11px 12px;font-weight:900}.empty-state{padding:40px;color:#777}

/* Suggestion */
.suggestion{margin:16px 28px;background:#fff8df;border:1px solid #efd08c;border-radius:14px;padding:15px 18px;color:#5d3d12}

/* Cart */
.cart{position:fixed;inset:0;background:#0008;z-index:30;display:flex;justify-content:flex-end}.cartpanel{width:min(520px,100%);height:100%;background:#fff;padding:22px;overflow:auto;box-shadow:-20px 0 40px #0004}.x{float:right;border:0;background:#eee;border-radius:50%;width:42px;height:42px;font-size:28px}
.cartline{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid #eee}.qty{display:flex;gap:6px;align-items:center}.qty button{border:0;border-radius:10px;background:#eee;padding:8px 11px}
.note textarea{width:100%;height:86px;border:1px solid #ddd;border-radius:14px;padding:12px;margin-top:8px}.paybox{display:grid;grid-template-columns:1fr 1fr;gap:10px}.paybox button,.send,.bigbtn{border:0;border-radius:16px;background:var(--orange);color:white;padding:16px;font-weight:900}.paybox button.active{background:var(--green)}.send{width:100%;margin-top:12px;font-size:18px}.small{color:#777;font-size:13px}
.thanks{position:fixed;inset:0;background:#244532;z-index:50;display:grid;place-items:center;color:white;text-align:center}.thanks>div{background:#fff;color:#222;padding:30px;border-radius:26px}.thanks button{border:0;background:var(--orange);color:#fff;border-radius:14px;padding:14px 20px;font-weight:900}

/* Admin blijft bruikbaar */
.adminbody.lightadmin{background:#f7f2e8;color:#1c1c1c}.adminhead{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 22px;background:#fffaf0;border-bottom:1px solid #eadfce;position:sticky;top:0;z-index:10;box-shadow:0 8px 25px #0000000d}.adminbrand{display:flex;gap:14px;align-items:center}.adminbrand img{width:72px;height:72px;object-fit:contain;background:white;border-radius:18px;padding:6px;border:1px solid #eadfce}.adminbrand h1{margin:0;color:#244532}.adminbrand p{margin:3px 0 0;color:#746f65}.adminnav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.adminnav a,.adminnav button{text-decoration:none;border:0;border-radius:14px;background:#efe7d9;color:#244532;padding:11px 13px;font-weight:900}.adminnav a.active,.adminnav button{background:#244532;color:white}.orders{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;padding:18px}.order{background:#fff;color:#111;border-radius:22px;padding:18px;box-shadow:0 12px 30px #00000012;border:1px solid #eadfce}.order.new{outline:4px solid #e98945}.order h2{margin:0 0 6px}.order ul{padding-left:20px}.done{width:100%;border:0;border-radius:16px;background:#244532;color:#fff;padding:17px;font-size:18px;font-weight:900}.meta{color:#555}
.product-admin{max-width:1360px;margin:0 auto;padding:18px}.admin-toolbar{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.searchbar{display:flex;gap:8px;width:100%}.searchbar input{flex:1;border:1px solid var(--line);border-radius:14px;padding:13px;background:white}.searchbar button{border:0;background:var(--green);color:white;border-radius:14px;padding:0 18px;font-weight:900}.category-pills{display:flex;gap:10px;overflow:auto;margin:12px 0 18px;padding-bottom:4px}.category-pills a{border:1px solid #e1d3bd;text-decoration:none;padding:12px 16px;border-radius:16px;font-weight:900;white-space:nowrap;color:#26392b}.category-pills a.selected{outline:3px solid var(--green)}.add-card{border:1px solid #e5d8c5;border-radius:22px;padding:16px;margin-bottom:16px}.add-card h2{margin:0 0 12px;color:#244532}.products-list{display:grid;gap:12px}.product-edit-card{background:linear-gradient(90deg,var(--cat-bg),#fff 28%);border:1px solid #eadfce;border-radius:20px;padding:14px;box-shadow:0 8px 22px #0000000b}.product-edit-card.disabled{opacity:.62}.product-row-form{display:grid;grid-template-columns:2fr .7fr 1.2fr 2fr auto auto;gap:10px;align-items:end}.product-row-form label{display:block;font-size:12px;font-weight:900;color:#615b52;margin-bottom:4px}.product-row-form input,.product-row-form select{width:100%;border:1px solid #dacdbb;border-radius:12px;padding:11px;background:white}.product-row-form .wide{min-width:220px}.product-row-form .check{display:flex;gap:7px;align-items:center;margin:0;font-size:14px;color:#244532}.savebtn{border:0;background:#244532;color:white;border-radius:13px;padding:12px 15px;font-weight:900}.delete-form{margin-top:8px;text-align:right}.deletebtn{border:0;background:#fee2e2;color:#991b1b;border-radius:12px;padding:9px 12px;font-weight:900}.new-product{grid-template-columns:1fr 1.4fr .7fr 2fr auto}.ok{background:#dcfce7;padding:14px;border-radius:14px;margin-bottom:12px;color:#14532d}.err{background:#fee2e2;padding:14px;border-radius:14px;margin-bottom:12px;color:#991b1b}
.loginbody{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#fffaf0,#eadfce)}.login-card{width:min(460px,92vw);background:white;border-radius:28px;padding:30px;box-shadow:0 20px 70px #00000018;text-align:center;border:1px solid #eadfce}.login-logo{width:140px;height:140px;object-fit:contain;margin:auto}.login-card h1{color:#244532;margin:10px 0 4px}.login-card p{color:#746f65}.login-form{text-align:left;display:grid;gap:13px;margin-top:20px}.login-form label{font-weight:900;color:#244532}.login-form input{width:100%;margin-top:6px;border:1px solid #dacdbb;border-radius:14px;padding:14px;background:#fffaf0}.login-form button{border:0;background:#244532;color:white;border-radius:16px;padding:15px;font-weight:900;font-size:17px}
.install{display:grid;place-items:center;min-height:100vh}.install-card{max-width:720px;background:#fff;border-radius:24px;padding:30px;box-shadow:0 20px 60px #0002}.qrprint{background:#fff}.qrprint header{display:flex;justify-content:space-between;padding:20px}.qrs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:20px}.qrcard{border:1px dashed #999;border-radius:16px;text-align:center;padding:14px;break-inside:avoid}.qrcard img{width:170px;height:170px}@media print{.qrprint header button{display:none}.qrs{grid-template-columns:repeat(3,1fr)}}

@media(max-width:980px){
 .modern-app{grid-template-columns:1fr}.side-menu{display:none}.menu-topbar{height:78px;padding:0 14px}.category-hero,.filterbar,.modern-grid,.suggestion{margin-left:10px;margin-right:10px}.filterbar{display:block}.chip-tabs{margin-bottom:12px}.searchbox{min-width:0}.modern-grid{grid-template-columns:1fr;padding:12px}.modern-card{grid-template-columns:86px 1fr}.mobile-brand b{font-size:18px}.table-button{display:none}
}
