/* Suntax · Modelo 210 — estilos del plugin */
#suntax-m210-app{
  --ink:#16292e;--pine:#0d5f52;--pine-d:#0a4a40;--sun:#e39a2b;--sun-d:#c9821a;
  --paper:#f7f5f0;--surface:#fff;--line:#e2ded4;--muted:#61726f;--muted-l:#8a9794;
  --refund:#1668a8;--danger:#b0402f;--radius:14px;
  --shadow:0 1px 2px rgba(22,41,46,.04),0 8px 28px rgba(22,41,46,.06);
  font-family:'Inter',system-ui,-apple-system,sans-serif;color:var(--ink);
  line-height:1.5;max-width:1140px;margin:0 auto;
}
#suntax-m210-app *{box-sizing:border-box}
#suntax-m210-app h1,#suntax-m210-app h2,#suntax-m210-app h3,#suntax-m210-app .num{
  font-family:'Space Grotesk','Inter',sans-serif}
.sx-tnum{font-variant-numeric:tabular-nums}
.suntax-gate{padding:22px;border:1px solid var(--line);border-radius:14px;background:#f7f5f0;text-align:center;font-family:'Inter',sans-serif}
.suntax-gate a{color:var(--pine);font-weight:600}

/* header */
.sx-head{display:flex;align-items:center;gap:12px;margin-bottom:22px;flex-wrap:wrap}
.sx-mark{width:30px;height:30px;border-radius:9px;background:radial-gradient(circle at 30% 30%,var(--sun),var(--sun-d));flex:0 0 auto}
.sx-head h1{font-size:22px;font-weight:700;letter-spacing:-.01em;margin:0}
.sx-head .sub{color:var(--muted);font-size:13px}
.sx-head .who{margin-left:auto;font-size:13px;color:var(--muted)}

/* buttons */
.sx-btn{font-family:'Space Grotesk','Inter',sans-serif;font-weight:600;font-size:14px;padding:10px 18px;border-radius:10px;border:1px solid transparent;cursor:pointer;transition:.15s;display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.sx-btn-primary{background:var(--pine);color:#fff}.sx-btn-primary:hover{background:var(--pine-d)}
.sx-btn-sun{background:var(--sun);color:#3a2a08}.sx-btn-sun:hover{background:var(--sun-d);color:#fff}
.sx-btn-ghost{background:transparent;color:var(--muted);border-color:var(--line)}
.sx-btn-ghost:hover{background:var(--pine);color:#fff;border-color:var(--pine)}
.sx-btn-danger{background:transparent;color:#a52a2a;border-color:#e3bcbc}
.sx-btn-danger:hover{background:#a52a2a;color:#fff;border-color:#a52a2a}
.sx-btn-primary:hover,.sx-btn-sun:hover{color:#fff}
.sx-btn-sm{padding:6px 12px;font-size:13px}
.sx-btn[disabled]{opacity:.45;cursor:not-allowed}

/* cards & sections */
.sx-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:20px}
.sx-card-h{padding:18px 22px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.sx-card-h h2{font-size:18px;font-weight:600;margin:0}
.sx-card-h .sx-btn{margin-left:auto}
.sx-eyebrow{font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--sun-d)}
.sx-card-b{padding:20px 22px}

/* dashboard lists */
.sx-list{display:flex;flex-direction:column;gap:10px}
.sx-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.sx-item .ic{width:38px;height:38px;border-radius:10px;background:rgba(13,95,82,.09);color:var(--pine);display:grid;place-items:center;font-family:'Space Grotesk';font-weight:700;flex:0 0 auto}
.sx-item .main{min-width:0;flex:1}
.sx-item .main .t{font-weight:600;font-size:14.5px}
.sx-item .main .s{font-size:12.5px;color:var(--muted)}
.sx-item .acts{display:flex;gap:6px;flex-wrap:wrap}
.sx-empty{padding:26px;text-align:center;color:var(--muted);font-size:14px;border:1px dashed var(--line);border-radius:12px;background:var(--paper)}

.sx-badge{font-size:11px;font-weight:600;padding:2px 9px;border-radius:20px}
.sx-badge.borrador{background:rgba(227,154,43,.16);color:var(--sun-d)}
.sx-badge.presentada{background:rgba(13,95,82,.12);color:var(--pine-d)}
.sx-year{font-family:'Space Grotesk';font-weight:700;font-size:15px;color:var(--ink)}
.sx-amt{font-family:'Space Grotesk';font-weight:700;font-variant-numeric:tabular-nums}
.sx-amt.pay{color:var(--ink)}.sx-amt.refund{color:var(--refund)}

/* wizard */
.sx-wrap{display:grid;grid-template-columns:1fr 330px;gap:26px;align-items:start}

/* En columna estrecha (habitual dentro de una plantilla de WordPress) el panel
   de resultado pasa ARRIBA y queda fijo, para que no se pierda al final de
   formularios largos como el paso de importes. */
@media(max-width:880px){
  .sx-wrap{grid-template-columns:1fr}
  .sx-res{order:-1;position:sticky;top:0;z-index:30}
  .sx-res .sx-res-rows,.sx-res .sx-res-note{display:none}
  .sx-res.sx-open .sx-res-rows,.sx-res.sx-open .sx-res-note{display:block}
  .sx-res-head{padding:12px 16px 11px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
  .sx-res-head .lbl{font-size:10.5px}
  .sx-res-amt{font-size:24px;margin-top:0}
  .sx-res-toggle{margin-left:auto}
}
.sx-stepper{display:flex;gap:6px;margin-bottom:20px;flex-wrap:wrap}
.sx-pill{appearance:none;-webkit-appearance:none;display:flex;align-items:center;gap:8px;flex:1;min-width:110px;margin:0;padding:6px 8px;border:0;border-radius:10px;background:transparent;color:var(--muted-l);font-family:'Inter',sans-serif;font-size:12.5px;text-align:left;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}
.sx-pill:hover{background:rgba(13,95,82,.055);color:var(--pine-d)}
.sx-pill:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(13,95,82,.16)}
.sx-pill .idx{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;font-family:'Space Grotesk';font-weight:600;font-size:12px;background:#fff;flex:0 0 auto}
.sx-pill.active{color:var(--ink);background:rgba(13,95,82,.045);cursor:default}.sx-pill.active .idx{border-color:var(--pine);background:var(--pine);color:#fff}
.sx-pill.done .idx{border-color:var(--pine);color:var(--pine)}

.sx-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.sx-grid .full{grid-column:1/-1}
@media(max-width:560px){.sx-grid{grid-template-columns:1fr}}
.sx-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.sx-field label{font-size:13px;font-weight:500}
.sx-field label .req{color:var(--sun-d)}
.sx-field .hint{font-size:11.5px;color:var(--muted)}
.sx-field input,.sx-field select{font-family:'Inter',sans-serif;font-size:14px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;width:100%;color:var(--ink)}
.sx-field input:focus,.sx-field select:focus{outline:none;border-color:var(--pine);box-shadow:0 0 0 3px rgba(13,95,82,.12)}
.sx-money{position:relative}.sx-money::before{content:"€";position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--muted-l);font-size:13px}.sx-money input{padding-left:24px}
.sx-seg{display:flex;flex-wrap:wrap;gap:7px}
.sx-seg label{flex:1;min-width:120px;cursor:pointer}
.sx-seg input{position:absolute;opacity:0}
.sx-seg .opt{display:block;padding:10px;border:1px solid var(--line);border-radius:9px;font-size:13.5px;text-align:center;color:var(--muted);background:#fff}
.sx-seg input:checked+.opt{border-color:var(--pine);background:rgba(13,95,82,.06);color:var(--pine-d);font-weight:600;box-shadow:inset 0 0 0 1px var(--pine)}
.sx-block{margin-top:22px;padding-top:18px;border-top:1px dashed var(--line)}
.sx-block:first-child{margin-top:0;padding-top:0;border-top:0}
.sx-block-t{font-family:'Space Grotesk';font-weight:600;font-size:13.5px;margin-bottom:3px;display:flex;gap:8px;align-items:center}
.sx-block-t .tag{font-family:'Inter';font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--sun-d);background:rgba(227,154,43,.12);padding:2px 7px;border-radius:5px}
.sx-block-d{font-size:12px;color:var(--muted);margin-bottom:14px}
.sx-hidden{display:none!important}
.sx-nav{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}

/* result panel */
.sx-res{position:sticky;top:20px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.sx-res-head{padding:18px 20px 15px;background:linear-gradient(160deg,var(--ink),#0d1f23);color:#fff}
.sx-res-head .lbl{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.55);font-family:'Space Grotesk';font-weight:600}
.sx-res-amt{font-family:'Space Grotesk';font-weight:700;font-size:34px;letter-spacing:-.02em;margin-top:5px;font-variant-numeric:tabular-nums}
.sx-res-state{display:inline-flex;gap:6px;margin-top:10px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:20px}
.sx-res-state.pay{background:rgba(227,154,43,.18);color:#f4c078}
.sx-res-state.refund{background:rgba(64,150,220,.2);color:#9fd0f5}
.sx-res-state.zero{background:rgba(255,255,255,.12);color:rgba(255,255,255,.7)}
.sx-res-rows{padding:14px 20px;background:#fff}
.sx-res-row{display:flex;justify-content:space-between;padding:6px 0;font-size:13px;border-bottom:1px solid var(--line)}
.sx-res-row:last-child{border-bottom:0}
.sx-res-row .k{color:var(--muted)}
.sx-res-row .v{font-family:'Space Grotesk';font-weight:600;font-variant-numeric:tabular-nums}
.sx-res-row.rate .v{color:var(--pine-d)}
.sx-res-note{padding:12px 20px;background:var(--paper);border-top:1px solid var(--line);font-size:11.5px;color:var(--muted)}
.sx-res-empty{padding:24px 20px;text-align:center;color:var(--muted);font-size:13px;background:#fff}

.sx-disc{margin-top:18px;padding:14px 16px;border-radius:12px;background:rgba(227,154,43,.08);border:1px solid rgba(227,154,43,.3);font-size:12px;color:#7a5a1a}
.sx-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(80px);background:var(--ink);color:#fff;padding:11px 18px;border-radius:10px;font-size:14px;box-shadow:var(--shadow);z-index:9999;opacity:0;transition:.3s}
.sx-toast.show{transform:translateX(-50%);opacity:1}

/* ===== Vista de administración: filtros, tabla y acciones masivas ===== */
.sx-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;padding:14px 16px;background:var(--paper);border:1px solid var(--line);border-radius:12px;margin-bottom:14px}
.sx-filter{display:flex;flex-direction:column;gap:4px;min-width:150px;flex:1}
.sx-filter label{font-size:11.5px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.sx-filter select{font-family:'Inter',sans-serif;font-size:13.5px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);width:100%}
.sx-filter select:focus{outline:none;border-color:var(--pine);box-shadow:0 0 0 3px rgba(13,95,82,.12)}

.sx-bulk{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:14px}
.sx-bulk-info{flex:1;min-width:180px;font-size:13px;color:var(--muted)}
.sx-bulk-info strong{color:var(--ink);font-family:'Space Grotesk';font-size:15px}

.sx-tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.sx-table{width:100%;border-collapse:collapse;font-size:13.5px;background:#fff;min-width:900px}
.sx-table th{text-align:left;font-family:'Space Grotesk',sans-serif;font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:11px 12px;background:var(--paper);border-bottom:1px solid var(--line);white-space:nowrap}
.sx-table td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
.sx-table tbody tr:last-child td{border-bottom:0}
.sx-table tbody tr:hover{background:rgba(13,95,82,.035)}
.sx-table .sx-check{width:38px;text-align:center}
.sx-table .sx-check input{width:16px;height:16px;accent-color:var(--pine);cursor:pointer}
.sx-table .sx-year{font-family:'Space Grotesk';font-weight:700}
.sx-table .sx-amt{white-space:nowrap;text-align:right}
.sx-rowacts{display:flex;gap:6px;justify-content:flex-end;white-space:nowrap}
.sx-muted{color:var(--muted-l);font-size:12px}

/* ===== Declaración de otro cliente (vista de administración) ===== */
.sx-owner-note{padding:12px 14px;border-radius:10px;background:rgba(227,154,43,.10);border:1px solid rgba(227,154,43,.35);font-size:13px;color:#7a5a1a;margin-bottom:16px}
.sx-owner-note strong{color:#5f4410}
.sx-fixed{padding:10px 12px;border:1px dashed var(--line);border-radius:9px;background:var(--paper);font-size:14px;color:var(--ink)}

/* Botón para desplegar el detalle cuando el panel está en modo compacto */
.sx-res-toggle{display:none;background:rgba(255,255,255,.16);border:0;color:#fff;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:11.5px;padding:5px 11px;border-radius:8px;cursor:pointer}
.sx-res-toggle:hover{background:rgba(255,255,255,.26)}
@media(max-width:880px){.sx-res-toggle{display:inline-block}}
/* Resultado en error */
.sx-res-err{padding:16px 20px;background:#fff;font-size:13px;color:var(--danger)}
.sx-review-rows{margin-top:12px;padding-top:10px;border-top:1px solid rgba(13,95,82,.2)}
.sx-review-rows .sx-res-row{border-bottom-color:rgba(13,95,82,.14)}
.sx-res-aviso{padding:11px 20px;background:rgba(227,154,43,.10);border-top:1px solid rgba(227,154,43,.3);font-size:12px;color:#7a5a1a;line-height:1.5}

/* ===== Copropietarios (paso 2) ===== */
.sx-copro{position:relative;border:1px solid var(--line);border-radius:12px;overflow:visible;margin-top:6px}
.sx-copro-head{position:relative;z-index:100;display:grid;grid-template-columns:1fr 150px 34px;gap:10px;padding:9px 14px;background:var(--paper);border-radius:11px 11px 0 0;border-bottom:1px solid var(--line);font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.sx-copro-row{display:grid;grid-template-columns:1fr 150px 34px;gap:10px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line)}
.sx-copro-row:last-of-type{border-bottom:0}
.sx-copro-sel select{width:100%;font-family:'Inter',sans-serif;font-size:14px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink)}
.sx-copro-sel select:focus{outline:none;border-color:var(--pine);box-shadow:0 0 0 3px rgba(13,95,82,.12)}
.sx-copro-pct{position:relative;display:flex;align-items:center}
.sx-copro-pct input{width:100%;font-family:'Inter',sans-serif;font-size:14px;padding:9px 26px 9px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;text-align:right}
.sx-copro-pct input:focus{outline:none;border-color:var(--pine);box-shadow:0 0 0 3px rgba(13,95,82,.12)}
.sx-copro-pct span{position:absolute;right:10px;color:var(--muted-l);font-size:13px;pointer-events:none}
.sx-copro-del{width:30px;height:30px;border:0;border-radius:8px;background:rgba(176,64,47,.1);color:var(--danger);font-size:18px;line-height:1;cursor:pointer;transition:.15s}
.sx-copro-del:hover{background:var(--danger);color:#fff}
.sx-copro-del-ph{width:30px}
.sx-copro-foot{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;background:var(--paper);border-radius:0 0 11px 11px;flex-wrap:wrap}
.sx-copro-suma{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13px}
.sx-copro-suma.ok{color:var(--pine-d)}
.sx-copro-suma.bad{color:var(--danger)}
.sx-copro-new{margin-top:12px}
@media(max-width:560px){
  .sx-copro-head{grid-template-columns:1fr 110px 30px}
  .sx-copro-row{grid-template-columns:1fr 110px 30px}
}

/* ===== Resultado por copropietario (paso Revisar) ===== */
.sx-copro-suma.warn{color:var(--sun-d)}
.sx-copro-results{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.sx-cr{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.sx-cr-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 15px;background:var(--paper);border-bottom:1px solid var(--line);flex-wrap:wrap}
.sx-cr-name{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:14.5px;color:var(--ink)}
.sx-cr-meta{display:block;font-family:'Inter',sans-serif;font-weight:400;font-size:12px;color:var(--muted);margin-top:1px}
.sx-cr-amt{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:20px;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.sx-cr-amt.pay{color:var(--ink)}
.sx-cr-amt.refund{color:var(--refund)}
.sx-cr-tag{display:block;font-family:'Inter',sans-serif;font-weight:500;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-top:1px}
.sx-cr-rows{padding:8px 15px 12px}
.sx-cr-rows .sx-res-row{border-bottom-color:var(--line)}
.sx-cr-note{padding:10px 15px 12px;font-size:12px;color:var(--muted)}
.sx-cr-total{display:grid;grid-template-columns:1fr auto;gap:4px 14px;align-items:center;margin-top:12px;padding:14px 16px;border-radius:12px;background:linear-gradient(160deg,var(--ink),#0d1f23);color:#fff}
.sx-cr-total span:nth-child(odd){font-size:12.5px;color:rgba(255,255,255,.7)}
.sx-cr-total .sx-amt{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:18px;text-align:right}
.sx-cr-total .sx-amt.pay{color:#fff}
.sx-cr-total .sx-amt.refund{color:#9fd0f5}

/* ===== Ayudas contextuales y validación de formularios (v1.6.0) ===== */
/* Los globos necesitan salir del contenedor para no quedar recortados. */
.sx-card{overflow:visible}
.sx-label-row{display:flex;align-items:center;gap:6px;min-width:0}
.sx-label-row>label{min-width:0}
.sx-help{position:relative;display:inline-grid;place-items:center;flex:0 0 auto;width:18px;height:18px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--pine-d);font-family:'Inter',sans-serif;font-size:11px;font-weight:700;line-height:1;cursor:help;text-transform:none;letter-spacing:0;z-index:20}
.sx-help:hover,.sx-help:focus{border-color:var(--pine);background:rgba(13,95,82,.07);outline:none;box-shadow:0 0 0 3px rgba(13,95,82,.12)}
.sx-help-tip{position:absolute;left:50%;bottom:calc(100% + 9px);width:min(310px,78vw);padding:10px 12px;border-radius:9px;background:var(--ink);color:#fff;box-shadow:0 10px 28px rgba(12,35,39,.2);font-family:'Inter',sans-serif;font-size:12px;font-weight:400;line-height:1.45;text-align:left;text-transform:none;letter-spacing:0;white-space:normal;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,5px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease;z-index:1000}
.sx-help-tip::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--ink)}
.sx-help:hover .sx-help-tip,.sx-help:focus .sx-help-tip{opacity:1;visibility:visible;transform:translate(-50%,0)}
.sx-field-error{display:block;font-size:11.5px;line-height:1.35;color:var(--danger)}
.sx-field-error:empty,.sx-copro-error:empty{display:none}
.sx-field.has-error input,.sx-field.has-error select{border-color:var(--danger);box-shadow:0 0 0 3px rgba(176,64,47,.1)}
.sx-field.has-error .sx-seg .opt{border-color:rgba(176,64,47,.55)}
.sx-field.has-error input:focus,.sx-field.has-error select:focus{border-color:var(--danger);box-shadow:0 0 0 3px rgba(176,64,47,.16)}
.sx-copro-row.has-error{background:rgba(176,64,47,.035)}
.sx-copro-row.has-error select,.sx-copro-row.has-error input{border-color:var(--danger);box-shadow:0 0 0 3px rgba(176,64,47,.1)}
.sx-copro-error{display:block;padding:0 14px 9px;background:#fff;color:var(--danger);font-size:11.5px;line-height:1.35}
.sx-copro-head>span{display:flex;align-items:center;gap:5px}
.sx-copro-head .sx-help{width:17px;height:17px;font-size:10px}
@media(max-width:560px){
  .sx-help-tip{left:auto;right:-18px;transform:translateY(5px);width:min(280px,82vw)}
  .sx-help-tip::after{left:auto;right:20px;transform:none}
  .sx-help:hover .sx-help-tip,.sx-help:focus .sx-help-tip{transform:translateY(0)}
}

/* ===== Buscador condicional de residencia fiscal (v1.7.0) ===== */
.sx-country-search{position:relative}
.sx-country-search input[type="search"]{
  padding-right:36px;
  -webkit-appearance:none;
  appearance:none;
}
.sx-country-search input[type="search"]::-webkit-search-cancel-button{
  cursor:pointer;
}
.sx-country-results{
  position:absolute;
  top:calc(100% + 6px);
  left:0;
  right:0;
  z-index:1200;
  max-height:260px;
  overflow-y:auto;
  padding:6px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fff;
  box-shadow:0 16px 38px rgba(12,35,39,.16);
}
.sx-country-results[hidden]{display:none!important}
.sx-country-results button{
  display:block;
  width:100%;
  padding:9px 10px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:var(--ink);
  font:500 13.5px/1.3 'Inter',sans-serif;
  text-align:left;
  cursor:pointer;
}
.sx-country-results button:hover,
.sx-country-results button:focus,
.sx-country-results button.is-active{
  outline:none;
  background:rgba(13,95,82,.08);
  color:var(--pine-d);
}
.sx-country-empty{
  padding:10px;
  color:var(--muted);
  font-size:12.5px;
  line-height:1.4;
}
.sx-field.has-error .sx-country-results{
  border-color:var(--line);
  box-shadow:0 16px 38px rgba(12,35,39,.16);
}

/* ===== Navegación del asistente y ayudas de copropietarios (v1.8.0) ===== */
/* El encabezado crea una capa propia y el contenedor deja salir los globos,
   evitando que las ayudas de Copropietario y % de propiedad queden recortadas. */
.sx-copro-head .sx-help{z-index:120}
.sx-copro-head .sx-help-tip{z-index:2200}
.sx-copro-row{position:relative;z-index:1}
@media(max-width:560px){
  .sx-stepper{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .sx-pill{min-width:0}
}


/* ===== Ayudas visuales configurables de Propiedades (v1.9.0) ===== */
.sx-visual-help{
  appearance:none;
  -webkit-appearance:none;
  display:inline-grid;
  place-items:center;
  flex:0 0 auto;
  width:20px;
  height:20px;
  padding:0;
  border:1px solid rgba(227,154,43,.55);
  border-radius:6px;
  background:rgba(227,154,43,.10);
  color:var(--sun-d);
  font:700 12px/1 'Inter',sans-serif;
  cursor:pointer;
}
.sx-visual-help:hover,.sx-visual-help:focus-visible{
  outline:none;
  border-color:var(--sun-d);
  background:rgba(227,154,43,.18);
  box-shadow:0 0 0 3px rgba(227,154,43,.14);
}
.sx-visual-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:20px}
.sx-visual-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(7,22,25,.72);cursor:zoom-out}
.sx-visual-dialog{position:relative;z-index:1;width:min(900px,94vw);max-height:90vh;display:flex;flex-direction:column;border-radius:16px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.34);overflow:hidden}
.sx-visual-head{display:flex;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line)}
.sx-visual-head h3{flex:1;margin:0;font-family:'Space Grotesk',sans-serif;font-size:17px;color:var(--ink)}
.sx-visual-close{appearance:none;width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:400 25px/1 'Inter',sans-serif;cursor:pointer}
.sx-visual-close:hover,.sx-visual-close:focus-visible{outline:none;border-color:var(--pine);background:rgba(13,95,82,.07);box-shadow:0 0 0 3px rgba(13,95,82,.12)}
.sx-visual-body{padding:14px;overflow:auto;background:var(--paper)}
.sx-visual-body img{display:block;max-width:100%;height:auto;max-height:calc(90vh - 92px);margin:0 auto;border-radius:9px;box-shadow:0 4px 20px rgba(12,35,39,.12)}
@media(max-width:560px){
  .sx-visual-modal{padding:10px}
  .sx-visual-dialog{width:100%;max-height:94vh}
  .sx-visual-body{padding:8px}
}

/* ===== Localización oficial vinculada de Propiedades (v1.10.1) ===== */
.sx-geo-search{position:relative}
.sx-geo-search input[type="search"]{-webkit-appearance:none;appearance:none;padding-right:36px}
.sx-geo-search input[type="search"]::-webkit-search-cancel-button{cursor:pointer}
.sx-geo-search input[disabled]{background:var(--paper);color:var(--muted-l);cursor:not-allowed}
.sx-geo-results{
  position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:1400;
  max-height:270px;overflow-y:auto;padding:6px;border:1px solid var(--line);
  border-radius:11px;background:#fff;box-shadow:0 16px 38px rgba(12,35,39,.16)
}
.sx-geo-results[hidden]{display:none!important}
.sx-geo-results button{
  display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;
  padding:9px 10px;border:0;border-radius:8px;background:transparent;color:var(--ink);
  font:500 13.5px/1.3 'Inter',sans-serif;text-align:left;cursor:pointer
}
.sx-geo-results button:hover,.sx-geo-results button:focus,.sx-geo-results button.is-active{
  outline:none;background:rgba(13,95,82,.08);color:var(--pine-d)
}
.sx-geo-code{flex:0 0 auto;padding:2px 7px;border-radius:20px;background:var(--paper);color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}
.sx-geo-empty{padding:10px;color:var(--muted);font-size:12.5px;line-height:1.4}
.sx-geo-empty.is-loading{color:var(--pine-d)}
.sx-geo-empty.is-error{color:var(--danger)}
.sx-field.has-error .sx-geo-results{border-color:var(--line);box-shadow:0 16px 38px rgba(12,35,39,.16)}
.sx-foral-warning{
  margin-top:12px;padding:13px 15px;border:1px solid rgba(176,64,47,.34);border-radius:11px;
  background:rgba(176,64,47,.07);color:#7d2d22;font-size:12.5px;line-height:1.5
}
.sx-foral-warning[hidden]{display:none!important}
.sx-foral-warning strong{color:var(--danger)}
.sx-geo-source{
  margin-top:-2px;padding:8px 10px;border-radius:8px;background:var(--paper);
  color:var(--muted);font-size:10.5px;line-height:1.4
}


/* ===== Confirmación de presentación fuera de plazo (v1.11.0) ===== */
.sx-late-filing{
  margin-top:16px;padding:16px 17px;border:1px solid rgba(190,117,24,.38);border-radius:12px;
  background:rgba(227,154,43,.09);color:#68410f;font-size:12.5px;line-height:1.55
}
.sx-late-filing.sx-hidden{display:none!important}
.sx-late-filing-title{margin-bottom:5px;color:#89520d;font-family:'Space Grotesk',sans-serif;font-size:15px;font-weight:700}
.sx-late-filing p{margin:5px 0}
.sx-late-check{margin-top:12px;padding-top:12px;border-top:1px solid rgba(190,117,24,.25)}
.sx-late-check>label{display:flex;align-items:flex-start;gap:10px;color:#5e390c;font-weight:600;cursor:pointer}
.sx-late-check input[type="checkbox"]{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--pine);cursor:pointer}
.sx-late-check.has-error>label{color:var(--danger)}
.sx-late-review{margin-top:12px;padding:12px 14px;border:1px solid rgba(190,117,24,.34);border-radius:10px;background:rgba(227,154,43,.08);color:#68410f;font-size:12.5px;line-height:1.5}
.sx-late-review strong{color:#89520d}

/* ===== Introducción de datos en mayúsculas (v1.12.0) ===== */
#suntax-m210-app input[type="text"],
#suntax-m210-app input[type="email"],
#suntax-m210-app input[type="tel"],
#suntax-m210-app input[type="search"],
#suntax-m210-app textarea{
  text-transform:uppercase;
}

/* ===== Pago de la gestión con WooCommerce Subscriptions (v1.13.0) ===== */
.sx-pay-intro{
  margin-bottom:15px;padding:13px 15px;border:1px solid rgba(13,95,82,.2);border-radius:11px;
  background:rgba(13,95,82,.055);color:var(--ink);font-size:12.5px;line-height:1.55
}
.sx-pay-summary{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px
}
.sx-pay-summary>div{
  min-width:0;padding:12px 13px;border:1px solid var(--line);border-radius:10px;background:#fff
}
.sx-pay-summary span{display:block;margin-bottom:4px;color:var(--muted);font-size:10.5px;text-transform:uppercase;letter-spacing:.055em}
.sx-pay-summary strong{display:block;overflow-wrap:anywhere;color:var(--ink);font-size:13px}
.sx-pay-product{margin:15px 0 10px;color:var(--muted);font-size:12px}
.sx-pay-product strong{color:var(--ink)}
.sx-pay-options{display:grid;gap:10px}
.sx-pay-option{display:block;position:relative;cursor:pointer}
.sx-pay-option>input{position:absolute;opacity:0;pointer-events:none}
.sx-pay-option>span{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 18px;align-items:start;
  padding:15px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;
  transition:border-color .16s,box-shadow .16s,background .16s
}
.sx-pay-option:hover>span{border-color:rgba(13,95,82,.42);background:rgba(13,95,82,.025)}
.sx-pay-option>input:focus-visible+span{outline:none;border-color:var(--pine);box-shadow:0 0 0 3px rgba(13,95,82,.13)}
.sx-pay-option>input:checked+span{border-color:var(--pine);background:rgba(13,95,82,.055);box-shadow:inset 0 0 0 1px var(--pine)}
.sx-pay-option>span:before{
  content:"";position:absolute;left:16px;top:17px;width:15px;height:15px;border:1.5px solid #9cadab;border-radius:50%;background:#fff
}
.sx-pay-option>input:checked+span:before{border:5px solid var(--pine);width:8px;height:8px}
.sx-pay-option strong{grid-column:1;padding-left:27px;color:var(--ink);font-family:'Space Grotesk',sans-serif;font-size:14.5px}
.sx-pay-option>span>small{grid-column:1;padding-left:27px;color:var(--muted);font-size:11.5px;line-height:1.48}
.sx-pay-option em{grid-column:2;grid-row:1 / span 2;align-self:center;color:var(--pine-d);font-style:normal;font-size:17px;font-weight:750;text-align:right;white-space:nowrap}
.sx-pay-option em small{display:block;margin-top:3px;color:var(--muted);font-size:10.5px;font-weight:500}
.sx-pay-status{margin:12px 0;padding:13px 15px;border:1px solid var(--line);border-radius:10px;font-size:12.5px;line-height:1.5}
.sx-pay-status.success{border-color:rgba(31,132,92,.32);background:rgba(31,132,92,.075);color:#145f43}
.sx-pay-status.warn{border-color:rgba(190,117,24,.34);background:rgba(227,154,43,.08);color:#68410f}
.sx-pay-status.error{border-color:rgba(176,64,47,.32);background:rgba(176,64,47,.065);color:#7d2d22}
.sx-pay-status strong{color:inherit}
.sx-pay-note{margin-top:12px;color:var(--muted);font-size:11.5px;line-height:1.5}
.sx-pay-button{display:block;margin:16px 0 2px auto}
.sx-review-payment{margin-top:12px}
.sx-pay-options.has-error .sx-pay-option>span{border-color:var(--danger)}
@media(max-width:680px){
  .sx-pay-summary{grid-template-columns:1fr}
  .sx-pay-option>span{grid-template-columns:1fr}
  .sx-pay-option em{grid-column:1;grid-row:auto;padding-left:27px;text-align:left}
  .sx-pay-button{width:100%}
}
.sx-pay-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px}
@media(max-width:680px){.sx-pay-actions{flex-direction:column-reverse}.sx-pay-actions .sx-btn{width:100%}}

/* ===== Confirmación de revisión tras renovación anual (v1.13.0) ===== */
.sx-renewal-review{
  margin-top:16px;padding:16px 17px;border:1px solid rgba(13,95,82,.3);border-radius:12px;
  background:rgba(13,95,82,.07);color:#173f3a;font-size:12.5px;line-height:1.55
}
.sx-renewal-review-title{
  margin-bottom:5px;color:var(--pine-d);font-family:'Space Grotesk',sans-serif;font-size:15px;font-weight:700
}
.sx-renewal-review p{margin:5px 0}
.sx-renewal-check{margin-top:12px;padding-top:12px;border-top:1px solid rgba(13,95,82,.2)}
.sx-renewal-check>label{display:flex;align-items:flex-start;gap:10px;color:#173f3a;font-weight:600;cursor:pointer}
.sx-renewal-check input[type="checkbox"]{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--pine);cursor:pointer}
.sx-renewal-check.has-error>label{color:var(--danger)}
