/* ============================================================
   RodoWall PAD — Registro e Importação
   ------------------------------------------------------------
   Formulário de registro de desvios e área de importação de telemetria.
   ============================================================ */

/*  REGISTRO (full page)  */
.reg-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.reg-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:18px;box-shadow:0 1px 3px rgba(0,0,0,.2);}
.reg-card.full{grid-column:1/-1;}
.reg-title{font-family:"Montserrat";font-size:14px;letter-spacing:1px;color:var(--text2);margin-bottom:14px;display:flex;align-items:center;gap:6px;}
.reg-title b{color:var(--navy);}
.fg{margin-bottom:12px;}
.fg label{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--text2);display:block;margin-bottom:5px;font-weight:600;}
.fg label .req{color:var(--red);}
.fi,.fs,.fta{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:7px;padding:9px 11px;color:var(--text);font-size:13px;outline:none;transition:border-color .2s;}
.fi:focus,.fs:focus,.fta:focus{border-color:var(--mustard);}
.fi.err,.fs.err{border-color:var(--red);background:var(--red-dim);}
.fi::placeholder,.fta::placeholder{color:var(--text3);}
.fta{resize:vertical;min-height:60px;}
.infr-wrap{position:relative;}
.infr-dd{position:absolute;top:calc(100%+3px);left:0;right:0;z-index:300;background:var(--surface);border:1px solid var(--border2);border-radius:8px;max-height:180px;overflow-y:auto;display:none;box-shadow:0 8px 24px rgba(0,0,0,.3);}
.infr-opt{padding:9px 12px;cursor:pointer;font-size:12px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;transition:background .1s;}
.infr-opt:hover{background:var(--surface2);}
.infr-opt:last-child{border-bottom:none;}
.infr-pts{font-family:"JetBrains Mono";font-size:11px;font-weight:700;flex-shrink:0;margin-left:8px;}
.sel-infr{background:var(--mustard-dim);border:1px solid rgba(181,145,27,.25);border-radius:7px;padding:8px 11px;font-size:12px;display:none;justify-content:space-between;align-items:center;gap:7px;margin-top:5px;}
.sel-infr.show{display:flex;}
.sel-infr-name{flex:1;font-weight:600;font-size:11px;}
.sel-infr-x{background:none;border:none;color:var(--text3);cursor:pointer;font-size:15px;flex-shrink:0;}
.pts-box{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;}
.pts-box-lbl{font-size:11px;color:var(--text2);}
.pts-box-val{font-family:"Montserrat";font-size:28px;color:var(--mustard);}
.info-note{background:var(--surface2);border:1px solid var(--border);border-radius:7px;padding:9px 12px;font-size:11px;color:var(--text2);display:flex;align-items:flex-start;gap:7px;margin-bottom:12px;}
.info-note .ico{flex-shrink:0;font-size:14px;}
.pdf-drop{border:2px dashed var(--border2);border-radius:8px;padding:14px;text-align:center;cursor:pointer;transition:border-color .2s;}
.pdf-drop:hover{border-color:var(--mustard);}
.pdf-drop input{display:none;}
.pdf-fn{font-size:11px;color:var(--text2);margin-top:4px;}
.conclude-box{background:rgba(52,211,153,.05);border:1px solid rgba(52,211,153,.2);border-radius:10px;padding:14px;margin-top:10px;}
.conclude-box-title{font-family:'Poppins',sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--green);margin-bottom:10px;display:flex;align-items:center;gap:6px;}
.pdf-adv-drop{border:2px dashed rgba(0,120,60,.3);border-radius:8px;padding:12px;text-align:center;cursor:pointer;transition:all .2s;background:rgba(0,120,60,.03);}
.pdf-adv-drop:hover{border-color:#007a40;background:rgba(0,120,60,.06);}
.pdf-adv-drop input{display:none;}
.pdf-adv-fn{font-size:11px;color:#007a40;margin-top:4px;font-weight:500;}
.size-warn{background:rgba(225,112,85,.1);border:1px solid rgba(225,112,85,.3);border-radius:6px;padding:7px 10px;font-size:11px;color:var(--orange);margin-top:6px;display:none;}
.conclude-badge{display:inline-flex;align-items:center;gap:5px;background:rgba(0,120,60,.08);border:1px solid rgba(0,120,60,.2);border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700;color:#007a40;}
.reg-btns{display:flex;gap:8px;margin-top:4px;}
.reg-btn{flex:1;padding:11px;border-radius:8px;border:none;font-weight:700;font-size:13px;cursor:pointer;transition:all .2s;}
.reg-btn.primary{background:var(--mustard);color:var(--navy);}
.reg-btn.primary:hover{background:var(--mustard2);}
.reg-btn.cancel{background:var(--surface2);color:var(--text2);border:1px solid var(--border);}
.reg-btn.cancel:hover{border-color:var(--red);color:var(--red);}

/* IMPORT EXCEL */
.import-drop{border:2px dashed var(--border2);border-radius:12px;padding:32px;text-align:center;cursor:pointer;transition:all .2s;background:var(--surface2);}
.import-drop:hover,.import-drop.drag{border-color:var(--mustard);background:var(--mustard-dim);}
.import-drop input{display:none;}
.import-icon{font-size:36px;margin-bottom:8px;}
.import-title{font-size:14px;font-weight:600;color:var(--navy);}
.import-sub{font-size:11px;color:var(--text2);margin-top:4px;}
.import-preview{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-top:14px;overflow:hidden;}
.import-preview-head{background:var(--navy);color:#fff;padding:10px 14px;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:space-between;}
.preview-table{width:100%;border-collapse:collapse;font-size:11px;max-height:300px;overflow-y:auto;display:block;}
.preview-table th{text-align:left;padding:7px 10px;background:var(--surface2);font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:var(--text2);border-bottom:1px solid var(--border);}
.preview-table td{padding:7px 10px;border-bottom:1px solid var(--border);white-space:nowrap;}
.import-actions{padding:12px 14px;display:flex;gap:8px;align-items:center;background:var(--surface2);border-top:1px solid var(--border);}
.import-match{margin-bottom:10px;font-size:12px;}
.match-ok{color:var(--green);}
.match-warn{color:var(--orange);}
.match-err{color:var(--red);}
