/* Inspec — complementos da versão de produção */
.spin{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:gira .7s linear infinite;vertical-align:-2px;margin-right:6px}
@keyframes gira{to{transform:rotate(360deg)}}
.btn:disabled{opacity:.6;cursor:not-allowed}
a.pill{text-decoration:none}
.login-card .lead .spin{color:var(--green)}
code{background:#EEF3F7;border-radius:4px;padding:1px 5px;font-size:.92em}
.menu-item:disabled{opacity:.6}
img[data-foto]:not([src]){background:linear-gradient(90deg,#EEF2F6,#E2E8EF,#EEF2F6);background-size:200% 100%;animation:shimmer 1.2s infinite;min-height:60px}
@keyframes shimmer{to{background-position:-200% 0}}
/* Sobre o sistema */
.sb-head{text-align:center}.sb-head img{width:200px;max-width:70%}
.sb{padding:0}.sb-l{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid var(--line)}.sb-l:first-child{border-top:0}
.sb-l b{display:block;font-size:14.5px;color:var(--navy-ink)}.sb-l small{display:block;color:var(--muted);font-size:12.5px}
.sb-v{text-align:right;font-size:14px;color:var(--ink-2)}
.sb-hist{list-style:none;margin:0;padding:0}.sb-hist>li{padding:10px 0;border-top:1px solid var(--line)}.sb-hist>li:first-child{border-top:0;padding-top:0}
.sb-hist>li>div{display:flex;gap:10px;align-items:baseline}.sb-hist b{font-family:var(--font-h);color:var(--navy-ink)}
.sb-hist ul{margin:6px 0 0;padding-left:18px;font-size:14px;color:var(--ink-2);line-height:1.5}
.install-card{display:flex;align-items:center;gap:12px;background:linear-gradient(110deg,#0A2F57,#123F70);color:#fff;border-radius:14px;padding:12px 14px;margin:0 0 12px}
.install-card img{width:40px;height:40px;border-radius:10px;background:#fff;padding:3px}.install-card b{display:block}.install-card span{font-size:13px;color:#C9D6E3}
.install-card .btn{margin-left:auto;flex:none}.install-card .x{background:none;border:0;color:#9FB3C8;padding:4px;flex:none}

/* Histórico do sistema */
.aud-tbl td{vertical-align:top}.aud-det{font-size:12.5px;color:var(--ink-2);min-width:220px;max-width:520px}
.aud-det .de{color:var(--red);text-decoration:line-through}.aud-det .para{color:var(--green-2);font-weight:600}.aud-det .arr{color:var(--muted)}
.aud-kv{display:inline-block;margin:0 10px 2px 0}

/* Galeria de fotos */
.gal-fbar{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))!important}
.gal-grupo{margin-top:16px}.gal-gh{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 2px 8px}.gal-gh b{font-family:var(--font-h);color:var(--navy-ink);font-size:15px}
.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.gal-it{position:relative;padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;cursor:pointer;aspect-ratio:1/1;display:block}
.gal-it img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}.gal-it:hover img{transform:scale(1.04)}
.gal-cap{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:4px;padding:18px 7px 6px;background:linear-gradient(transparent,rgba(8,24,44,.82));color:#fff;font-size:11.5px;text-align:left}
.gal-cap .tag{font-size:10.5px;padding:1px 6px}
.gal-view{position:relative;background:#0B1A2B;border-radius:12px;display:flex;align-items:center;justify-content:center;min-height:240px}
.gal-view img{max-width:100%;max-height:68vh;display:block;border-radius:12px}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;cursor:pointer}
.gal-nav svg{width:22px;height:22px}.gal-nav.p{left:10px}.gal-nav.n{right:10px}.gal-nav:disabled{opacity:.3;cursor:default}
@media (max-width:600px){.gal-grid{grid-template-columns:repeat(3,1fr);gap:6px}.gal-cap{font-size:10px;padding:14px 4px 4px}}
/* prévia da placa QR (meia A4) */
.pl-prev{overflow:hidden;height:calc(148.5mm * .42 + 28px)}
.pl-esc{transform:scale(.42);transform-origin:top center;width:210mm;height:148.5mm;box-shadow:0 2px 10px rgba(0,0,0,.15)}
/* testes hidrostáticos das mangueiras */
.mang{background:var(--line-2,#F3F6F9);border-radius:12px;padding:10px 12px;margin:2px 0 10px}
.mang-l{display:grid;grid-template-columns:110px 1fr 1fr;gap:0 10px;align-items:end;border-top:1px solid var(--line);padding-top:8px;margin-top:6px}
.mang-l:first-of-type{border-top:0;margin-top:0;padding-top:0}.mang-l b{padding-bottom:22px;color:var(--navy-ink);font-size:14px}
.mang-l .field{margin-bottom:6px}
@media (max-width:520px){.mang-l{grid-template-columns:1fr 1fr}.mang-l b{grid-column:1/-1;padding:0 0 4px}}
