:root{--black:#0d0d0e;--panel:#171719;--gold:#d7a72f;--gold2:#f2cf72;--red:#a82020;--cream:#f4efe4;--muted:#b8b2a8;--line:rgba(255,255,255,.13);--green:#2f9c63}
*{box-sizing:border-box}body.app{margin:0;background:#0d0d0e;color:#f4efe4;font-family:Arial,sans-serif}.app-header{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:#111;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.app-brand img{width:190px}.app-header nav{display:flex;gap:10px;align-items:center}.app-header a,.app-header button{color:white;text-decoration:none;background:#232326;border:1px solid var(--line);border-radius:9px;padding:10px 14px;font-weight:800}.container{max-width:1250px;margin:auto;padding:24px}.narrow{max-width:560px;margin:70px auto;padding:24px}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;margin-bottom:18px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.right{margin-left:auto}.hidden{display:none!important}button,.btn{border:0;border-radius:9px;padding:11px 15px;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#17120a;font-weight:900;cursor:pointer}.secondary{background:#29292d;color:white;border:1px solid var(--line)}.danger{background:#8f2424;color:white}.success{background:var(--green);color:white}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.tabs button{background:#252529;color:white}.tabs button.active{background:var(--gold);color:#17120a}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat{background:#1c1c1f;border:1px solid var(--line);border-radius:14px;padding:16px}.stat span{color:var(--muted);display:block}.stat strong{font-size:1.6rem}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--gold2)}input,select,textarea{width:100%;background:#111;color:white;border:1px solid var(--line);border-radius:8px;padding:11px;font:inherit}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label{display:grid;gap:6px;color:var(--muted);font-weight:800}.wide{grid-column:1/-1}.admin-actions{display:flex;gap:10px}.dialog-body{min-width:min(880px,88vw);max-height:85vh;overflow:auto;background:#171719;color:white;padding:22px;border:1px solid var(--line);border-radius:14px}dialog{background:transparent;border:0}.pill{display:inline-block;padding:5px 9px;border-radius:99px;background:#29292d;margin:3px}.pos-layout{display:grid;grid-template-columns:1fr 410px;gap:16px}.products-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px}.product-card{background:#1b1b1e;border:1px solid var(--line);border-radius:14px;padding:14px;cursor:pointer}.product-card img{width:100%;height:115px;object-fit:cover;border-radius:9px}.product-card h3{margin:8px 0 4px}.cart{position:sticky;top:90px}.cart-row{display:grid;grid-template-columns:1fr auto;gap:9px;padding:11px 0;border-bottom:1px solid var(--line)}.qty{display:flex;align-items:center;gap:7px}.qty button{padding:6px 10px}.cart-total{font-size:1.6rem;font-weight:900;display:flex;justify-content:space-between;margin:16px 0}.order-card{border-left:5px solid var(--gold);}.order-items{color:#d7d1c7}.customer-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.customer-summary .stat{padding:12px}.family-row{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr auto;gap:8px;align-items:end;margin:8px 0}.toast{position:fixed;right:20px;bottom:20px;background:#26794d;color:white;padding:14px 18px;border-radius:10px;z-index:100}.toast.error{background:#9b2525}@media(max-width:900px){.pos-layout{grid-template-columns:1fr}.products-grid{grid-template-columns:repeat(2,1fr)}.cart{position:static}.stats,.customer-summary{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.family-row{grid-template-columns:1fr 1fr}.app-header nav a{display:none}}

.customer-results{background:#111;border:1px solid var(--line);border-radius:10px;margin:8px 0;max-height:340px;overflow:auto;padding:6px}.customer-result{width:100%;display:flex;justify-content:space-between;gap:14px;text-align:left;background:#1f1f22;color:white;border:1px solid var(--line);margin:5px 0;padding:11px 12px}.customer-result:hover{border-color:var(--gold)}.customer-result small{display:block;color:var(--muted);font-weight:400;margin-top:3px}

/* Mulder's lichte huisstijl - account, sparen, bestellen, POS en beheer */
:root{--black:#fff;--panel:#fff;--cream:#181818;--muted:#666;--line:#e4ddd2}
body.app{background:#f7f5f1;color:#181818}
.site-header,.app-header{background:#fff;border-color:#e4ddd2;box-shadow:0 3px 18px rgba(0,0,0,.06)}
.brand img,.app-brand img{width:230px}
.site-header .nav a{color:#202020}
.app-header a,.app-header button{color:#202020;background:#fff;border-color:#ded5c8}
.card,.stat,.product-card,.dialog-body,.customer-results,.customer-result{background:#fff;color:#181818;border-color:#e4ddd2;box-shadow:0 8px 24px rgba(0,0,0,.05)}
input,select,textarea{background:#fff;color:#181818;border-color:#d8d0c4}
.secondary,.tabs button{background:#f3efe8;color:#202020;border-color:#d8d0c4}
.tabs button.active{background:var(--gold);color:#17120a}
.stat span,.form-grid label,.customer-result small{color:#666}
th{color:#9b6b0d}.order-items{color:#575757}.pill{background:#f1ece3;color:#222}
.customer-result:hover{background:#fffaf0}
dialog::backdrop{background:rgba(0,0,0,.35)}

/* Productafbeeldingen: compact en gelijkmatig in POS en beheer */
.product-card{overflow:hidden}
.product-card img{
  display:block;
  width:100%;
  height:96px;
  max-height:96px;
  object-fit:cover;
  object-position:center;
  border-radius:9px;
  margin-bottom:9px;
  background:#f3efe7;
}
.admin-product-thumb{
  display:block;
  width:72px;
  height:52px;
  max-width:72px;
  max-height:52px;
  object-fit:cover;
  object-position:center;
  border-radius:8px;
  background:#f3efe7;
}
@media(max-width:900px){
  .product-card img{height:88px;max-height:88px}
  .admin-product-thumb{width:60px;height:44px;max-width:60px;max-height:44px}
}
.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.payment-grid button:nth-child(3){grid-column:1/-1}.discount-row{margin-top:14px}.discount-row button{padding:8px 10px}.pay-amount{font-size:2.2rem;font-weight:900;color:#9b6b0d}.dialog-body label{display:grid;gap:8px;margin:18px 0}#paymentDialog::backdrop,#reportDialog::backdrop{background:rgba(0,0,0,.45)}@media(max-width:520px){.payment-grid{grid-template-columns:1fr}.payment-grid button:nth-child(3){grid-column:auto}}
.payment-grid #pinButton,.payment-grid #cashButton{min-height:96px;font-size:1.25rem;border-radius:14px}
.event-banner{background:#fff4d7;border:2px solid #d7a72f;border-radius:14px;padding:14px;margin-bottom:14px}.event-product.included strong{color:#2f7d4f}.event-product.extra strong{color:#9b6b0d}.print-only{display:none}@media print{.no-print,.app-header{display:none!important}.print-only{display:block}.container{max-width:none;padding:0}.card{box-shadow:none;border:0}}

.cash-quick{flex-wrap:wrap;margin:10px 0}.cash-quick button{min-width:70px}.kiosk .site-header{display:none}.kiosk .container{max-width:none;padding:8px}.kiosk .product-card,.kiosk button{min-height:52px}.kiosk .products-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr))}

#receiptPanel h3.wide{grid-column:1/-1;margin:18px 0 0;border-bottom:1px solid #ddd;padding-bottom:6px}#receiptPanel .form-grid label{align-self:start}#receiptPanel textarea{min-height:82px}.luxe-toolbar{padding:12px}.category-bar{display:flex;gap:8px;overflow:auto;padding:10px 0}.category-bar button{white-space:nowrap}.category-bar .active{background:#d7a72f;color:#17120a}.held-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px;border-bottom:1px solid #ddd}.line-note{font-size:.72rem;padding:6px!important}
.menu-builder-dialog .dialog-body{min-width:min(560px,92vw);padding:26px}.menu-builder-dialog .eyebrow{display:block;color:#9b6b0d;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:950}.menu-builder-dialog h2{margin:7px 0 8px}.menu-builder-dialog label{font-weight:900;color:#4c4337}.menu-builder-saving{display:inline-block;background:#fff4d7;border-radius:99px;padding:7px 11px;color:#704c0b;font-weight:900}.menu-builder-summary{display:flex;align-items:center;justify-content:space-between;margin:18px 0 8px;padding:14px;border-radius:11px;background:#f6f1e8;font-size:1.2rem}.menu-builder-summary strong{color:#91610a;font-size:1.45rem}.menu-builder-confirm{width:100%;margin-top:18px;min-height:50px}.menu-question-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.make-menu{font-size:.72rem;padding:6px!important;white-space:nowrap}@media(max-width:520px){.menu-question-actions{grid-template-columns:1fr}.menu-builder-dialog .dialog-body{padding:18px}}
.product-card{position:relative}.sold-out{opacity:.62;cursor:not-allowed!important}.sold-out-ribbon{position:absolute;z-index:4;left:-12%;top:42%;width:124%;padding:7px;background:#b51818;color:#fff;text-align:center;font-weight:950;letter-spacing:.08em;transform:rotate(-9deg);box-shadow:0 2px 7px #0004}.soldout-row{background:#ffe5e5!important;color:#8f1717}
.pos-customer-overlay{position:fixed!important;inset:0!important;z-index:2147483000!important;display:flex;align-items:flex-start;justify-content:center;padding:84px 18px 18px;background:rgba(12,12,13,.76);backdrop-filter:blur(6px)}.pos-customer-modal{width:min(680px,100%);max-height:calc(100dvh - 102px);overflow:hidden;display:grid;grid-template-rows:auto auto auto minmax(80px,1fr);gap:12px;background:#fff;color:#181818;border:2px solid #d7a72f;border-radius:18px;padding:22px;box-shadow:0 30px 90px rgba(0,0,0,.4)}.pos-customer-modal-head{display:flex;align-items:flex-start;gap:16px}.pos-customer-modal-head h2{margin:2px 0 0;font-family:Georgia,serif;font-size:2rem}.pos-customer-modal-head small{color:#9b6b0d;font-weight:950;letter-spacing:.12em}.pos-customer-modal-head button{margin-left:auto}.pos-customer-modal label{font-weight:900}.pos-customer-modal input{background:#fff;color:#181818;border:2px solid #d7a72f;font-size:1.15rem;min-height:54px}.pos-customer-results{overflow:auto;overscroll-behavior:contain;padding:4px;min-height:80px}.pos-customer-results .customer-result{width:100%;margin:0 0 8px;text-align:left;min-height:64px}@media(max-width:700px),(max-height:650px){.pos-customer-overlay{padding:10px;align-items:flex-start}.pos-customer-modal{max-height:calc(100dvh - 20px);border-radius:14px;padding:15px}.pos-customer-modal-head h2{font-size:1.55rem}}
.warning,.low-stock{background:#fff4d7!important}.report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.kds-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px}.kds-ticket{background:#fff;border:3px solid #d7a72f;border-radius:16px;padding:16px;box-shadow:0 8px 24px #0001}.kds-ticket header,.kds-ticket footer{display:flex;justify-content:space-between;gap:10px;align-items:center}.kds-ticket header{font-size:1.15rem;border-bottom:1px solid #ddd;padding-bottom:10px}.kds-line{font-size:1.25rem;border-bottom:1px dashed #ddd;padding:8px 0}.kds-line small{display:block;color:#a82020}.kds-ticket.in-bereiding{border-color:#3e7cb1}.kds-ticket.gereed{border-color:#2f9c63;background:#effbf4}@media(max-width:900px){.report-grid{grid-template-columns:1fr}}

/* Feestfacturen */
.event-admin .page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.event-admin .page-heading h1,.event-banner h1{margin:.15em 0;font-family:Georgia,serif;color:#2a2117}.event-admin .eyebrow{color:#98680f;font-size:.72rem;font-weight:950;letter-spacing:.14em}.event-list-row{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:18px}.event-list-row small,.event-list-money small{display:block;color:#6f675d;margin-top:5px}.event-list-money{text-align:right}.status-chip{display:inline-flex;align-items:center;min-height:26px;padding:5px 9px;border:1px solid #ddd3c5;border-radius:999px;background:#f5f1ea;color:#5d5448;font-size:.73rem;font-weight:900}.status-chip.ok{background:#e8f7ee;border-color:#9bc9ad;color:#1e6d43}.status-chip.attention{background:#fff3ce;border-color:#dfbf57;color:#77520b}.event-toolbar{margin-bottom:14px}.event-banner{padding:24px;background:linear-gradient(135deg,#fff4d7,#fff);box-shadow:0 9px 28px #50340012}.event-banner p{margin-bottom:0;color:#665d50}.event-stats{margin:14px 0}.event-primary-action{min-height:58px;margin:0 0 18px;font-size:1.05rem}.event-columns{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(430px,1.18fr);gap:18px}.event-columns>.card{height:fit-content}.customer-invoice-card h2,.invoice-card h2{margin:.25em 0}.customer-invoice-card p{line-height:1.55}.invoice-card{border-top:4px solid #d7a72f}.invoice-warning{margin:16px 0;padding:14px 16px;background:#fff3d6;border:1px solid #e1bf60;border-radius:10px}.invoice-warning ul{margin:8px 0 0;padding-left:20px}.invoice-meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:16px 0}.invoice-meta-grid>div{display:grid;gap:4px;padding:11px;background:#f7f3ec;border-radius:9px}.invoice-meta-grid small{color:#6d6458}.immutable-note{padding:11px 13px;border-left:4px solid #a82020;background:#fff5f4;color:#62574e}.invoice-line{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;padding:11px 0;margin:0;border-bottom:1px solid #eee7dc}.invoice-line>span:last-child{text-align:right}.invoice-line small{display:block;margin-top:4px;color:#746b60}.line-delete{display:block;margin:5px 0 0 auto;padding:5px 8px;background:#fff1f1;color:#8d2020;border:1px solid #e6c3c3}.invoice-summary p{display:flex;justify-content:space-between;gap:20px;margin:0;padding:9px 0;border-bottom:1px solid #eee7dc}.invoice-summary hr{border:0;border-top:2px solid #d7a72f}.invoice-summary .invoice-grand-total{font-size:1.3rem;border:0}.event-search{width:min(340px,100%);margin-left:auto}.event-dialog{width:min(960px,92vw)}.dialog-title{margin:8px 0 22px}.dialog-title h2{margin:.25em 0;font-family:Georgia,serif;font-size:2rem}.event-form{display:grid;gap:18px}.event-form fieldset{min-width:0;margin:0;padding:18px;border:1px solid #e2d9ca;border-radius:13px;background:#fbf9f5}.event-form legend{padding:0 8px;color:#8d600c;font-weight:950}.event-form label{display:grid;gap:7px;color:#51483c;font-weight:850}.event-form .form-grid label{margin:0}.event-form .field-hint,.field-hint{color:#746b60;font-size:.86rem;line-height:1.5}.terms-check{display:flex!important;grid-column:1/-1;align-items:flex-start;gap:10px;line-height:1.45}.terms-check input{width:auto;margin-top:3px}.terms-check a{color:#8b5d08}.event-form button.wide{min-height:52px}button:disabled{cursor:not-allowed;opacity:.48;filter:grayscale(.5)}
@media(max-width:900px){.event-columns{grid-template-columns:1fr}.event-list-row{grid-template-columns:1fr auto}.event-list-row>button{grid-column:1/-1}.event-stats{grid-template-columns:1fr 1fr}.event-admin .page-heading{display:grid}.event-admin .page-heading>.row{margin-left:0}}
@media(max-width:560px){.event-list-row{grid-template-columns:1fr}.event-list-money{text-align:left}.event-stats,.invoice-meta-grid{grid-template-columns:1fr}.event-dialog{width:96vw;padding:15px}.invoice-line{display:grid;gap:5px}.invoice-line>span:last-child{text-align:left}.line-delete{margin-left:0}}
.acceptance-box{display:grid;gap:8px;margin-top:20px;padding:15px;border:1px solid #dfd4c4;border-left:5px solid #d7a72f;border-radius:11px;background:#faf7f1}.acceptance-box p,.acceptance-box small{margin:0}.acceptance-box.accepted{border-left-color:#2f9c63;background:#eef9f2}.acceptance-box.pending{border-left-color:#d7a72f;background:#fff8df}.acceptance-box button,.acceptance-box .btn{width:fit-content;margin-top:5px}
