:root{--bg:#f6f7f9;--card:#fff;--text:#222;--muted:#6b7280;--line:#ddd;--accent:#111827;--ok:#e7f8ed;--bad:#fdecec}*{box-sizing:border-box}body{margin:0;font:15px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}header{background:#111827;color:white;padding:12px 20px;display:flex;gap:24px;align-items:center;flex-wrap:wrap}.brand{font-weight:800;font-size:20px}nav{display:flex;gap:6px;flex-wrap:wrap}nav a{color:white;text-decoration:none;padding:8px 10px;border-radius:8px}nav a:hover{background:#374151}.container{max-width:1250px;margin:24px auto;padding:0 16px}h1{margin:0 0 18px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:0 1px 2px #00000008}.metric{font-size:28px;font-weight:800}.muted{color:var(--muted)}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:10px;border-bottom:1px solid #eee;text-align:left;vertical-align:top}th{background:#f3f4f6}input,select,textarea,button{font:inherit;padding:10px;border:1px solid #cfd3d8;border-radius:9px;background:white}textarea{min-height:80px}button,.btn{background:#111827;color:white;border:0;cursor:pointer;text-decoration:none;display:inline-block;padding:10px 14px;border-radius:9px}.btn.secondary,button.secondary{background:#e5e7eb;color:#111}.btn.danger,button.danger{background:#991b1b}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:end}.row>label{display:flex;flex-direction:column;gap:5px;min-width:160px}.flash{padding:11px 14px;border-radius:10px;margin-bottom:14px}.flash.ok{background:var(--ok)}.flash.bad{background:var(--bad)}.pos{display:grid;grid-template-columns:1.4fr .8fr;gap:18px}.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.product{background:white;border:1px solid #ddd;border-radius:12px;padding:14px;cursor:pointer}.product strong{display:block}.cart{position:sticky;top:10px}.total{font-size:26px;font-weight:800}.pill{display:inline-block;padding:3px 8px;border-radius:999px;background:#eee;font-size:12px}.calendar-day{background:#fff;border:1px solid #ddd;padding:12px;border-radius:12px}.appt{padding:8px;border-left:4px solid #111827;background:#f4f4f5;margin:6px 0}.tabs{display:flex;gap:8px;margin:12px 0}.tabs a{padding:8px 10px;background:#e5e7eb;border-radius:8px;text-decoration:none;color:#111}footer{text-align:center;color:#777;padding:30px}.receipt{max-width:380px;margin:auto;background:white;padding:20px;font-family:ui-monospace,monospace}.receipt table{font-size:13px}.right{text-align:right}@media(max-width:800px){.pos{grid-template-columns:1fr}.cart{position:static}header{align-items:flex-start}}@media print{header,footer,.no-print,h1{display:none!important}body{background:#fff}.container{margin:0;padding:0}.receipt{box-shadow:none;border:0;max-width:80mm;padding:2mm}.card{border:0;box-shadow:none}}

/* Touch-optimierte Kasse / Barzahlung */
.touch-product{min-height:86px;font-size:16px;touch-action:manipulation}.touch-remove{min-width:48px;min-height:48px;font-size:24px}.payment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.payment-grid label,.cash-box label{display:flex;flex-direction:column;gap:6px}.payment-grid input,.payment-grid select,.payment-grid textarea,.cash-box input,.cart select{min-height:52px;font-size:18px}.cash-box{margin-top:16px;padding:14px;border:2px solid #d1d5db;border-radius:14px;background:#f9fafb}.cash-box-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px;flex-wrap:wrap}.cash-box-head strong{font-size:18px}.cash-box input{width:100%;font-size:26px;font-weight:800}.quick-cash{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px}.quick-cash button{min-height:56px;font-size:17px;font-weight:700}.change-panel{margin-top:12px;padding:14px;border-radius:12px;background:#eef2f7;display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center}.change-panel span{font-size:17px;font-weight:700}.change-panel strong{font-size:32px}.change-panel small{grid-column:1/-1}.change-panel.change-ok{background:#e7f8ed;border:1px solid #86d69f}.change-panel.change-bad{background:#fdecec;border:1px solid #ef9a9a}.checkout-button{min-height:62px;font-size:20px;font-weight:800}.checkout-button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:600px){.payment-grid{grid-template-columns:1fr}.quick-cash{grid-template-columns:repeat(2,minmax(0,1fr))}.change-panel strong{font-size:28px}}

/* Version 1.2: Touch-Monitor Kasse und Terminkalender */
button,.btn,nav a{touch-action:manipulation}.touch-pos{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(390px,.75fr);gap:18px;align-items:start}.service-panel{min-width:0}.touch-toolbar{display:grid;gap:12px;margin-bottom:14px}.category-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 0 6px;scrollbar-width:thin}.category-tab{min-height:52px;min-width:104px;padding:10px 18px;background:#e5e7eb;color:#111827;font-size:17px;font-weight:750;white-space:nowrap}.category-tab.active{background:#111827;color:#fff}.service-search{display:flex;flex-direction:column;gap:5px;font-weight:700}.service-search input{min-height:56px;font-size:19px;padding:12px 16px}.touch-products{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.touch-product{min-height:118px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;text-align:left;padding:16px;font-size:17px}.touch-product strong{font-size:18px;line-height:1.2}.touch-product .service-price{font-size:22px;font-weight:850}.touch-product small{color:#6b7280;font-size:14px}.touch-cart{position:sticky;top:10px;padding:18px}.cart-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.cart-title h2{margin:0}.cart-title span{background:#eef0f3;border-radius:999px;padding:7px 10px;font-weight:700}.cart-items{max-height:315px;overflow:auto;margin:12px 0}.empty-cart{padding:26px 10px;text-align:center;color:#6b7280;background:#f8f9fa;border-radius:12px}.cart-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border-bottom:1px solid #eee;padding:10px 0}.cart-line strong,.cart-line small{display:block}.cart-line small{margin-top:3px;color:#6b7280}.grand-total{display:flex;justify-content:space-between;align-items:end;padding:15px 0;border-top:2px solid #111827}.grand-total span{font-size:18px;font-weight:700}.grand-total strong{font-size:31px}.checkout-selects{display:grid;grid-template-columns:1fr 1fr;gap:10px}.checkout-selects label{display:flex;flex-direction:column;gap:5px;font-weight:700}.checkout-selects select{min-height:54px;font-size:17px}.payment-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.payment-preset{min-height:55px;background:#e5e7eb;color:#111827;font-weight:800;font-size:16px}.clear-cart{margin-top:10px}.clear-cart button{width:100%;min-height:48px}.appointment-toolbar,.calendar-heading{display:flex;justify-content:space-between;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:14px}.day-nav{display:flex;gap:8px;flex-wrap:wrap}.touch-nav,.new-appt{min-height:52px;font-size:17px;display:inline-flex;align-items:center}.date-jump{display:flex;gap:8px;align-items:end}.date-jump label{display:flex;flex-direction:column;gap:4px}.date-jump input,.date-jump button{min-height:52px;font-size:17px}.calendar-heading>div{display:flex;gap:12px;align-items:baseline}.calendar-heading strong{font-size:25px}.calendar-heading span{color:#6b7280}.quick-appointment{margin-bottom:16px;border:2px solid #111827}.appointment-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.appointment-form-grid label,.wide-note{display:flex;flex-direction:column;gap:5px;font-weight:700}.appointment-form-grid input,.appointment-form-grid select,.wide-note input{min-height:54px;font-size:17px}.wide-note{margin-top:12px}.form-actions{display:flex;gap:10px;margin-top:14px}.form-actions button{min-height:54px;font-size:17px}.day-calendar-wrap{overflow:auto;border:1px solid #d7dbe0;border-radius:14px;background:#fff;max-height:760px}.day-calendar{display:grid;grid-template-columns:78px repeat(var(--employee-count),minmax(190px,1fr));grid-template-rows:64px calc(var(--slot-count) * 44px);min-width:max(100%,calc(78px + var(--employee-count) * 190px));position:relative}.time-head{grid-column:1;grid-row:1;background:#f3f4f6;position:sticky;top:0;z-index:5;border-bottom:1px solid #d7dbe0}.employee-head{grid-row:1;background:#f3f4f6;position:sticky;top:0;z-index:5;padding:19px 10px;text-align:center;font-weight:850;border-left:1px solid #d7dbe0;border-bottom:1px solid #d7dbe0;font-size:17px}.time-axis{grid-column:1;grid-row:2;position:relative;background:#fafafa;border-right:1px solid #d7dbe0}.time-label{position:absolute;right:10px;transform:translateY(-9px);font-size:13px;color:#6b7280}.employee-column{position:relative;min-width:0;border-right:1px solid #d7dbe0;height:calc(var(--slot-count) * 44px)}.slot-lines{position:absolute;inset:0;display:grid;grid-template-rows:repeat(var(--slot-count),44px)}.slot-lines>div{border-bottom:1px solid #eef0f2}.slot-lines>div:nth-child(4n){border-bottom-color:#cfd3d8}.calendar-appt{position:absolute;left:6px;right:6px;border-radius:10px;padding:7px 9px;background:#e9eef8;border-left:5px solid #374151;overflow:hidden;box-shadow:0 1px 2px #00000012;z-index:2}.calendar-appt strong,.calendar-appt span,.appt-time{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appt-time{font-size:12px;font-weight:800}.calendar-appt span{font-size:13px;color:#4b5563}.calendar-appt.status-done{background:#e7f8ed;border-left-color:#238636}.calendar-appt.status-cancelled{background:#f3f4f6;border-left-color:#9ca3af;text-decoration:line-through}.calendar-appt.status-noshow{background:#fff4e5;border-left-color:#b45309}.appt-actions{display:flex;gap:8px;margin-top:5px}.appt-actions a{font-size:12px;font-weight:800;color:#111827;background:#fff8;padding:3px 6px;border-radius:6px;text-decoration:none}.mobile-appointments{display:none}
@media(max-width:1000px){.touch-pos{grid-template-columns:1fr}.touch-cart{position:static}.cart-items{max-height:none}.appointment-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){header{padding:10px}.container{margin:14px auto;padding:0 10px}nav a{min-height:46px;display:inline-flex;align-items:center}.touch-products{grid-template-columns:repeat(2,minmax(0,1fr))}.touch-product{min-height:108px;padding:12px}.checkout-selects,.appointment-form-grid{grid-template-columns:1fr}.payment-presets{grid-template-columns:1fr}.day-calendar-wrap{display:none}.mobile-appointments{display:grid;gap:9px}.mobile-appt{display:flex;justify-content:space-between;gap:10px}.mobile-appt strong,.mobile-appt span{display:block}.calendar-heading strong{font-size:21px}}
@media(max-width:430px){.touch-products{grid-template-columns:1fr 1fr}.touch-product strong{font-size:16px}.touch-product .service-price{font-size:19px}.quick-cash{grid-template-columns:repeat(3,1fr)}}
