:root{
  --principal:#0f4c5c;
  --secundaria:#e36414;
  --fundo:#f1f3f5;
  --texto:#2b2b2b;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Segoe UI',system-ui,-apple-system,sans-serif;background:var(--fundo);color:var(--texto);line-height:1.5}
.oculto{display:none !important}

/* ---------- LOGIN ---------- */
.tela-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}
.login-card{background:#fff;border-radius:18px;box-shadow:0 10px 40px rgba(0,0,0,.1);padding:38px 34px;width:100%;max-width:380px;text-align:center}
.login-logo{max-height:60px;margin-bottom:14px}
.login-card h1{color:var(--principal);font-size:1.4rem;margin-bottom:4px}
.login-sub{color:#888;font-size:.9rem;margin-bottom:24px}
.login-card input{width:100%;padding:13px 14px;border:1px solid #ddd;border-radius:10px;font-size:1rem;margin-bottom:14px}
.login-card button{width:100%;padding:13px;background:var(--principal);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer}
.login-card button:hover{opacity:.92}

/* ---------- CABEÇALHO ---------- */
.cabecalho{background:#fff;border-bottom:1px solid #e5e5e5;display:flex;align-items:center;justify-content:space-between;padding:12px 22px;flex-wrap:wrap;gap:10px}
.marca{display:flex;align-items:center;gap:10px}
.marca img{max-height:38px}
.marca strong{color:var(--principal);font-size:1.15rem}
nav{display:flex;gap:6px;flex-wrap:wrap}
.nav-btn{background:transparent;border:none;padding:9px 15px;border-radius:9px;font-size:.95rem;cursor:pointer;color:#555}
.nav-btn:hover{background:#f0f0f0}
.nav-btn.ativo{background:var(--principal);color:#fff}
.nav-btn.sair{color:#c0392b}

/* ---------- CONTEÚDO ---------- */
.conteudo{max-width:860px;margin:0 auto;padding:26px 18px}
.aba h2{color:var(--principal);margin-bottom:18px}

/* ---------- LISTA DE PROPOSTAS ---------- */
.grade-propostas{display:grid;gap:14px}
.prop-card{background:#fff;border-radius:14px;box-shadow:0 4px 16px rgba(0,0,0,.06);padding:18px 20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.prop-info h3{font-size:1.1rem;color:var(--principal);margin-bottom:3px}
.prop-info .destino{color:#666;font-size:.95rem}
.prop-info .data-envio{color:#999;font-size:.82rem;margin-top:6px}
.prop-lado{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:170px}
.status{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;padding:5px 11px;border-radius:20px}
.status.nao{background:#eceef1;color:#6b7280}
.status.sim{background:#e8f5e9;color:#2e7d32}
.status .ponto{width:8px;height:8px;border-radius:50%;background:currentColor}
.acessos{font-size:.8rem;color:#999}
.prop-acoes{display:flex;gap:6px}
.prop-acoes button{font-size:.82rem;padding:6px 10px;border:1px solid #ddd;background:#fff;border-radius:8px;cursor:pointer;color:#444}
.prop-acoes button:hover{background:#f5f5f5}
.vazio{text-align:center;padding:50px 20px;color:#888}
.vazio button{margin-top:14px}

/* ---------- FORMULÁRIO ---------- */
.form{background:#fff;border-radius:16px;box-shadow:0 4px 16px rgba(0,0,0,.06);padding:26px;display:flex;flex-direction:column;gap:16px}
.form label{display:flex;flex-direction:column;gap:6px;font-size:.92rem;color:#444;font-weight:500}
.form input,.form select,.form textarea{padding:11px 12px;border:1px solid #ddd;border-radius:9px;font-size:1rem;font-family:inherit}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--principal)}
.dois{display:grid;grid-template-columns:1fr 1fr;gap:14px}
fieldset.incluido{border:1px solid #e3e3e3;border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:10px}
fieldset.incluido legend{padding:0 8px;color:var(--principal);font-weight:600;font-size:.92rem}
.check{flex-direction:row !important;align-items:center;gap:9px !important;font-weight:400 !important}
.check input{width:18px;height:18px}
.extras{margin-top:6px}
.botao-principal{background:var(--secundaria);color:#fff;border:none;padding:14px;border-radius:11px;font-size:1.05rem;font-weight:700;cursor:pointer}
.botao-principal:hover{opacity:.92}

/* ---------- BLOCOS MODULARES ---------- */
fieldset.modular{border:1px solid #e3e3e3;border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:12px}
fieldset.modular legend{padding:0 8px;color:var(--principal);font-weight:600;font-size:.92rem}
.leg-dica{color:#aaa;font-weight:400;font-size:.82rem}
.blocos{display:flex;flex-direction:column;gap:12px}
.blocos:empty{display:none}
.bloco-mod{border:1px solid #e6e6e6;background:#fafafa;border-radius:11px;padding:14px 15px;display:flex;flex-direction:column;gap:11px}
.bloco-cab{display:flex;justify-content:space-between;align-items:center}
.bloco-cab strong{color:var(--principal);font-size:.95rem}
.btn-remover{background:none;border:none;color:#c0392b;font-size:.82rem;cursor:pointer;text-decoration:underline;padding:0}
.btn-add{align-self:flex-start;background:#fff;border:1.5px dashed var(--principal);color:var(--principal);padding:9px 15px;border-radius:9px;font-size:.92rem;font-weight:600;cursor:pointer}
.btn-add:hover{background:#f0f4f6}

/* ---------- SUCESSO ---------- */
.sucesso-card{background:#fff;border-radius:16px;box-shadow:0 4px 16px rgba(0,0,0,.06);padding:34px;text-align:center;max-width:520px;margin:0 auto}
.check-grande{width:64px;height:64px;border-radius:50%;background:#e8f5e9;color:#2e7d32;font-size:2rem;display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.sucesso-card h2{color:var(--principal);margin-bottom:6px}
.link-box{display:flex;gap:8px;margin:18px 0}
.link-box input{flex:1;padding:11px;border:1px solid #ddd;border-radius:9px;font-size:.9rem;background:#fafafa}
.link-box button{padding:11px 16px;background:var(--principal);color:#fff;border:none;border-radius:9px;cursor:pointer;font-weight:600}
.botao-wpp{display:inline-block;background:#25D366;color:#fff;text-decoration:none;padding:12px 20px;border-radius:11px;font-weight:600;margin-bottom:18px}
.sucesso-acoes{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.link-simples{background:none;border:none;color:var(--principal);text-decoration:underline;cursor:pointer;font-size:.95rem}

/* ---------- AÇÕES DO CABEÇALHO DO BLOCO ---------- */
.cab-acoes{display:flex;align-items:center;gap:12px}
.btn-mini{background:#fff;border:1px solid #d8d8d8;color:var(--principal);font-size:.8rem;padding:5px 10px;border-radius:8px;cursor:pointer;font-weight:600}
.btn-mini:hover{background:#f0f4f6}

/* ---------- BARRA DE MODELOS ---------- */
.modelo-bar{display:flex;gap:8px;align-items:center;margin-top:-2px}
.modelo-sel{flex:0 1 200px;padding:7px 9px !important;border:1px solid #ddd;border-radius:8px;font-size:.85rem;background:#fff;color:#444;cursor:pointer}
.modelo-bar .btn-mini{white-space:nowrap}

/* ---------- BUSCA NA BIBLIOTECA DE HOTÉIS ---------- */
.campo-busca{position:relative}
.busca-result{position:absolute;top:100%;left:0;right:0;z-index:20;background:#fff;border:1px solid #ddd;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12);margin-top:4px;overflow:hidden;max-height:260px;overflow-y:auto}
.bres{padding:10px 13px;cursor:pointer;font-size:.92rem;color:var(--principal);border-bottom:1px solid #f0f0f0}
.bres:last-child{border-bottom:none}
.bres:hover{background:#f0f4f6}
.bres small{color:#999;font-weight:400}

/* ---------- FOTOS COLADAS ---------- */
.campo-fotos{display:flex;flex-direction:column;gap:6px}
.campo-fotos-tit{font-size:.92rem;color:#444;font-weight:500}
.fotos-widget{display:flex;flex-direction:column;gap:10px}
.fotos-thumbs{display:flex;flex-wrap:wrap;gap:8px}
.fotos-thumbs:empty{display:none}
.thumb{position:relative;width:78px;height:78px;border-radius:9px;overflow:hidden;border:1px solid #ddd;background:#eee}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.thumb-x{position:absolute;top:2px;right:2px;width:20px;height:20px;border:none;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;font-size:1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.thumb-x:hover{background:#c0392b}
.fotos-drop{border:1.5px dashed #c3c8cf;border-radius:10px;padding:16px;text-align:center;color:#777;font-size:.88rem;cursor:pointer;background:#fff;transition:.15s}
.fotos-drop:hover,.fotos-drop:focus{border-color:var(--principal);color:var(--principal);outline:none}
.fotos-drop.arrastando{border-color:var(--principal);background:#f0f4f6}
.fotos-drop.enviando{color:var(--secundaria);border-color:var(--secundaria)}

/* ---------- GERAIS ---------- */
.erro{color:#c0392b;font-size:.9rem;text-align:center}
@media (max-width:520px){
  .dois{grid-template-columns:1fr}
  .prop-card{flex-direction:column}
  .prop-lado{text-align:left;align-items:flex-start}
}
