.solicitacao{color:var(--texto);background:var(--cartao);border:1px solid var(--linha-forte);border-radius:22px;padding:32px;width:min(580px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;color-scheme:dark}
.solicitacao::backdrop{background:rgba(0,0,0,.78)}
.solicitacao h2{font-size:clamp(1.65rem,5vw,2.2rem);padding-right:32px;margin-bottom:14px}
.solicitacao-intro,.solicitacao-aviso{color:var(--suave);font-size:14px}
.solicitacao-fechar{position:absolute;right:15px;top:12px;width:44px;height:44px;font-size:28px}
.solicitacao fieldset{border:0;padding:0;margin:22px 0;min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.solicitacao fieldset[hidden]{display:none}
.solicitacao label{display:flex;flex-direction:column;gap:6px;font-size:14px}
.solicitacao input{width:100%;min-width:0;background:var(--fundo);border:1px solid var(--linha-forte);border-radius:8px;padding:12px;font-size:16px}
.solicitacao small{color:var(--suave);font-size:12px}
.solicitacao-telefone{display:flex;flex-direction:column;gap:6px;font-size:14px;min-width:0;position:relative}
.solicitacao-telefone-campos{display:grid;grid-template-columns:98px minmax(0,1fr);gap:8px}
.solicitacao-aviso{margin-bottom:20px}
.solicitacao [data-status]:not(:empty){margin-top:20px;padding:14px;border:1px solid var(--terra);border-radius:8px}
.solicitacao [data-error]{color:#ffd3c5}
.solicitacao button:disabled{opacity:.65;cursor:wait}
.solicitacao [hidden]{display:none!important}

/* Seletor DDI */
.solicitacao-ddi-container{position:relative;width:100%;height:100%}
.solicitacao-ddi-btn{display:flex;align-items:center;justify-content:space-between;width:100%;height:100%;min-height:46px;background:var(--fundo);border:1px solid var(--linha-forte);border-radius:8px;padding:0 10px;font-family:inherit;font-size:15px;color:var(--texto);cursor:pointer;transition:border-color .2s ease,background .2s ease;user-select:none;box-sizing:border-box}
.solicitacao-ddi-btn:hover,.solicitacao-ddi-btn:focus-visible{border-color:var(--suave);outline:none}
.solicitacao-ddi-btn[aria-expanded="true"]{border-color:var(--terra)}
.solicitacao-ddi-flag{font-size:18px;line-height:1;margin-right:2px}
.solicitacao-ddi-val{font-size:14px;font-weight:400;color:var(--texto);letter-spacing:0}
.solicitacao-ddi-arrow{width:10px;height:6px;stroke:var(--suave);transition:transform .2s ease;flex-shrink:0}
.solicitacao-ddi-btn[aria-expanded="true"] .solicitacao-ddi-arrow{transform:rotate(180deg);stroke:var(--terra)}

.solicitacao-ddi-backdrop{display:none}
.solicitacao-ddi-dropdown{position:absolute;top:calc(100% + 6px);right:0;width:320px;max-width:calc(100vw - 48px);background:var(--cartao);border:1px solid var(--linha-forte);border-radius:14px;box-shadow:0 18px 45px rgba(0,0,0,.75);z-index:120;display:flex;flex-direction:column;overflow:hidden}
.solicitacao-ddi-dropdown[hidden]{display:none!important}
.solicitacao-ddi-header{display:none}

.solicitacao-ddi-busca-wrapper{position:relative;display:flex;align-items:center;padding:10px 12px;border-bottom:1px solid var(--linha);background:var(--cartao)}
.solicitacao-ddi-busca-icon{width:15px;height:15px;color:var(--suave);flex-shrink:0;margin-right:8px;pointer-events:none}
.solicitacao-ddi-busca{width:100%;border:none;background:transparent;color:var(--texto);font-family:inherit;font-size:14px;outline:none;padding:4px 0}
.solicitacao-ddi-busca::placeholder{color:var(--suave);opacity:.7}
.solicitacao-ddi-busca-limpar{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;color:var(--suave);font-size:16px;cursor:pointer;padding:0;background:rgba(231,237,233,.08);margin-left:4px}
.solicitacao-ddi-busca-limpar:hover{color:var(--texto);background:rgba(231,237,233,.16)}

.solicitacao-ddi-lista{list-style:none;margin:0;padding:6px 0;max-height:260px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}
.solicitacao-ddi-lista::-webkit-scrollbar{width:6px}
.solicitacao-ddi-lista::-webkit-scrollbar-track{background:transparent}
.solicitacao-ddi-lista::-webkit-scrollbar-thumb{background:var(--linha-forte);border-radius:4px}
.solicitacao-ddi-lista::-webkit-scrollbar-thumb:hover{background:var(--suave)}

.solicitacao-ddi-opcao{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 14px;min-height:44px;background:none;border:none;color:var(--texto);font-family:inherit;font-size:14px;text-align:left;cursor:pointer;transition:background .15s ease}
.solicitacao-ddi-opcao:hover,.solicitacao-ddi-opcao:focus-visible,.solicitacao-ddi-opcao.is-destacado{background:rgba(231,237,233,.08);outline:none}
.solicitacao-ddi-opcao[aria-selected="true"]{background:rgba(198,145,118,.14);color:var(--terra);font-weight:400}
.solicitacao-ddi-opcao[aria-selected="true"] .solicitacao-ddi-opcao-codigo{color:var(--terra);font-weight:500}
.solicitacao-ddi-opcao-nome{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.solicitacao-ddi-opcao-bandeira{font-size:16px;line-height:1}
.solicitacao-ddi-opcao-codigo{color:var(--suave);font-size:13px;font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:10px}

.solicitacao-ddi-vazio{margin:0;padding:24px 16px;text-align:center;color:var(--suave);font-size:13px}

@media(max-width:520px){
  .solicitacao{padding:24px 20px}
  .solicitacao fieldset{grid-template-columns:1fr;gap:14px}
  .solicitacao-ddi-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:9998;opacity:0;pointer-events:none;transition:opacity .2s ease}
  .solicitacao-ddi-backdrop.is-ativo{opacity:1;pointer-events:auto}
  .solicitacao-ddi-dropdown{position:fixed;inset:auto 0 0 0;width:100%;max-width:100%;max-height:75vh;margin:0;border-radius:20px 20px 0 0;border-inline:0;border-bottom:0;box-shadow:0 -10px 40px rgba(0,0,0,.85);z-index:9999;transform:translateY(100%);transition:transform .25s cubic-bezier(.2,.8,.25,1)}
  .solicitacao-ddi-dropdown.is-aberto{transform:translateY(0)}
  .solicitacao-ddi-header{display:flex;flex-direction:column;padding:8px 16px 4px;border-bottom:1px solid var(--linha)}
  .solicitacao-ddi-puxador{width:36px;height:4px;border-radius:2px;background:var(--linha-forte);margin:2px auto 8px}
  .solicitacao-ddi-header-topo{display:flex;align-items:center;justify-content:space-between}
  .solicitacao-ddi-titulo{margin:0;font-size:15px;font-weight:400;color:var(--texto)}
  .solicitacao-ddi-fechar-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;color:var(--suave);font-size:22px;line-height:1;cursor:pointer}
  .solicitacao-ddi-lista{max-height:calc(75vh - 120px)}
}
