/* ============================================================
   SEND US YOUR BILL: photo / file / text / email
   Rendered by bill-upload.js into [data-bill-upload]
   ============================================================ */
.bu{background:var(--white);color:var(--tx);border:1.5px solid var(--bdrlt);border-radius:var(--r4,20px);padding:1.5rem;box-shadow:0 10px 40px rgba(4,12,26,.12);text-align:left;max-width:560px;width:100%;margin-inline:auto}
.bu *{box-sizing:border-box}
.bu h3,.article-body .bu h3{font-family:var(--head);font-size:1.35rem;font-weight:800;color:var(--tx);margin:0 0 .35rem;line-height:1.2}
.bu .bu-sub{font-size:.95rem;color:var(--tx2);margin:0 0 1.1rem;line-height:1.5}
.bu [hidden]{display:none!important}

/* Primary: camera (phones) */
.bu-snap{display:flex;align-items:center;justify-content:center;gap:.6rem;width:100%;min-height:60px;padding:1rem 1.25rem;border:0;border-radius:14px;background:var(--blue);color:#fff;font:700 1.08rem/1.2 var(--sans);cursor:pointer;box-shadow:0 6px 20px rgba(37,99,235,.35);transition:transform .15s,background .15s}
.bu-snap:hover{background:var(--blue3)}
.bu-snap:active{transform:scale(.98)}
.bu-snap svg{flex-shrink:0}

/* Primary: drag and drop (computers) */
.bu-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;min-height:130px;padding:1.25rem;border:2px dashed rgba(37,99,235,.4);border-radius:14px;background:rgba(37,99,235,.04);text-align:center;font-size:.98rem;color:var(--tx2);cursor:pointer;transition:background .15s,border-color .15s}
.bu-drop strong{color:var(--tx);font-size:1.05rem}
.bu-drop.over{background:rgba(37,99,235,.1);border-color:var(--blue)}
.bu.over{border-color:var(--blue);box-shadow:0 0 0 4px rgba(37,99,235,.18)}
.bu-or{text-align:center;font-size:.85rem;color:var(--tx3);margin:.6rem 0}
.bu-link{background:none;border:0;padding:0;font:inherit;color:var(--blue);font-weight:700;text-decoration:underline;cursor:pointer}

/* Secondary: text */
.bu-text{display:flex;align-items:center;justify-content:center;gap:.55rem;width:100%;min-height:54px;margin-top:.7rem;padding:.85rem 1rem;border:1.5px solid rgba(16,185,129,.55);border-radius:14px;background:rgba(16,185,129,.08);color:#047857;font-weight:700;font-size:1rem;text-decoration:none;text-align:center}
.bu-text:hover{background:rgba(16,185,129,.14)}
.bu-text-static{cursor:default}
.bu-text-static:hover{background:rgba(16,185,129,.08)}

.bu-more{overflow-wrap:anywhere;min-width:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1rem;margin-top:.85rem;font-size:.92rem;color:var(--tx3)}
.bu-more span,.bu-more a{min-width:0;max-width:100%}
.bu-more a,.bu-more .bu-link{color:var(--blue);font-weight:600}
.bu .bu-note{margin:.9rem 0 0;font-size:.8rem;color:var(--tx3);text-align:center;line-height:1.45}

/* Review: thumbnails */
.bu-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:.6rem;margin-bottom:1rem}
.bu-thumb{position:relative;aspect-ratio:3/4;border-radius:10px;overflow:hidden;background:var(--bg2);border:1px solid var(--bdrlt)}
.bu-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.bu-thumb .bu-pdf{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:.4rem;font-size:.7rem;color:var(--tx2);text-align:center;overflow-wrap:anywhere}
.bu-thumb .bu-pdf b{font-size:1rem;color:var(--red);margin-bottom:.2rem}
.bu-rm{position:absolute;top:4px;right:4px;width:30px;height:30px;border:0;border-radius:50%;background:rgba(4,12,26,.75);color:#fff;font-size:1.05rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.bu-add{aspect-ratio:3/4;border:2px dashed rgba(37,99,235,.4);border-radius:10px;background:rgba(37,99,235,.04);color:var(--blue);font:700 .8rem/1.3 var(--sans);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:.3rem}
.bu-add span{font-size:1.5rem;line-height:1}

/* Review: form */
.bu-field{margin-bottom:.8rem}
.bu-field label{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;font-size:.88rem;font-weight:600;color:var(--tx);margin-bottom:.3rem}
.bu-field input{width:100%;min-height:52px;padding:.75rem .9rem;border:1.5px solid var(--bdrlt);border-radius:12px;font:500 16px/1.2 var(--sans);color:var(--tx);background:#fff}
.bu-field input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.15)}
.bu-field input.error{border-color:var(--red)}
.bu-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.bu-send{width:100%;min-height:58px;border:0;border-radius:14px;background:var(--green);color:#fff;font:800 1.08rem var(--sans);cursor:pointer;box-shadow:0 6px 20px rgba(16,185,129,.35)}
.bu-send:disabled{opacity:.7;cursor:wait}
.bu-progress{height:8px;border-radius:99px;background:var(--bg2);overflow:hidden;margin-top:.8rem}
.bu-progress i{display:block;height:100%;width:0;background:var(--green);transition:width .2s}
.bu-err{margin:.75rem 0 0;padding:.75rem .9rem;border-radius:12px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.3);color:#991B1B;font-size:.9rem;line-height:1.45}
.bu-err a{color:#991B1B;font-weight:700}
.bu-back{display:block;margin:.8rem auto 0;background:none;border:0;font:600 .88rem var(--sans);color:var(--tx3);cursor:pointer;text-decoration:underline}

/* Done */
.bu-done{text-align:center;padding:.5rem 0}
.bu-done-icon{width:56px;height:56px;margin:0 auto .75rem;border-radius:50%;background:var(--green);color:#fff;font-size:1.7rem;display:flex;align-items:center;justify-content:center}
.bu .bu-done p{color:var(--tx2);margin:.35rem 0 0}

/* Small inline "or snap your bill" link used near other calls to action */
.bu-inline{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;color:var(--green2);text-decoration:underline;background:none;border:0;padding:0;font-size:.95rem;cursor:pointer}

/* Phone bottom bar */
.bu-bar{display:none}
@media (max-width:768px){
  body.has-bu-bar{padding-bottom:84px}
  body.has-bu-bar .fab-phone{display:none!important}
  .bu-bar{display:flex;gap:.6rem;align-items:center;position:fixed;left:0;right:0;bottom:0;z-index:995;padding:.7rem 16px calc(.7rem + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);box-shadow:0 -4px 20px rgba(4,12,26,.15);transform:translateY(110%);transition:transform .25s ease}
  .bu-bar.show{transform:translateY(0)}
  .bu-bar-snap{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;border:0;border-radius:14px;background:var(--blue);color:#fff;font:700 1rem/1.15 var(--sans);text-decoration:none;cursor:pointer;padding:.5rem .75rem;text-align:center}
  .bu-bar-call{flex-shrink:0;width:52px;height:52px;border-radius:14px;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center}
}
@media (max-width:360px){
  .bu{padding:1.15rem}
  .bu-bar-snap{font-size:.92rem}
}
