/* Moreira Topografia — estilos com escopo próprio; não altera o tema do site principal. */
#mtc-conversao-root, #mtc-conversao-root * { box-sizing: border-box; }
#mtc-conversao-root { font-family: Inter, system-ui, -apple-system, "Segoe UI", Arial, sans-serif; }
#mtc-conversao-root [hidden] { display: none !important; }
.mtc-dialog-open { overflow: hidden !important; }
#mtc-floating-trigger { appearance: none; border: 1px solid rgba(16,163,100,.28); background: #fff; color:#092952; border-radius:16px; box-shadow:0 18px 50px rgba(4,21,48,.18); padding:12px 14px; min-width:246px; text-align:left; display:flex; align-items:center; gap:10px; cursor:pointer; position:fixed; bottom:23px; left:22px; z-index:79; transition:transform .18s, box-shadow .18s; }
#mtc-floating-trigger:hover { transform:translateY(-3px); box-shadow:0 22px 55px rgba(4,21,48,.25); }
#mtc-floating-trigger strong { display:block; font-size:14px; line-height:1.2; font-weight:850; }
#mtc-floating-trigger small { display:block; font-size:11px; color:#53657b; margin-top:3px; font-weight:600; }
#mtc-floating-trigger .mtc-floating-icon { display:grid; place-items:center; border-radius:10px; background:#e5f8ee; color:#078149; width:38px; height:38px; font-size:22px; flex-shrink:0; }
#mtc-floating-trigger .mtc-floating-arrow { font-size:19px; margin-left:auto; color:#0f8c58; }
.mtc-hero-button { appearance:none; border:1px solid #a8d9bd; border-radius:12px; padding:13px 18px; font-family:inherit; background:#edfff4; color:#0a6b42; font-size:14px; font-weight:850; cursor:pointer; }
.mtc-hero-button:hover { background:#ddf9e9; }
.mtc-card-button { appearance:none; display:block; width:100%; margin-top:12px; text-align:left; border:0; border-top:1px solid #e5f1eb; padding:12px 0 0; background:transparent; color:#108354; font-family:inherit; font-size:13px; font-weight:800; cursor:pointer; }
.mtc-card-button:hover { color:#064c31; text-decoration:underline; }
#mtc-conversao-root .mtc-overlay { position:fixed; inset:0; z-index:10010; display:flex; align-items:center; justify-content:center; padding:16px; }
#mtc-conversao-root .mtc-backdrop { position:absolute; inset:0; background:rgba(3,18,41,.76); backdrop-filter:blur(6px); }
#mtc-conversao-root .mtc-dialog { position:relative; width:min(100%,530px); max-height:min(94vh,850px); overflow:auto; border-radius:22px; background:#fff; box-shadow:0 32px 90px rgba(0,0,0,.34); outline:none; }
#mtc-conversao-root .mtc-head { padding:27px 31px 18px; background:linear-gradient(135deg,#051c3d,#0c3764); color:#fff; }
#mtc-conversao-root .mtc-step { color:#76dbab; font-weight:850; font-size:10px; letter-spacing:1.2px; }
#mtc-conversao-root .mtc-step span { color:#729abb; margin:0 5px; }
#mtc-conversao-root .mtc-head h2 { color:#fff; font-size:26px; line-height:1.22; margin:16px 25px 8px 0; letter-spacing:-.7px; font-weight:900; }
#mtc-conversao-root .mtc-head p { color:#d0e2ef; font-size:13px; margin:0; line-height:1.55; }
#mtc-conversao-root .mtc-close { position:absolute; top:13px; right:16px; border:0; border-radius:9px; color:#fff; background:rgba(255,255,255,.12); font-size:28px; line-height:1; width:36px; height:36px; cursor:pointer; }
#mtc-conversao-root .mtc-close:hover { background:rgba(255,255,255,.22); }
#mtc-conversao-root .mtc-form { padding:22px 31px 25px; }
#mtc-conversao-root .mtc-field { margin-bottom:15px; }
#mtc-conversao-root .mtc-field label { display:block; font-size:12px; font-weight:800; color:#23334c; margin-bottom:6px; }
#mtc-conversao-root .mtc-field label span { color:#0a965b; }
#mtc-conversao-root .mtc-field input, #mtc-conversao-root .mtc-field select, #mtc-conversao-root .mtc-field textarea { width:100%; min-height:45px; display:block; border:1px solid #d2dfeb; background:#fafcff; border-radius:10px; padding:11px 13px; color:#142640; font-size:14px; line-height:1.35; font-family:inherit; box-shadow:none; }
#mtc-conversao-root .mtc-field textarea { resize:vertical; min-height:68px; }
#mtc-conversao-root .mtc-field :is(input,select,textarea):focus { outline:2px solid #5ac995; outline-offset:1px; background:#fff; }
#mtc-conversao-root .mtc-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
#mtc-conversao-root .mtc-error { background:#fff0ed; color:#b52d24; padding:9px 12px; border-radius:10px; margin-bottom:12px; font-size:12px; font-weight:750; }
#mtc-conversao-root .mtc-submit { display:block; width:100%; cursor:pointer; background:#078c54; color:#fff; border:0; border-radius:12px; padding:16px; font-family:inherit; font-size:15px; font-weight:900; box-shadow:0 10px 24px rgba(7,140,84,.2); }
#mtc-conversao-root .mtc-submit:hover { background:#067646; }
#mtc-conversao-root .mtc-privacy { margin:11px 0 0; text-align:center; color:#708096; font-size:11px; line-height:1.5; }
@media(max-width: 700px) {
  #mtc-floating-trigger { display:none; }
  #mtc-conversao-root .mtc-overlay { padding:8px; align-items:flex-end; }
  #mtc-conversao-root .mtc-dialog { max-height:calc(100dvh - 16px); border-radius:20px 20px 12px 12px; }
  #mtc-conversao-root .mtc-head { padding:21px 20px 15px; }
  #mtc-conversao-root .mtc-head h2 { font-size:23px; }
  #mtc-conversao-root .mtc-form { padding:17px 20px 18px; }
  #mtc-conversao-root .mtc-grid { grid-template-columns:1fr; gap:0; }
  .mtc-hero-button { width:100%; text-align:center; }
}
@media(prefers-reduced-motion: reduce) {
  #mtc-floating-trigger { transition:none; }
}
/* Moreira 2.0: campos de contato e transparência no armazenamento */
#mtc-conversao-root .mtc-consent { display:flex; align-items:flex-start; gap:10px; font-size:12px; line-height:1.5; color:#23334c; margin:7px 0 16px; cursor:pointer; }
#mtc-conversao-root .mtc-consent input { width:17px; height:17px; flex:0 0 17px; margin-top:1px; accent-color:#078c54; }
#mtc-conversao-root .mtc-success { color:#065f46; font-size:13px; font-weight:700; padding:11px 12px; background:#dff8ec; border-radius:9px; margin-bottom:12px; }
#mtc-conversao-root .mtc-fallback-link { display:block; font-size:12px; font-weight:800; padding:12px 0; text-align:center; color:#0a6b42; }
#mtc-conversao-root .mtc-submit:disabled { opacity:.6; cursor:wait; }
#mtc-conversao-root .mtc-hidden-hp { position:absolute!important; left:-99999px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
