/* #305/#306 contact pop-up (templates/_contact_modal.html). Loaded by BOTH marketing.html and
   base.html, which deliberately share no stylesheet, so every token here is a literal from the
   same palette both use (ink #16181d, line #e6e8ec, Apex Red #E1131E). z-index 80 sits above the
   Della bubble (della.css, 70), which is the highest layer in the app. */

.ct-modal{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px 16px}
.ct-modal[hidden]{display:none}
.ct-back{position:fixed;inset:0;background:rgba(22,24,29,.58)}
.ct-panel{position:relative;width:100%;max-width:440px;background:#fff;color:#16181d;border-radius:14px;
  box-shadow:0 12px 34px rgba(16,18,22,.28);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.45}
.ct-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 12px;border-bottom:1px solid #e6e8ec}
.ct-head h2{margin:0;font-size:17px;font-weight:700}
.ct-x{width:32px;height:32px;border:none;border-radius:8px;background:none;cursor:pointer;font-size:15px;line-height:1;color:#6b7280;
  display:inline-flex;align-items:center;justify-content:center}
.ct-x:hover{background:#f0f1f4;color:#16181d}
.ct-body{padding:16px 18px 6px;display:flex;flex-direction:column;gap:14px}
.ct-row{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:10px}
.ct-lbl{font-size:12px;font-weight:700;color:#E1131E;letter-spacing:.3px}
.ct-val{font-size:17px;font-weight:600;user-select:all;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.ct-acts{display:flex;gap:6px}
.ct-act{border:1px solid #e6e8ec;background:#fff;color:#16181d;border-radius:8px;padding:6px 10px;font:inherit;font-size:12.5px;
  font-weight:600;line-height:1;cursor:pointer;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center}
.ct-act:hover{background:#f0f1f4}
.ct-act.done{border-color:#1a7f37;color:#1a7f37}
.ct-hours{margin:2px 0 8px;font-size:13px;color:#6b7280}
.ct-foot{padding:10px 18px 16px;display:flex;justify-content:flex-end}
.ct-btn{background:#E1131E;color:#fff;border:none;border-radius:9px;padding:9px 16px;font:inherit;font-weight:600;cursor:pointer}
.ct-btn:hover{background:#c00f19}
.ct-x:focus-visible,.ct-act:focus-visible,.ct-btn:focus-visible{outline:2px solid #E1131E;outline-offset:2px}
@media (max-width:480px){
  .ct-row{grid-template-columns:1fr;gap:4px}
  .ct-acts{margin-top:2px}
}
