/* SnackDragon Sortiment-Planer: Kaufsimulation. Alle Regeln greifen nur über .sds-* Klassen, die sortiment-planer-sim.js setzt. */
/* Touchscreen-Kacheln und Seiten */
.tcn-ui__tile.sds-tile{cursor:pointer;transition:transform .12s ease-out}
.tcn-ui__tile.sds-tile:hover{box-shadow:0 0 0 .18cqw #1673c9!important}
.tcn-ui__tile.sds-tile:active{transform:scale(.95)}
.tcn-ui__tile.sds-tile:focus{outline:none}
.tcn-ui__tile.sds-tile:focus-visible{box-shadow:0 0 0 .25cqw #e8c76a!important}
.tcn-ui__tile.sds-tile[hidden]{display:none!important}
.tcn-ui__tile.sds-out{cursor:not-allowed}
.tcn-ui__tile.sds-out img{opacity:.3;filter:grayscale(1)}
.tcn-ui__tile.sds-out::after{content:attr(data-sds-out);position:absolute;left:4%;right:4%;top:42%;padding:.12cqw 0;background:rgb(224 38 43 / .92);color:#fff;font:700 .36cqw/1.1 Arial,Helvetica,sans-serif;text-align:center;border-radius:.08cqw;transform:rotate(-12deg)}
.tcn-ui.sds-paged .tcn-ui__grid{padding-bottom:.6%!important}
.sds-pager{flex:0 0 4.2%;display:flex;align-items:center;justify-content:center;gap:12%;min-height:0;background:rgb(255 255 255 / .55);border-top:.06cqw solid rgb(30 60 110 / .18)}
.sds-pager__b{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:3.4cqw;height:100%;font:700 1.25cqw/1 Arial,Helvetica,sans-serif;color:#1673c9;cursor:pointer;border-radius:.2cqw}
.sds-pager__b:hover{background:rgb(22 115 201 / .12)}
.sds-pager__b:focus-visible{box-shadow:0 0 0 .2cqw #e8c76a}
.sds-pager__l{font:700 .62cqw/1 Arial,Helvetica,sans-serif;color:#4a5a70}
.tcn-ui.sds-busy .tcn-ui__grid,.tcn-ui.sds-busy .sds-pager{visibility:hidden}

/* Touchscreen-Ansichten (Detail, Bezahlen, Ausgabe) */
.sds-scr{position:absolute;left:0;right:0;top:2.6%;bottom:0;z-index:2;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:.55cqw;padding:.9cqw 1.3cqw .7cqw;overflow:hidden;background:linear-gradient(180deg,#a9c9ec 0,#d6e5f5 35%,#e6eef8 60%,#c9dcf1 100%);font-family:Arial,Helvetica,sans-serif;color:#1d2b3e;text-align:center}
.sds-scr__head{display:flex;justify-content:space-between;width:100%;font:400 .82cqw/1.2 Arial,Helvetica,sans-serif;color:#4a5a70}
.sds-scr__card{flex:0 0 13.5cqw;min-height:0;overflow:hidden;width:100%;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:.45cqw;box-shadow:0 .1cqw .35cqw rgb(30 60 110 / .2)}
.sds-scr__img{display:block;height:86%;width:auto;max-width:80%;object-fit:contain}
.sds-scr--pay .sds-scr__card,.sds-scr--auth .sds-scr__card,.sds-scr--disp .sds-scr__card,.sds-scr--take .sds-scr__card,.sds-scr--thanks .sds-scr__card{flex-basis:9cqw}
.sds-scr__nm{max-width:100%;font:700 1.22cqw/1.2 Arial,Helvetica,sans-serif;color:#23272e;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sds-scr__pr{font:700 2.3cqw/1 Arial,Helvetica,sans-serif;color:#e0262b}
.sds-scr__btn{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;justify-content:center;gap:.5cqw;padding:.75cqw .6cqw;border-radius:.5cqw;font:700 1.12cqw/1.15 Arial,Helvetica,sans-serif;cursor:pointer;text-align:center}
.sds-scr__btn--pay{margin-top:.3cqw;background:linear-gradient(#36a3f0,#1673c9);color:#fff;box-shadow:0 .15cqw .3cqw rgb(22 80 150 / .4),inset 0 .08cqw 0 rgb(255 255 255 / .35)}
.sds-scr__btn--pay:hover{background:linear-gradient(#4cb0f5,#1b80dc)}
.sds-scr__btn--back{background:#fff;color:#2a4a6a;box-shadow:inset 0 0 0 .1cqw #9fb4cc}
.sds-scr__btn--back:hover{background:#f1f6fc}
.sds-scr__btn:active{transform:scale(.97)}
.sds-scr__btn:focus-visible{outline:.22cqw solid #e8c76a;outline-offset:.1cqw}
.sds-ico-card{flex:0 0 auto;width:1.7cqw;height:1.2cqw;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 24'%3E%3Crect x='1' y='1' width='32' height='22' rx='3' fill='none' stroke='%23fff' stroke-width='2'/%3E%3Crect x='1' y='6' width='32' height='4' fill='%23fff'/%3E%3Crect x='5' y='15' width='9' height='3' rx='1' fill='%23fff'/%3E%3C/svg%3E") center/contain no-repeat}
.sds-scr__msg{font:700 1.25cqw/1.25 Arial,Helvetica,sans-serif;color:#1d3557;display:flex;align-items:center;justify-content:center;gap:.4cqw}
.sds-scr__msg--ok{color:#1e9e48}
.sds-scr__msg--big{font-size:1.55cqw;margin-top:.6cqw}
.sds-scr__arrow{font:700 3.2cqw/1 Arial,Helvetica,sans-serif;color:#1673c9;animation:sds-bob 1s ease-in-out infinite alternate}
.sds-scr__arrow--down{font-size:4cqw}
.sds-scr__foot{margin-top:auto;font:400 .62cqw/1.2 Arial,Helvetica,sans-serif;color:#6a7a90}
.sds-scr--thanks .sds-scr__msg--big{color:#1e9e48;font-size:2cqw}
.sds-spin{display:inline-block;width:2.6cqw;height:2.6cqw;border-radius:50%;border:.32cqw solid rgb(22 115 201 / .2);border-top-color:#1673c9;animation:sds-rot .8s linear infinite;box-sizing:border-box}
.sds-spin--sm{width:1.2cqw;height:1.2cqw;border-width:.18cqw}

/* Nayax VPOS Touch: Overlay auf dem gezeichneten Display */
.tcn-nayax.sds-nx-on{cursor:pointer}
.sds-nx{position:absolute;left:17%;top:16%;width:48%;height:39%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4%;overflow:hidden;border-radius:.12cqw;background:#f7f9fb;color:#111;font-family:Arial,Helvetica,sans-serif;pointer-events:none}
.sds-nx .sds-nx__amt{font:700 .5cqw/1 Arial,Helvetica,sans-serif}
.sds-nx .sds-nx__txt{font:700 .26cqw/1 Arial,Helvetica,sans-serif;white-space:nowrap}
.sds-nx .sds-nx__cl{width:1.1cqw;height:1.1cqw}
.sds-nx .sds-nx__ok{font:700 1.3cqw/1 Arial,Helvetica,sans-serif;color:#fff}
.sds-nx .sds-spin--nx{width:.9cqw;height:.9cqw;border-width:.12cqw}
.sds-nx[data-state=ok]{background:#1e9e48;color:#fff}
.sds-nxring{position:absolute;inset:-5%;border-radius:.6cqw;box-shadow:0 0 0 .3cqw rgb(58 160 255 / .9),0 0 1.4cqw .3cqw rgb(58 160 255 / .55);pointer-events:none;animation:sds-pulse 1.1s ease-in-out infinite alternate}
.tcn-nayax[data-sds-state=ok] .sds-nxring{box-shadow:0 0 0 .3cqw rgb(46 190 90 / .95),0 0 1.4cqw .3cqw rgb(46 190 90 / .6)}
.sds-nx__cl{display:block;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cg fill='none' stroke='%231673c9' stroke-width='3.4' stroke-linecap='round'%3E%3Cpath d='M9 13a10 10 0 0 1 0 14'/%3E%3Cpath d='M16 9a16 16 0 0 1 0 22'/%3E%3Cpath d='M23 5a22 22 0 0 1 0 30'/%3E%3Cpath d='M30 2a27 27 0 0 1 0 36'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;animation:sds-pulse 1s ease-in-out infinite alternate}

/* Nayax: vergrößerte Ansicht im freien Feld der Säule */
.sds-nxz{all:unset;position:absolute!important;left:7%;width:86%;top:60.2%;height:16.8%;z-index:6;box-sizing:border-box;display:flex;flex-direction:column;gap:.45cqw;padding:.7cqw;border-radius:.9cqw;background:linear-gradient(#202328,#121316);box-shadow:0 0 0 .14cqw #3a3d42,0 0 0 .32cqw rgb(58 160 255 / .45),0 .6cqw 1.6cqw rgb(0 0 0 / .65);cursor:pointer;font-family:Arial,Helvetica,sans-serif;animation:sds-in .25s ease-out both}
.sds-nxz::before{content:"";position:absolute;right:20%;top:-1.25cqw;border:.65cqw solid transparent;border-bottom:.65cqw solid #3a3d42;border-top:0;width:0;height:0;border-left-width:.6cqw;border-right-width:.6cqw;border-bottom-width:1.1cqw}
.sds-nxz:disabled,.sds-nxz[disabled]{cursor:default}
.sds-nxz:focus-visible{box-shadow:0 0 0 .14cqw #3a3d42,0 0 0 .4cqw #e8c76a,0 .6cqw 1.6cqw rgb(0 0 0 / .65)}
.sds-nxz__t{font:700 .72cqw/1.1 Arial,Helvetica,sans-serif;letter-spacing:.02em;color:#9fb0c0;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sds-nxz__scr{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5cqw;border-radius:.45cqw;background:#f7f9fb;color:#111;box-shadow:inset 0 0 0 .12cqw #050506}
.sds-nxz__scr .sds-nx__amt{font:700 2.4cqw/1 Arial,Helvetica,sans-serif}
.sds-nxz__scr .sds-nx__cl{width:4.6cqw;height:4.6cqw}
.sds-nxz__scr .sds-nx__txt{font:700 1.2cqw/1.1 Arial,Helvetica,sans-serif;color:#2a2f36}
.sds-nxz__scr .sds-spin--nx{width:3.4cqw;height:3.4cqw}
.sds-nxz__scr .sds-nx__ok{display:flex;align-items:center;justify-content:center;width:4.6cqw;height:4.6cqw;border-radius:50%;background:#fff;color:#1e9e48;font:700 3cqw/1 Arial,Helvetica,sans-serif}
.sds-nxz[data-state=ok] .sds-nxz__scr{background:#1e9e48}
.sds-nxz[data-state=ok] .sds-nx__txt{color:#fff}

/* Ausgabe: Fall, Klappe, Fach */
.tcn-lane.sds-lane-empty .tcn-pic img{opacity:0}
.tcn-lane.sds-lane-empty .tcn-pic::after{opacity:0}
.tcn-pic img.sds-gone{opacity:0!important}
.sds-dropclip{position:absolute;z-index:30;overflow:hidden;pointer-events:none}
.sds-drop{position:absolute;display:block;object-fit:fill;transform-origin:50% 50%;will-change:transform;filter:drop-shadow(0 .4cqw .5cqw rgb(0 0 0 / .35))}
.sds-bin{visibility:hidden;position:absolute;box-sizing:border-box;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;border-radius:.45cqw;background:radial-gradient(ellipse at 50% 100%,#3a3e40 0,#17191a 55%,#070808 100%);box-shadow:inset 0 calc(var(--u,1cqw)*1.4) calc(var(--u,1cqw)*1.8) rgb(0 0 0 / .95),inset 0 0 0 calc(var(--u,1cqw)*.35) #5f8a42}
.sds-bin__item{all:unset;box-sizing:border-box;position:absolute;left:50%;bottom:9%;pointer-events:none;will-change:transform}
.sds-bin.is-open{visibility:visible}
.sds-bin.is-open .sds-bin__item{pointer-events:auto;cursor:pointer}
.sds-bin__item img{position:absolute;left:50%;top:50%;display:block;object-fit:fill;transform:translate(-50%,-50%) rotate(var(--sds-rot,-8deg));filter:drop-shadow(0 .3cqw .4cqw rgb(0 0 0 / .7))}
.sds-bin__item:focus-visible{outline:calc(var(--u,1cqw)*.3) solid #e8c76a;outline-offset:calc(var(--u,1cqw)*.2);border-radius:.3cqw}
.tcn-flap.sds-flap-anim{transform-origin:50% 0;transition:transform .5s cubic-bezier(.3,.7,.3,1)}
.tcn-flap.sds-flap-ready{cursor:pointer}
.tcn-flap.sds-flap-ready:focus{outline:none}
.tcn-flap.sds-flap-ready:focus-visible{outline:calc(var(--u,1cqw)*.35) solid #e8c76a;outline-offset:calc(var(--u,1cqw)*.35)}
.tcn-flap.sds-flap-open{transform:perspective(calc(var(--u,1cqw)*45)) rotateX(-66deg);pointer-events:none}
.sds-flaphint{position:absolute;z-index:6;display:flex;align-items:center;justify-content:center;pointer-events:none;border-radius:.45cqw}
.sds-flaphint::before{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 0 calc(var(--u,1cqw)*.45) rgb(232 199 106 / .95),0 0 calc(var(--u,1cqw)*2.4) calc(var(--u,1cqw)*.6) rgb(232 199 106 / .55);animation:sds-pulse 1s ease-in-out infinite alternate}
.sds-flaphint__t{position:relative;padding:calc(var(--u,1cqw)*.6) calc(var(--u,1cqw)*1.2);border-radius:999px;background:rgb(10 10 12 / .82);color:#fff;font:800 calc(var(--u,1cqw)*1.45)/1 'Manrope',system-ui,sans-serif;white-space:nowrap;box-shadow:0 .2cqw .6cqw rgb(0 0 0 / .4);animation:sds-pulse2 1s ease-in-out infinite alternate}

/* Glanz-Ebene des Touchscreens lässt Klicks durch (rein optisch) */
#sdPlanner .tcn-screen::after{pointer-events:none}
/* Klickbare Bargeld-Teile ohne Funktion */
#sdPlanner .tcn-validator,#sdPlanner .tcn-btn,#sdPlanner .tcn-coinbox{cursor:pointer}

/* Tooltip-Button */
.tcn-tip .sds-tipbuy{justify-self:start;min-height:32px;margin-top:2px;padding:4px 12px;border:1px solid var(--sd-red,#c41e2e);border-radius:2px;background:var(--sd-red,#c41e2e);color:#fff;font:inherit;font-size:.8rem;font-weight:800;cursor:pointer}
.tcn-tip .sds-tipbuy:hover{background:var(--sd-red-bright,#e63946)}
.tcn-tip .sds-tipbuy:disabled{opacity:.55;cursor:not-allowed;background:#24242b;border-color:#3a3a41}

/* Panel und Toast */
.sds-panel{position:sticky;left:0;box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 14px;margin:0 0 12px;padding:2px 4px 10px;border-bottom:1px solid rgb(255 255 255 / .08);font-size:.82rem;line-height:1.4;color:var(--sd-muted,#a0a0aa)}
.sds-panel__hint{flex:1 1 100%;margin:0}
.sds-panel__live{flex:1 1 260px;margin:0;min-height:1.4em;color:var(--sd-text,#f0f0f0);font-weight:700}
.sds-panel__live:empty{display:none}
.sds-panel__row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-left:auto}
.sds-panel__cnt b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600;color:var(--sd-text,#f0f0f0)}
.sds-panel__reset{min-height:36px;padding:4px 12px;border:1px solid #3a3a41;border-radius:2px;background:#141418;color:#d6d6dc;font:inherit;font-size:.8rem;font-weight:750;cursor:pointer}
.sds-panel__reset:hover{border-color:#74747d;color:#fff}
.sds-toast{position:fixed;left:50%;bottom:24px;z-index:9999;max-width:calc(100vw - 32px);padding:10px 16px;border:1px solid #3a3a41;border-top:2px solid #2fae5c;border-radius:2px;background:#17171c;color:#f0f0f0;font:700 .9rem/1.3 'Manrope',system-ui,sans-serif;box-shadow:0 10px 26px rgb(0 0 0 / .5);pointer-events:none;opacity:0;transform:translate(-50%,12px);transition:opacity .25s,transform .25s}
.sds-toast.is-on{opacity:1;transform:translate(-50%,0)}

@keyframes sds-rot{to{transform:rotate(360deg)}}
@keyframes sds-pulse{from{opacity:.45}to{opacity:1}}
@keyframes sds-pulse2{from{transform:scale(1)}to{transform:scale(1.06)}}
@keyframes sds-bob{from{transform:translateY(-12%)}to{transform:translateY(12%)}}
@keyframes sds-in{from{opacity:0;transform:translateY(6%)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  .sds-scr__arrow,.sds-nx__cl,.sds-nxring,.sds-flaphint::before,.sds-flaphint__t,.sds-nxz,.sds-spin{animation:none!important}
  .tcn-flap.sds-flap-anim,.sds-toast,.tcn-ui__tile.sds-tile{transition:none!important}
}

/* r203: Lift-Automat – Liftplattform im Ausgabefach, Ware steht darauf */
.sds-bin--lift .sds-bin__item{bottom:13%;z-index:1}
.sds-bin--lift::after{content:"";position:absolute;left:18%;right:18%;bottom:6%;height:7%;border-radius:.15cqw;background:linear-gradient(#9aa0a5,#5e6469 30%,#3a3e42 70%,#25282b);box-shadow:inset 0 .08cqw 0 rgb(255 255 255 / .45),0 .35cqw .5cqw rgb(0 0 0 / .5);z-index:0;pointer-events:none}
.sds-bin--lift .sds-bin__item img{filter:drop-shadow(0 .15cqw .2cqw rgb(0 0 0 / .6))}

/* lift2: Plattform ueber die ganze Klappenbreite (Ware steht an ihrer Fachposition) */
.sds-bin--lift::after{left:3%!important;right:3%!important}
