/* DistribuiPro 27.0 · Fotos da OS, captura pelo celular e acompanhamento online */
.osx-section [hidden],.osx-modal [hidden]{display:none!important}
.osx-section .osx-blocks{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.osx-block{border:1px solid var(--border-color);border-radius:14px;padding:14px;background:var(--bg-surface,transparent);min-width:0}
.osx-block-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.osx-block-head strong{display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--text-primary)}
.osx-block-head strong i{color:var(--accent)}
.osx-block-head small{display:block;margin-top:2px;font-size:11.5px;color:var(--text-muted)}
.osx-count{font-weight:600;color:var(--text-muted)}
.osx-block-actions{display:flex;gap:6px;flex-wrap:wrap}
.osx-block-actions .btn{border-radius:999px;padding:6px 12px;font-size:12px;cursor:pointer}
.osx-add.is-busy{opacity:.6;pointer-events:none}
.osx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px}
.osx-empty{grid-column:1/-1;padding:18px;text-align:center;font-size:12px;color:var(--text-muted);border:1px dashed var(--border-color);border-radius:12px}
.osx-thumb{position:relative;aspect-ratio:1;border-radius:12px;background:var(--bg-input,#eef1f6) center/cover no-repeat;border:2px solid color-mix(in srgb,var(--accent) 45%,transparent);cursor:zoom-in;overflow:hidden;transition:transform .15s}
.osx-block[data-kind="saida"] .osx-thumb{border-color:color-mix(in srgb,var(--success,#10b981) 55%,transparent)}
.osx-thumb:hover{transform:translateY(-2px)}
.osx-thumb.is-loading{background-image:linear-gradient(90deg,transparent,rgba(127,127,127,.18),transparent)!important;background-size:200% 100%!important;animation:osxShimmer 1.2s linear infinite}
@keyframes osxShimmer{to{background-position:-200% 0}}
.osx-tag{position:absolute;left:6px;bottom:6px;padding:2px 7px;border-radius:6px;font-size:9.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--accent)}
.osx-block[data-kind="saida"] .osx-tag{background:var(--success,#10b981)}
.osx-del{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:50%;border:0;background:rgba(15,23,42,.72);color:#fff;font-size:11px;cursor:pointer;display:grid;place-items:center}
.osx-del:hover{background:var(--danger,#ef4444)}
.osx-track{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px;padding:12px 14px;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border-color));background:color-mix(in srgb,var(--accent) 7%,transparent)}
.osx-track strong{font-size:13px;color:var(--text-primary)}.osx-track strong i{color:var(--accent);margin-right:5px}
.osx-track small{display:block;font-size:11.5px;color:var(--text-muted);margin-top:2px}
.osx-track-actions{display:flex;gap:6px;flex-wrap:wrap}.osx-track-actions .btn{border-radius:999px;font-size:12px}
/* Coluna de ações da lista de OS: uma linha só, botões do mesmo tamanho (27.1) */
#osTbody td:last-child{white-space:nowrap;width:1%}
#osTbody .os-actions{display:flex!important;flex-wrap:nowrap!important;gap:4px!important;justify-content:flex-end;align-items:center}
#osTbody .os-actions>.btn-icon,#osTbody .os-actions>.os-action{height:32px;min-width:32px;padding:0 8px!important;margin:0!important;border-radius:9px!important;display:inline-flex!important;align-items:center;justify-content:center;gap:5px;flex:0 0 auto;font-size:12px}
#osTbody .os-actions>.os-action span{display:none!important}
#osTbody .os-actions>.os-action-success{padding:0 10px!important}
#osTbody .osx-row-ph{gap:4px}
#osTbody .osx-row-ph span{font-size:11px;font-weight:800}
@media (min-width:1500px){#osTbody .os-actions>.os-action-success span{display:inline!important}}
@media (min-width:761px){
#osTbody td{white-space:normal!important;max-width:none!important;overflow:visible!important}
#osTbody td:nth-child(2){min-width:170px}
#osTbody td:nth-child(1),#osTbody td:nth-child(3),#osTbody td:nth-child(6),#osTbody td:nth-child(7),#osTbody td:last-child{white-space:nowrap!important}
#osTbody td:nth-child(3) div{font-size:11px}
}
/* Telas menores: some primeiro o que se repete (a data já aparece embaixo do número da OS) */
@media (min-width:761px) and (max-width:1400px){table:has(>#osTbody) th:nth-child(7),#osTbody td:nth-child(7){display:none}}
@media (min-width:761px) and (max-width:1250px){table:has(>#osTbody) th:nth-child(4),#osTbody td:nth-child(4){display:none}}
@media (min-width:761px) and (max-width:1150px){table:has(>#osTbody) th:nth-child(3),#osTbody td:nth-child(3){display:none}}
@media (min-width:761px) and (max-width:1499px){
#osTbody .os-actions>.btn-icon,#osTbody .os-actions>.os-action{height:30px;min-width:30px;padding:0 7px!important;font-size:11.5px}
#osTbody .os-actions{gap:3px!important}
.os-page-table th,.table-responsive .data-table th,.table-responsive .data-table td{padding-left:10px!important;padding-right:10px!important}
}
@media (max-width:760px){#osTbody .os-actions{flex-wrap:wrap!important;justify-content:flex-start}#osTbody td:last-child{width:auto}}

/* Modais */
.osx-modal-bg{position:fixed;inset:0;z-index:10050;background:rgba(2,6,23,.55);backdrop-filter:blur(3px);display:grid;place-items:center;padding:16px}
.osx-modal{position:relative;width:min(440px,100%);max-height:calc(100vh - 32px);overflow:auto;background:var(--bg-card,#fff);color:var(--text-primary);border:1px solid var(--border-color);border-radius:20px;padding:22px 20px 18px;box-shadow:0 24px 70px rgba(0,0,0,.35);text-align:center}
.osx-modal h3{margin:0 0 4px;font-size:18px}.osx-modal h3 i{color:var(--accent);margin-right:6px}
.osx-sub{margin:0 0 16px;font-size:12.5px;color:var(--text-muted)}
.osx-x{position:absolute;top:10px;right:12px;width:32px;height:32px;border:0;background:transparent;color:var(--text-muted);font-size:24px;line-height:1;cursor:pointer;border-radius:8px}
.osx-x:hover{background:var(--bg-surface)}
.osx-cap-form{display:grid;gap:12px;text-align:left}
.osx-cap-form label{display:grid;gap:6px;font-size:12px;font-weight:700;color:var(--text-secondary,var(--text-muted))}
.osx-cap-form select{height:44px;border-radius:12px;border:1px solid var(--border-color);background:var(--bg-input,#fff);color:var(--text-primary);padding:0 12px;font:inherit;font-size:14px}
.osx-wide{width:100%;justify-content:center;height:46px;border-radius:999px;font-size:15px}
.osx-hint{margin:0;font-size:12px;color:var(--text-muted);text-align:center}
.osx-qr{display:grid;place-items:center;margin:4px auto 10px;padding:14px;border-radius:16px;background:#fff;border:1px solid var(--border-color);width:min(280px,100%)}
.osx-qr svg{width:100%;height:auto;display:block}
.osx-qr-fallback{font-size:12px;color:#111;word-break:break-all}
.osx-cap-info{margin:4px 0 8px;font-size:12.5px;color:var(--text-muted)}
.osx-cap-status{margin:8px 0 14px;padding:10px;border-radius:12px;background:var(--bg-surface);font-size:13px;display:flex;gap:8px;align-items:center;justify-content:center}
.osx-cap-status .fa-circle-check{color:var(--success,#10b981)}
.osx-cap-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.osx-cap-actions .btn{border-radius:999px;flex:1 1 140px;justify-content:center}
.osx-url{margin:6px 0 12px;text-align:center;font-size:12px}
.osx-spin{width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;display:inline-block;animation:osxSpin .7s linear infinite;vertical-align:-2px}
@keyframes osxSpin{to{transform:rotate(360deg)}}
.osx-viewer{position:fixed;inset:0;z-index:10060;background:rgba(0,0,0,.88);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:16px}
.osx-viewer img{max-width:100%;max-height:calc(100vh - 110px);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.osx-viewer-bar{display:flex;gap:8px}.osx-viewer-bar .btn{border-radius:999px}
@media (max-width:760px){.osx-section .osx-blocks{grid-template-columns:1fr}.osx-grid{grid-template-columns:repeat(3,1fr)}}
