:root{font-family:Inter,system-ui,"Segoe UI",sans-serif;color:#f8fafc;background:#07111f}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{background:radial-gradient(circle at 88% 2%,#1b5d9a3d,transparent 34%),linear-gradient(145deg,#07111f,#0b1728 52%,#07111f)}.tv-shell{height:100vh;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:clamp(12px,1.5vh,22px);padding:clamp(18px,2.4vh,34px) clamp(22px,2.3vw,44px)}.tv-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #94a3b833;padding-bottom:clamp(12px,1.6vh,22px)}.brand{display:flex;align-items:center;gap:16px}.brand-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:8px;background:#d71920;font-weight:900;font-size:22px}.brand p,.panel-heading p{margin:0 0 3px;color:#7dd3fc;font-size:clamp(11px,.8vw,15px);font-weight:800;letter-spacing:.16em}.brand h1{margin:0;font-size:clamp(24px,2vw,38px)}.header-status{text-align:right;display:grid;grid-template-columns:auto auto;gap:3px 18px;align-items:center}.connection{display:flex;align-items:center;gap:8px;font-size:clamp(13px,1vw,18px);font-weight:700;color:#cbd5e1}.connection span:first-child{width:10px;height:10px;border-radius:50%;background:#f59e0b}.connection.online span:first-child{background:#22c55e}.connection.offline span:first-child{background:#ef4444}.header-status time{font-size:clamp(26px,2.2vw,42px);font-weight:800}.header-status p{grid-column:1/-1;margin:0;color:#94a3b8;font-size:clamp(12px,.85vw,16px)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(10px,1vw,18px)}.metric{--accent:#38bdf8;position:relative;min-height:clamp(125px,15vh,175px);padding:clamp(16px,1.4vw,25px);border:1px solid #94a3b82e;border-radius:8px;background:#0f1d31e0;overflow:hidden}.metric:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--accent)}.metric span{color:#cbd5e1;font-size:clamp(14px,1.15vw,21px);font-weight:750}.metric strong{display:block;margin-top:5px;font-size:clamp(43px,4vw,76px);line-height:.95;color:var(--accent)}.metric small{display:block;margin-top:10px;color:#94a3b8;font-size:clamp(11px,.85vw,16px)}.danger{--accent:#fb7185}.warning{--accent:#fbbf24}.info{--accent:#38bdf8}.calm{--accent:#34d399}.products-panel{min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);border:1px solid #94a3b833;border-radius:8px;background:#091423eb;overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:clamp(13px,1.4vh,20px) clamp(18px,1.5vw,28px)}.panel-heading h2{margin:0;font-size:clamp(19px,1.5vw,29px)}.open-orders{display:flex;align-items:baseline;gap:10px}.open-orders strong{font-size:clamp(26px,2.2vw,42px);color:#7dd3fc}.open-orders span{color:#94a3b8}.table-head,.product-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(120px,.55fr) minmax(210px,1fr) minmax(150px,.72fr);gap:18px;align-items:center}.table-head{padding:9px clamp(18px,1.5vw,28px);background:#111f33;color:#7f91aa;font-size:clamp(10px,.72vw,14px);font-weight:800;text-transform:uppercase;letter-spacing:.1em}.products-viewport{min-height:0;overflow:hidden;position:relative}.products-track{will-change:transform}.products-track.scrolling{animation:scroll var(--scroll-duration) linear infinite}.product-row{height:clamp(92px,11vh,126px);padding:10px clamp(18px,1.5vw,28px);border-bottom:1px solid #94a3b81f}.product-main{display:grid;grid-template-columns:clamp(64px,5vw,88px) minmax(0,1fr);gap:15px;align-items:center}.product-photo{width:clamp(64px,5vw,88px);height:clamp(64px,5vw,88px);object-fit:contain;border-radius:7px;background:#f8fafc}.placeholder{display:grid;place-items:center;color:#64748b;font-weight:900}.product-code{color:#fbbf24;font-size:clamp(14px,1.02vw,19px);font-weight:850}.product-description{margin:4px 0 0;font-size:clamp(14px,1.08vw,20px);font-weight:650;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.quantity strong,.order strong,.forecast strong{display:block;font-size:clamp(18px,1.35vw,26px)}.quantity span,.order span,.forecast span{display:block;margin-top:5px;color:#94a3b8;font-size:clamp(12px,.82vw,16px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.forecast.late strong{color:#fb7185}.forecast.today strong{color:#38bdf8}.forecast.upcoming strong{color:#34d399}.empty-state{height:100%;display:grid;place-items:center;color:#94a3b8;font-size:clamp(20px,1.7vw,32px)}@keyframes scroll{to{transform:translateY(calc(-1 * var(--scroll-distance)))}}@media(prefers-reduced-motion:reduce){.products-track.scrolling{animation:none}}@media(max-width:900px){.metrics{grid-template-columns:repeat(2,1fr)}.table-head,.product-row{grid-template-columns:minmax(0,1.7fr) .6fr .9fr}.table-head span:last-child,.forecast{display:none}}

/* Cabeçalho compacto: preserva a leitura à distância e libera altura para os produtos. */
.tv-shell{gap:clamp(8px,1vh,14px);padding-top:clamp(10px,1.2vh,16px)}
.tv-header{min-height:42px;padding-bottom:clamp(6px,.7vh,10px)}
.brand{gap:10px}.brand-mark{width:40px;height:40px;font-size:16px}
.brand p{margin-bottom:0;font-size:clamp(9px,.62vw,12px)}
.brand h1{font-size:clamp(20px,1.55vw,29px);line-height:1.05}
.header-status{gap:0 14px}.header-status time{font-size:clamp(22px,1.7vw,32px)}
.header-status p{font-size:clamp(10px,.7vw,13px)}
