/* ===== Convertidor RINEX (usa las variables de styles.css) ===== */
.rx-hero{background:var(--negro);color:#fff;padding:46px 0 120px;position:relative;overflow:hidden}
.rx-hero:after{content:'';position:absolute;right:-120px;top:-80px;width:520px;height:520px;border:1px solid #ffffff10;border-radius:50%;box-shadow:0 0 0 70px #ffffff05,0 0 0 140px #ffffff04;pointer-events:none}
.rx-bc{display:flex;gap:10px;font-size:.8125rem;color:#9aa1ad;margin-bottom:34px}.rx-bc a:hover{color:#fff}
.rx-hero h1{font-size:clamp(2.6rem,5vw,4.2rem);line-height:1.04;letter-spacing:-.055em;font-weight:500;margin:22px 0 22px;max-width:720px}
.rx-hero h1 span{color:var(--rojo-claro)}
.rx-hero .lead{color:#acb3c0;font-size:1rem;line-height:1.8;max-width:640px}
.rx-chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;position:relative;z-index:1}
.rx-chips li{font-size:.8125rem;color:#d3d7de;border:1px solid #ffffff22;border-radius:4px;padding:8px 12px}
.rx-chips b{color:#fff;font-weight:700}
.rx-tool{margin-top:-84px;position:relative;z-index:2;padding-bottom:40px}
.rx-panel{background:#fff;border:1px solid var(--linea);border-radius:10px;box-shadow:var(--sombra);padding:30px}
.rx-options{display:flex;flex-wrap:wrap;align-items:flex-end;gap:18px 34px;margin-bottom:22px}
.rx-seg{border:0;min-width:0}
.rx-seg legend{font-size:.75rem;letter-spacing:.1em;font-weight:800;text-transform:uppercase;color:var(--gris);margin-bottom:10px}
.rx-seg-row{display:inline-flex;flex-wrap:wrap;background:var(--hueso);border:1px solid var(--linea);border-radius:6px;padding:4px;gap:4px}
.rx-seg label{position:relative;cursor:pointer}
.rx-seg input{position:absolute;opacity:0;width:1px;height:1px}
.rx-seg span{display:block;padding:9px 15px;border-radius:4px;font-size:.875rem;font-weight:700;color:var(--texto);transition:background .15s,color .15s;min-height:40px;line-height:22px}
.rx-seg label:hover span{color:var(--rojo)}
.rx-seg input:checked+span{background:var(--negro);color:#fff}
.rx-seg input:focus-visible+span{outline:2px solid var(--rojo);outline-offset:2px}
.rx-hint{flex:1 1 260px;font-size:.8125rem;color:var(--gris);line-height:1.6;padding-bottom:8px}
.rx-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;min-height:230px;border:2px dashed #cdd2d9;border-radius:8px;background:#fafbfc;cursor:pointer;padding:30px 20px;transition:border-color .2s,background .2s}
.rx-drop:hover,.rx-drop.over{border-color:var(--rojo);background:#fff7f8}
.rx-drop:focus-within{outline:2px solid var(--rojo);outline-offset:3px}
.rx-drop input{position:absolute;opacity:0;width:1px;height:1px}
.rx-drop svg{width:46px;height:46px;color:var(--rojo);margin-bottom:6px}
.rx-drop-title{font-family:var(--heading);font-size:1.35rem;font-weight:600;letter-spacing:-.03em;color:var(--negro)}
.rx-drop-sub{font-size:.9375rem;color:var(--gris)}.rx-drop-sub u{color:var(--rojo);font-weight:700;text-underline-offset:3px}
.rx-drop-types{margin-top:8px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.75rem;color:#8a919d;letter-spacing:.02em}
.rx-list-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:26px 0 12px}
.rx-list-head p{font-size:.875rem;color:var(--gris)}
.rx-clear{background:none;border:0;color:var(--gris);font-size:.8125rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;min-height:40px}
.rx-clear:hover{color:var(--rojo)}
.rx-list{display:grid;gap:14px}
.rx-card{border:1px solid var(--linea);border-radius:8px;overflow:hidden;background:#fff}
.rx-card[data-state=error]{border-color:#f0b9c3}
.rx-card-head{display:flex;align-items:center;gap:16px;padding:18px 20px}
.rx-file{display:flex;align-items:center;gap:14px;flex:1;min-width:0}
.rx-ico{flex-shrink:0;width:46px;height:52px;border-radius:4px;background:var(--negro);color:#fff;display:grid;place-items:center;font-family:ui-monospace,Consolas,monospace;font-size:.6875rem;font-weight:700;letter-spacing:.04em;position:relative}
.rx-ico:after{content:'';position:absolute;top:0;right:0;border-width:0 10px 10px 0;border-style:solid;border-color:#fff #fff var(--carbon-3) var(--carbon-3)}
.rx-file b{display:block;font-size:.9375rem;color:var(--negro);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rx-file small{display:block;font-size:.8125rem;color:var(--gris)}
.rx-status{font-size:.8125rem;font-weight:700;white-space:nowrap;color:var(--gris)}
.rx-card[data-state=done] .rx-status{color:#157e42}
.rx-card[data-state=error] .rx-status{color:var(--rojo)}
.rx-remove{flex-shrink:0;width:36px;height:36px;border:1px solid var(--linea);background:#fff;border-radius:50%;font-size:1.2rem;line-height:1;color:var(--gris)}
.rx-remove:hover{color:var(--rojo);border-color:var(--rojo)}
.rx-progress{height:3px;background:var(--hueso)}
.rx-progress span{display:block;height:100%;width:0;background:var(--rojo);transition:width .15s}
.rx-card[data-state=done] .rx-progress,.rx-card[data-state=error] .rx-progress{display:none}
.rx-body{border-top:1px solid var(--linea);padding:20px}
.rx-body:empty{display:none}
.rx-error{color:var(--rojo-osc);font-size:.9375rem;line-height:1.7}
.rx-steps{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:8px 26px;margin-bottom:18px}
.rx-steps li{position:relative;font-size:.75rem;font-weight:700;background:var(--hueso);border:1px solid var(--linea);border-radius:3px;padding:5px 9px;color:var(--texto)}
.rx-steps li+li:before{content:'→';position:absolute;left:-19px;top:50%;transform:translateY(-50%);color:var(--rojo);font-weight:400}
.rx-steps li.final{background:var(--negro);border-color:var(--negro);color:#fff}
.rx-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--linea);border-radius:6px;overflow:hidden;margin-bottom:18px}
.rx-facts div{padding:12px 14px;min-width:0;border-right:1px solid var(--linea);border-bottom:1px solid var(--linea);margin:0 -1px -1px 0}
.rx-facts dt{font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:#8a919d;font-weight:800;margin-bottom:4px}
.rx-facts dd{font-size:.875rem;color:var(--negro);font-weight:600;overflow-wrap:anywhere}
.rx-downloads{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:6px}
.rx-downloads .btn{gap:12px}
.rx-downloads small{font-weight:500;opacity:.8}
.rx-time{font-size:.75rem;color:#8a919d;margin-top:8px}
.rx-more{margin-top:14px;border-top:1px solid var(--linea)}
.rx-more summary{list-style:none;cursor:pointer;padding:14px 0 4px;font-size:.875rem;font-weight:800;color:var(--negro);display:flex;align-items:center;gap:10px}
.rx-more summary::-webkit-details-marker{display:none}
.rx-more summary:before{content:'+';width:22px;height:22px;display:grid;place-items:center;border:1px solid #cfd4db;border-radius:50%;color:var(--rojo);font-weight:400;transition:transform .2s}
.rx-more[open] summary:before{transform:rotate(45deg)}
.rx-more summary:focus-visible{outline:2px solid var(--rojo);outline-offset:3px}
.rx-more-body{padding:12px 0 4px}
.rx-map{border-collapse:collapse;font-size:.8125rem;margin-bottom:12px;min-width:280px}
.rx-map caption{text-align:left;font-weight:800;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gris);padding-bottom:6px}
.rx-map th,.rx-map td{border:1px solid var(--linea);padding:6px 12px;text-align:left;font-family:ui-monospace,Consolas,monospace}
.rx-map th{background:var(--hueso);font-family:var(--font);font-weight:800}
.rx-maps{display:flex;flex-wrap:wrap;gap:16px;overflow-x:auto}
.rx-notes{list-style:none;display:grid;gap:6px;font-size:.8125rem;line-height:1.6;color:var(--gris)}
.rx-notes li{padding-left:16px;position:relative}
.rx-notes li:before{content:'';position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:#bfc4cc}
.rx-notes li.warn{color:#8a4b00}.rx-notes li.warn:before{background:#e69a1e}
.rx-pre{background:#0f1115;color:#d7dbe2;border-radius:6px;padding:14px 16px;font-size:.75rem;line-height:1.55;overflow:auto;max-height:420px;white-space:pre;tab-size:8}
.rx-feats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.rx-feats article{border:1px solid var(--linea);border-radius:8px;padding:26px;background:#fff}
.rx-feat-n{font-family:var(--heading);font-size:2.2rem;color:#d5d9df;letter-spacing:-.05em;display:block;line-height:1;margin-bottom:18px}
.rx-feats h3{font-size:1.2rem;margin-bottom:10px;color:var(--negro)}
.rx-feats p{font-size:.875rem;line-height:1.75;color:var(--gris)}
.rx-info{background:var(--hueso);border-top:1px solid var(--linea)}
.rx-trimble{margin-top:24px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--negro);color:#c9ced6;border-radius:8px;padding:30px}
.rx-trimble h3{color:#fff;font-size:1.4rem;margin:14px 0 8px}
.rx-trimble p{font-size:.9375rem;line-height:1.7;max-width:640px}
.rx-trimble .btn{flex-shrink:0}
.rx-limits{margin-top:24px;border:1px solid var(--linea);border-radius:8px;background:#fff;padding:26px}
.rx-limits h3{font-size:1.1rem;margin-bottom:12px;color:var(--negro)}
.rx-limits ul{list-style:none;display:grid;gap:10px}
.rx-limits li{font-size:.875rem;line-height:1.7;color:var(--gris);padding-left:18px;position:relative}
.rx-limits li:before{content:'';position:absolute;left:0;top:.7em;width:7px;height:2px;background:var(--rojo)}
.rx-limits b{color:var(--negro)}
@media(max-width:1000px){.rx-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.rx-feats{grid-template-columns:1fr}.rx-trimble{flex-direction:column;align-items:flex-start}}
@media(max-width:760px){.rx-hero{padding:30px 0 104px}.rx-panel{padding:20px}.rx-options{gap:16px}.rx-seg-row{display:flex}.rx-seg label{flex:1}.rx-seg span{text-align:center;padding:9px 10px}.rx-drop{min-height:190px}.rx-card-head{flex-wrap:wrap;padding:16px}.rx-status{order:3;width:100%;padding-left:60px}.rx-body{padding:16px}.rx-downloads .btn{width:100%;justify-content:space-between}}
@media(max-width:480px){.rx-map{min-width:0;flex:1 1 100%}.rx-maps{overflow:visible}.rx-panel{padding:16px;border-radius:8px}.rx-facts{grid-template-columns:1fr 1fr}.rx-facts div{padding:10px}.rx-trimble{padding:22px}.rx-limits,.rx-feats article{padding:20px}}

/* Archivo Trimble: confirmación antes de enviarlo al servidor */
.rx-card[data-state=ask]{border-color:#e9c46a}
.rx-card[data-state=ask] .rx-status{color:#8a4b00}
.rx-card[data-state=ask] .rx-progress{display:none}
.rx-ask{font-size:.9375rem;line-height:1.7;color:var(--texto);margin-bottom:14px;max-width:760px}