/* Sledování zakázky (track.php) – přesunuto z inline <style> beze změny obsahu, viz PLAN_TEMA.md fáze 3. */
.page-hero{background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary-hover),var(--color-primary));padding:2rem 0;color:#fff}
.page-hero-inner{max-width:900px;margin:0 auto;padding:0 1.5rem}
.page-hero h1{font-size:22px;font-weight:500;color:#fff;margin-bottom:4px}
.page-hero p{font-size:13px;color:rgba(255,255,255,.78)}
.search-bar{background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:1rem 1.5rem}
.search-row{max-width:900px;margin:0 auto;display:flex;gap:10px}
.search-input{flex:1;border:1px solid var(--ui-line);border-radius:8px;padding:9px 12px;font-size:14px;outline:none;background:var(--color-bg);color:var(--color-text)}
.search-input:focus{border-color:var(--color-primary)}
.container{max-width:900px;margin:0 auto;padding:2rem 1.5rem}
.card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;overflow:hidden;margin-bottom:1rem}
.btn-blue{background:var(--color-primary);color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;display:inline-block;text-decoration:none}
.btn-blue:hover{background:var(--color-primary-hover)}
.divider{border:none;border-top:1px solid var(--color-border);margin:1rem 0}
.alert-err{background:var(--ui-err-bg2);border:1px solid var(--ui-err-border);border-radius:10px;padding:1rem 1.25rem;color:var(--ui-err-text);margin-bottom:1rem;font-size:14px}
.addr-dd{position:absolute;top:100%;left:0;right:0;background:var(--color-bg);border:1px solid var(--ui-line2);border-top:none;border-radius:0 0 8px 8px;z-index:300;max-height:220px;overflow-y:auto;box-shadow:0 6px 16px rgba(0,0,0,.12)}
.addr-dd-item{padding:8px 12px;cursor:pointer;font-size:13px;border-bottom:1px solid var(--ui-line3);line-height:1.4}
.addr-dd-item:last-child{border-bottom:none}
.addr-dd-item:hover,.addr-dd-item.addr-focus{background:var(--color-primary-light)}
.addr-dd-item strong{display:block;color:var(--color-text);font-weight:500}
.addr-dd-item span{color:var(--color-text-light);font-size:12px}
.addr-ok{border-color:var(--color-success)!important;box-shadow:0 0 0 2px rgba(34,160,107,.18)!important}
.case-hdr{background:var(--color-primary-dark);border-radius:12px 12px 0 0;padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.case-hdr h2{font-size:16px;font-weight:500;color:#fff}
.case-hdr span{font-size:12px;color:rgba(255,255,255,.65)}
.st-pill{display:inline-block;padding:5px 14px;border-radius:20px;font-size:12px;font-weight:600;color:#fff}
.case-body{padding:1.25rem 1.5rem}
.prog-bar{height:7px;background:var(--ui-track);border-radius:4px;margin:10px 0 6px}
.prog-fill{height:7px;border-radius:4px;transition:width .5s}
.prog-steps{display:flex;justify-content:space-between}
.prog-step{font-size:11px;color:var(--ui-faint);text-align:center;flex:1}
.prog-step.done{color:var(--color-success);font-weight:500}
.prog-step.active{color:var(--color-primary);font-weight:600}
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1rem 0}
.if label{font-size:11px;color:var(--ui-faint);text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:3px}
.if p{font-size:13px;color:var(--color-text)}
.payment-box{background:var(--ui-warn-bg);border:1px solid var(--ui-warn-border);border-radius:10px;padding:1.25rem;margin-bottom:1rem}
.payment-box h4{font-size:14px;font-weight:500;color:var(--ui-warn-text);margin-bottom:8px}
.pay-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.pay-amt{font-size:22px;font-weight:700;color:var(--color-primary)}
.pay-note{font-size:12px;color:var(--color-text-muted);margin-top:2px}
.chat-sec{border-top:1px solid var(--color-border);padding:1.25rem 1.5rem}
.chat-title{font-size:13px;font-weight:500;color:var(--color-text);margin-bottom:10px}
.chat-msgs{max-height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;margin-bottom:10px}
.msg{max-width:78%;padding:9px 13px;border-radius:10px;font-size:13px;line-height:1.55}
.msg.technician{background:var(--color-primary);color:#fff;align-self:flex-start;border-bottom-left-radius:3px}
.msg.system{background:var(--ui-track);color:var(--ui-label);align-self:center;font-style:italic;font-size:12px;max-width:100%;text-align:center;border-radius:8px}
.msg.customer{background:var(--ui-blue-bg3);color:var(--color-text);align-self:flex-end;border-bottom-right-radius:3px}
.msg-meta{font-size:10px;margin-top:3px}
.msg.technician .msg-meta{color:rgba(255,255,255,.7)}
.msg.customer .msg-meta{color:var(--ui-faint);text-align:right}
.chat-inp-row{display:flex;flex-direction:column;gap:8px}
.chat-inp{width:100%;border:1px solid var(--ui-line);border-radius:8px;padding:9px 12px;font-size:13px;outline:none;background:var(--color-bg);color:var(--color-text)}
.chat-inp:focus{border-color:var(--color-primary)}
.chat-inp-row .btn-blue{align-self:flex-end}
.feedback-box{background:var(--ui-subtle);border-radius:10px;padding:1.25rem}
.star{font-size:28px;cursor:pointer;color:var(--ui-faint3);transition:color .1s}
.star.on{color:#F5A623}
.case-list-a{display:block;text-decoration:none;border:1px solid var(--color-border);border-radius:10px;padding:1rem 1.25rem;margin-bottom:.75rem;background:var(--color-bg);transition:all .15s;overflow:hidden}
.case-list-a:hover{border-color:var(--color-primary);background:var(--ui-blue-bg4)}
.mini-bar{height:4px;background:var(--ui-track);border-radius:0;margin-top:10px}
[id^="qr-img"] canvas,[id^="qr-img"] img{max-width:100%;height:auto;display:block}
.mini-fill{height:4px;border-radius:0}
@media(max-width:580px){.info-grid{grid-template-columns:1fr 1fr}}
@media print{
  nav,.page-hero,.search-bar,.no-print,
  .chat-inp-row,
  #modal-pay-track,[id^="qr-box-"],[id^="qr-img-"],
  .btn-blue,.btn-outline,button:not(.print-keep){display:none!important}
  body{background:var(--color-bg)}
  .container{padding:0;max-width:100%}
  .card{border:1px solid var(--ui-line2);border-radius:0;margin-bottom:.5rem;box-shadow:none}
  .case-hdr,.payment-box,.prog-bar,.prog-fill,.msg.technician,.st-pill{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .case-hdr{background:var(--color-primary-dark)!important}
  .chat-msgs{max-height:none!important;overflow:visible!important}
  .site-footer{display:none}
  /* B&W tisk – zesvětlené barvy nahradit tmavšími, aby text nezmizel */
  .prog-step{color:var(--ui-label)!important}
  .if label{color:var(--ui-label)!important}
  .pay-note{color:#444!important}
  .msg.customer .msg-meta{color:var(--ui-label)!important}
  #fb-card [style*="color:#F59E0B"]{color:#B45309!important}
}

/* Kamera pro fotku do chatu (stejný vzhled i kód jako ve formuláři Nový případ, new.php) */
.cam-overlay{display:none;position:fixed;inset:0;background:#000;z-index:9999;flex-direction:column;align-items:center;justify-content:center}
.cam-overlay video{width:100%;max-height:75vh;object-fit:cover}
.cam-bar{display:flex;align-items:center;justify-content:center;gap:24px;padding:20px 16px;width:100%}
.cam-shoot{width:68px;height:68px;border-radius:50%;background:#fff;border:4px solid rgba(255,255,255,.6);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 16px rgba(0,0,0,.5);flex-shrink:0}
.cam-shoot svg{width:28px;height:28px}
.cam-cancel{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:10px;padding:12px 20px;font-size:14px;cursor:pointer}
.pay-choose{background:var(--ui-warn-bg);border:1.5px solid var(--ui-warn-border);color:var(--ui-warn-text);border-radius:10px;padding:.875rem 1rem;margin-bottom:.75rem;font-size:13px;line-height:1.55}
.pay-choose .pc-t{display:block;font-size:14px;margin-bottom:3px}
.pay-choose ul{margin:.4rem 0 0;padding-left:1.1rem}
.pay-choose li{margin:2px 0}
.pay-opts-attn{border-radius:12px;animation:payAttn 1.4s ease-in-out 3}
@keyframes payAttn{0%,100%{box-shadow:0 0 0 0 transparent}50%{box-shadow:0 0 0 4px var(--ui-warn-border)}}
@media (prefers-reduced-motion:reduce){.pay-opts-attn{animation:none}}
