:root{color-scheme:dark;--bg:#0d1015;--panel:#171c24;--line:#2a323f;--ink:#f2f5fa;--muted:#a4afc0;--red:#ff757c;--yellow:#f6d568;--green:#79d8ad}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,sans-serif}[hidden]{display:none!important}main{padding:2.3vh 2.5vw;min-height:100vh;display:flex;flex-direction:column}header{display:flex;align-items:center;gap:3vw;padding-bottom:2vh;border-bottom:1px solid var(--line)}.brand{font-size:clamp(24px,2.5vw,58px);letter-spacing:.2em;font-weight:700}.subtitle{color:var(--muted);font-size:clamp(12px,1.1vw,25px);margin-top:.5vh;letter-spacing:.06em}.tv-summary{margin-left:auto;display:flex;gap:3vw}.tv-stat{display:flex;align-items:center;gap:1vw}.tv-stat strong{font-size:clamp(30px,3.7vw,80px);font-variant-numeric:tabular-nums}.tv-stat span{font-size:clamp(11px,1vw,23px);line-height:1.5;color:var(--muted)}.clock{text-align:right}.clock strong{display:block;font-size:clamp(20px,2.5vw,52px);font-variant-numeric:tabular-nums}.clock span{font-size:clamp(11px,1vw,23px);color:var(--muted)}.red{color:var(--red)}.yellow{color:var(--yellow)}#notice{font-size:clamp(13px,1.2vw,27px);padding:1vh 0;color:var(--yellow);min-height:3.7vh}#notice.error{color:var(--red)}.heading,.item{display:grid;grid-template-columns:minmax(0,4.2fr) minmax(0,1.5fr) minmax(0,2.3fr) minmax(0,1.1fr);gap:1.5vw;align-items:center}.heading{padding:1vh 1.2vw;color:var(--muted);font-size:clamp(12px,1.1vw,25px);letter-spacing:.08em}.right{text-align:right}#rows{display:flex;flex-direction:column;gap:.55vh;flex:1}.item{padding:.75vh 1.2vw;background:var(--panel);border-left:.3vw solid var(--yellow);border-radius:5px;min-height:7.7vh;flex:1;max-height:9vh}.item.empty{border-left-color:var(--red)}.product{font-size:clamp(15px,1.65vw,37px);line-height:1.2;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.address{font-size:clamp(17px,2vw,45px);line-height:1.15;font-weight:600;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.gross{font-size:clamp(14px,1.5vw,34px)}.stock{text-align:right}.stock strong{font-size:clamp(30px,3.6vw,78px);line-height:1;font-variant-numeric:tabular-nums}.stock small{display:block;font-size:clamp(11px,.85vw,20px);letter-spacing:.08em;margin-top:.25vh}.nothing{margin:auto;text-align:center;color:var(--green);font-size:clamp(24px,3vw,60px)}footer{display:flex;justify-content:space-between;align-items:center;gap:1vw;flex-wrap:wrap;padding-top:1.4vh;color:var(--muted);font-size:clamp(12px,1vw,23px)}.controls{display:flex;gap:.6vw;align-items:center}button{background:#252d39;color:var(--ink);border:1px solid var(--line);border-radius:5px;padding:.5em .7em;font:inherit;min-height:32px;cursor:pointer}button:disabled{opacity:.5;cursor:default}button:focus-visible,input:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}.track{height:3px;background:var(--line);margin-top:1vh}#progress{height:100%;width:100%;background:var(--yellow)}#login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}#login-form{width:100%;max-width:460px;padding:32px;background:var(--panel);border-radius:12px}#login h1{font-size:24px;font-weight:500;margin:24px 0}#login label{display:block;margin-bottom:10px}#login input{width:100%;padding:14px;font:inherit;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:6px}#login button{width:100%;margin-top:18px;padding:14px}#login-error{color:var(--red);min-height:20px;line-height:1.4}@media(max-width:650px){header{flex-wrap:wrap}.tv-summary{margin-left:0;flex:1}.clock{margin-left:auto}.heading{display:none}#rows{padding-top:10px}.item{grid-template-columns:1fr 1fr 1fr;max-height:none;gap:10px;padding:12px;min-height:100px}.product{grid-column:1/-1}footer{gap:14px}.controls{flex-wrap:wrap}}

/* Sabit ekran: altı satır her sayfada aynı yükseklikte kalır. */
html,body{height:100%;overflow:hidden}
main{height:100vh;min-height:0;overflow:hidden;display:grid;grid-template-rows:auto 3.7vh 4vh minmax(0,1fr) auto 3px;row-gap:.5vh}
header{min-height:0}
#notice{min-height:0;padding:.5vh 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#rows{min-height:0;display:grid;grid-template-rows:repeat(6,minmax(0,1fr));gap:.55vh;padding-top:0}
.item{min-height:0;max-height:none;height:100%;overflow:hidden;flex:initial;padding:.5vh 1.2vw}
.product{display:flex;flex-direction:column;gap:.35vh;min-width:0;overflow:hidden;font-size:clamp(14px,1.4vw,32px)}
.product-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.15}
.barcode{font-size:clamp(15.73px,1.43vw,31.46px);font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.address{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nothing{grid-row:1/-1;grid-column:1/-1}
footer{min-height:0;padding-top:.5vh}
.track{margin-top:0}
@media(max-width:650px){main{padding:12px;grid-template-rows:auto 24px 30px minmax(0,1fr) auto 3px}.heading{display:grid;font-size:9px;gap:5px;padding:0 5px}.heading,.item{grid-template-columns:minmax(0,4.2fr) minmax(0,1.5fr) minmax(0,2.3fr) minmax(0,1.1fr)}.item{margin:0;padding:5px;gap:5px;min-height:0}.product{grid-column:auto;font-size:12px}.barcode{font-size:14.3px}.address{font-size:12px}.gross{font-size:11px}.stock strong{font-size:20px}.stock small{font-size:8px}.controls{gap:4px}footer{font-size:10px;gap:4px}.brand{font-size:20px}.subtitle{font-size:10px}}

.brand-logo{display:block;width:clamp(160px,17vw,340px);height:auto;max-width:100%;object-fit:contain}#login .brand-logo{width:240px}@media(max-width:650px){.brand-logo{width:160px}}

/* Besleme listesi boşken kutlama animasyonu. */
.nothing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2vh;max-width:100%;max-height:100%}
.empty-gif{display:block;width:auto;height:clamp(100px,28vh,300px);max-width:70vw;object-fit:contain}

.empty-video{mix-blend-mode:screen;display:block;width:auto;height:32vh;max-height:340px;max-width:70vw;object-fit:contain;flex-shrink:1;min-height:0;border-radius:8px}

/* Shared operations palette; the original TV geometry is preserved. */
:root{color-scheme:light;--bg:#f5f6f8;--panel:#ffffff;--line:#e1e4e9;--ink:#202326;--muted:#68717e;--red:#c93732;--yellow:#b27a09;--green:#27815c}
html[data-theme=dark]{color-scheme:dark;--bg:#14161b;--panel:#1e222a;--line:#343b47;--ink:#f2f4f8;--muted:#a6afbd;--red:#ff8984;--yellow:#f0ca70;--green:#80d5ad}
button,.home-link{background:var(--panel);color:var(--ink)}.home-link{border:1px solid var(--line);border-radius:5px;padding:.5em .7em;text-decoration:none;white-space:nowrap}
.tv-revision{color:var(--muted);font-size:clamp(9px,.7vw,14px);letter-spacing:.12em;margin-top:.4vh}
.brand-logo{filter:brightness(0)}html[data-theme=dark] .brand-logo{filter:brightness(0) invert(1)}
.empty-video{mix-blend-mode:multiply}html[data-theme=dark] .empty-video{mix-blend-mode:screen}
#progress{background:#e44a31}.theme-toggle{min-height:32px}#login input{margin-bottom:15px}
