/* SHARED FORM ELEMENTS */
.fg{display:flex;flex-direction:column;gap:6px}
.fg label{font-size:12px;font-weight:700;color:var(--muted)}
.fg input,.fg select{padding:10px 12px;border:1.5px solid var(--border);border-radius:9px;font-family:inherit;font-size:13px;color:var(--text);outline:none;background:#fff;direction:rtl}
.fg input:focus,.fg select:focus{border-color:var(--primary)}
.fg-row{display:flex;gap:12px}
.fg-row .fg{flex:1}

.btn-primary{padding:10px 20px;border-radius:9px;border:none;background:#c49a72;color:#3d2407;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:opacity .15s}
.btn-primary:hover{opacity:.88}
.btn-sec{padding:10px 20px;border-radius:9px;border:1px solid var(--border);background:#fff;color:var(--text);font-family:inherit;font-size:13px;font-weight:700;cursor:pointer}
.btn-sec:hover{background:var(--bg)}
.btn-sec:disabled,.btn-primary:disabled{opacity:.5;cursor:not-allowed}

/* MODAL */
.modal-ov{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:300;opacity:0;pointer-events:none;transition:opacity .2s}
.modal-ov.on{opacity:1;pointer-events:all}
.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-46%) scale(.96);width:460px;max-width:92vw;max-height:88vh;overflow-y:auto;background:#fff;border-radius:16px;box-shadow:var(--sh3);z-index:301;opacity:0;pointer-events:none;transition:all .2s cubic-bezier(.4,0,.2,1)}
.modal.open{opacity:1;pointer-events:all;transform:translate(-50%,-50%) scale(1)}
.modal-hd{padding:20px 22px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#fff;border-radius:16px 16px 0 0}
.modal-title{font-size:16px;font-weight:800;color:var(--text)}
.modal-body{padding:22px;display:flex;flex-direction:column;gap:16px}
.modal-ft{padding:16px 22px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:10px}

/* TABU IMPORT */
.tabu-modal{width:720px}
.tabu-step{display:flex;flex-direction:column;gap:14px}
.tabu-key-note{font-size:11px;color:var(--muted);line-height:1.5}
.tabu-key-note a{color:var(--primary)}
.tabu-file-row{display:flex;align-items:center;gap:10px}
.tabu-status{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:8px}
.spinner{width:16px;height:16px;border:2.5px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 0.7s linear infinite;flex-shrink:0}
@keyframes spin{to{transform:rotate(360deg)}}
.tabu-err{background:#fee2e2;color:#b91c1c;border-radius:9px;padding:10px 12px;font-size:12px;line-height:1.6}
.tabu-table{width:100%;border-collapse:collapse;font-size:12px}
.tabu-table th{text-align:right;font-size:11px;color:var(--muted);font-weight:700;padding:6px 8px;border-bottom:1px solid var(--border)}
.tabu-table td{padding:5px 8px;border-bottom:1px solid var(--border);vertical-align:middle}
.tabu-table input[type=text]{width:100%;border:1px solid var(--border);border-radius:6px;padding:5px 7px;font-family:inherit;font-size:12px;direction:rtl;outline:none}
.tabu-table input[type=text]:focus{border-color:var(--primary)}
.tabu-table-wrap{max-height:340px;overflow-y:auto;border:1px solid var(--border);border-radius:10px}
.tabu-summary{font-size:12px;color:var(--muted)}

@media(max-width:768px){
  .modal{width:94vw;max-height:92vh}
  .tabu-modal{width:94vw}
  .fg-row{flex-direction:column;gap:8px}
  .modal-body{padding:16px}
  .modal-ft{padding:12px 16px}
}
