/*
 * Nisbaty Frontend Styles
 * Scope: public pages & shortcodes
 * Theme compatibility: Woodmart & WP defaults
 * Author: MAKcubes
 */

/* ===== Nisbaty Frontend (scoped) ===== */
:root{
  --nis-bg:#f4f6f8;
  --nis-surface:#ffffff;
  --nis-text:#1f2937;
  --nis-muted:#6b7a8c;
  --nis-primary:#2271b1;
  --nis-primary-2:#1c5d91;
  --nis-dark:#2f3a4b;
  --nis-success:#188b3c;
  --nis-warning:#cc8a00;
  --nis-danger:#b32d2e;
  --nis-chip:#eef1f5;
  --nis-chip-alt:#e7f1fb;
  --nis-radius:12px;
  --nis-radius-lg:18px;
  --nis-shadow:0 4px 16px rgba(0,0,0,.06);
}

/* Containers */
.nis-wrap{max-width:1140px;margin:32px auto;padding:0 15px}
.nis-grid{display:grid;grid-template-columns:1.6fr .9fr;gap:30px}
@media (max-width:980px){.nis-grid{grid-template-columns:1fr}}
.nis-card{background:var(--nis-bg);border-radius:var(--nis-radius);padding:18px;box-shadow:var(--nis-shadow)}
.nis-surface{background:var(--nis-surface);border-radius:var(--nis-radius);padding:14px;box-shadow:var(--nis-shadow)}

/* Typography & chips */
.nis-title{font-size:32px;font-weight:800;margin:0 0 12px}
.nis-sub{color:var(--nis-muted);font-size:12px;text-transform:uppercase;margin:0 0 14px;letter-spacing:.04em}
.nis-h3{font-size:18px;font-weight:800;margin:0 0 10px}
.nis-muted{color:var(--nis-muted)}
.nis-badge{display:inline-block;background:#e7f7ec;color:var(--nis-success);border-radius:999px;padding:6px 12px;font-weight:700;font-size:13px}
.nis-meta{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}
.nis-meta .tag{background:var(--nis-chip);border-radius:999px;padding:7px 12px;font-size:13px;display:inline-flex;align-items:center;gap:6px}

/* Buttons */
.nis-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:11px 16px;font-weight:700;border:0;background:var(--nis-primary);color:#fff;text-decoration:none;cursor:pointer;transition:transform .04s ease,opacity .15s ease}
.nis-btn:hover{background:var(--nis-primary-2)}
.nis-btn:active{transform:translateY(1px)}
.nis-btn.secondary{background:var(--nis-dark)}
.nis-btn.ghost{background:var(--nis-chip);color:var(--nis-dark)}
.nis-btn-group{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}

/* Forms (scoped to nisbaty-form only) */
.nisbaty-form input[type="text"],
.nisbaty-form input[type="email"],
.nisbaty-form input[type="number"],
.nisbaty-form input[type="date"],
.nisbaty-form textarea,
.nisbaty-form select{
  width:100%;
  border:1px solid #e2e8f0;
  background:#fff;
  border-radius:10px;
  padding:10px 12px;
  outline:none;
  font-size:14px;
  box-sizing:border-box;
}
.nisbaty-form textarea{min-height:120px}
.nisbaty-form input:focus,
.nisbaty-form textarea:focus,
.nisbaty-form select:focus{border-color:var(--nis-primary);box-shadow:0 0 0 2px rgba(34,113,177,.12)}
.nisbaty-form .help{font-size:12px;color:var(--nis-muted);margin-top:4px}

/* Notices */
.notice{padding:10px 12px;border-radius:10px;margin:8px 0;font-weight:600}
.notice.success{background:#e7f7ec;color:var(--nis-success)}
.notice.error{background:#fde8e8;color:var(--nis-danger)}

/* Tables (offers, generic) */
table.nisbaty-table{width:100%;border-collapse:collapse;background:var(--nis-surface);border-radius:var(--nis-radius);overflow:hidden;box-shadow:var(--nis-shadow)}
table.nisbaty-table th,table.nisbaty-table td{padding:10px 12px;border-bottom:1px solid #e2e8f0;text-align:left;font-size:14px}
table.nisbaty-table th{background:#f8fafc;font-weight:800}
table.nisbaty-table tr:last-child td{border-bottom:0}

/* Single Project */
.nis-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.nis-gallery img{width:100%;height:180px;object-fit:cover;border-radius:10px;display:block}
@media (max-width:640px){.nis-gallery{grid-template-columns:1fr}.nis-gallery img{height:200px}}
.nis-map iframe{width:100%;height:300px;border:0;border-radius:14px}
.nis-offer-block .nisbaty-form{margin-top:12px}
.nis-offer-block .nis-h3{margin-top:6px}

/* Search & Filters */
.ns-wrap{max-width:1140px;margin:20px auto;padding:0 15px}
.ns-filters{
  display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px;background:var(--nis-bg);
  border-radius:var(--nis-radius);padding:12px;box-shadow:var(--nis-shadow)
}
.ns-filters input,.ns-filters select{min-width:140px}
.ns-filters .ns-btn{padding:9px 14px;border-radius:8px;background:var(--nis-primary);color:#fff;text-decoration:none;border:0}
.ns-list{display:grid;gap:12px}
.ns-item{
  background:var(--nis-bg);border-radius:var(--nis-radius);padding:14px;display:grid;
  grid-template-columns:80px 1fr auto;gap:14px;align-items:center;box-shadow:var(--nis-shadow)
}
.ns-item .thumb{width:80px;height:80px;background:#1a202c;border-radius:8px;overflow:hidden}
.ns-item .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ns-item .ttl{font-weight:800;font-size:16px;margin-bottom:4px}
.ns-item .price{font-weight:800}
.ns-pg{display:flex;gap:8px;justify-content:center;margin-top:14px}
.ns-pg .ns-btn{padding:8px 12px;border-radius:8px;background:var(--nis-primary);color:#fff;text-decoration:none}
.ns-pg .ns-btn[style*="background:#2f3a4b"]{background:var(--nis-dark)}
.nis-small{font-size:13px;color:var(--nis-muted)}

/* Contracts list */
.cl-wrap{max-width:1140px;margin:20px auto;padding:0 15px}
.cl-head{font-weight:800;margin-bottom:10px}
.cl-row{
  background:var(--nis-bg);border-radius:var(--nis-radius);padding:12px;display:grid;
  grid-template-columns:1fr 120px 150px 140px 160px;gap:10px;align-items:center;box-shadow:var(--nis-shadow)
}
.cl-badge{background:var(--nis-chip);border-radius:999px;padding:6px 10px;font-weight:700;font-size:13px}
.cl-actions a{margin-left:8px}

/* Utility spacing */
.mt-0{margin-top:0}.mt-4{margin-top:4px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}
.mb-0{margin-bottom:0}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}

/* ===== Nisbaty Submit Project Layout ===== */
.nis-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;margin:20px 0}
@media (max-width: 980px){.nis-grid{grid-template-columns:1fr}}
.nis-card{background:#f7fafc;border-radius:14px;padding:18px;box-shadow:0 6px 26px rgba(2,16,36,0.06)}
.nis-card.form h2{margin-top:0}
.nis-alert.success{background:#e7f6ea;color:#256c2b;border-radius:10px;padding:10px 12px;margin-bottom:12px;border:1px solid #b7e2bf}
.nis-help{font-size:13px;color:#6b7a8c;margin:6px 0}
.nis-row{display:flex;gap:16px}
.nis-col-2{flex:1}
.nis-input,.nis-textarea, .nis-card select{width:100%;padding:10px 12px;border-radius:8px;border:1px solid #d8e1ea;background:#fff}
.nis-textarea{min-height:120px}
.nis-map-wrap{margin:12px 0}
.nis-col.side .nis-card{position:sticky;top:90px}

/* Lists tables spacing */
.nis-list table.widefat{margin-top:10px}


/* ===== Contract Tabs ===== */
.nis-tabs{display:flex;gap:8px;margin:12px 0}
.nis-tab{border:1px solid #d8e1ea;background:#fff;padding:8px 12px;border-radius:10px;cursor:pointer}
.nis-tab.active{background:#1a73e8;color:#fff;border-color:#1a73e8}
.nis-tabpanes .nis-tabpane{display:none;margin-top:8px}
.nis-tabpanes .nis-tabpane.active{display:block}
.nis-heading{margin-bottom:10px}

/* Financial summary table spacing */
.nis-contract .widefat { margin-top: 8px; }


/* ===== Status Badges ===== */
.nis-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;border:1px solid #d8e1ea;background:#fff}
/* Milestones */
.nis-ms-ms_open{background:#e8f2ff;border-color:#bcd8ff}
.nis-ms-ms_in_progress{background:#e8f2ff;border-color:#bcd8ff}
.nis-ms-ms_delivered{background:#fff4e5;border-color:#ffd599}
.nis-ms-ms_approved{background:#e9fbef;border-color:#b8efcc}
.nis-ms-ms_paid{background:#e6f9ff;border-color:#bfefff}
.nis-ms-ms_cancelled{background:#ffe8e8;border-color:#ffc4c4}
/* Payments */
.nis-pay-payment_pending{background:#f1f3f4;border-color:#d9e2ec}
.nis-pay-payment_paid{background:#e9fbef;border-color:#b8efcc}
.nis-pay-payment_failed{background:#ffe8e8;border-color:#ffc4c4}
.nis-pay-payment_refunded{background:#f3e9ff;border-color:#dfc8ff}
/* Invoices */
.nis-inv-invoice_draft{background:#f1f3f4;border-color:#d9e2ec}
.nis-inv-invoice_sent{background:#e8f2ff;border-color:#bcd8ff}
.nis-inv-invoice_paid{background:#e9fbef;border-color:#b8efcc}
.nis-inv-invoice_overdue{background:#fff4e5;border-color:#ffd599}
.nis-inv-invoice_cancelled{background:#ffe8e8;border-color:#ffc4c4}

.nis-pagination{margin-top:12px}
.nis-pagination a{display:inline-block;margin-right:6px;padding:6px 10px;border:1px solid #e5e7eb;border-radius:4px;text-decoration:none}
.nis-pagination a.active{background:#111827;color:#fff;border-color:#111827}

/* Nisbaty Project Page Styling */
.nis-wrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.nis-sub {
    font-size: 24px;
    margin-bottom: 15px;
    font-weight: bold;
}

.nis-card {
    background: #fff;
    padding: 20px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
}

.nis-title {
    font-size: 32px;
    margin-bottom: 20px;
    color: #333;
}

.nis-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 20px;
}

.nis-meta .tag {
    background: #f5f5f5;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 14px;
    color: #333;
}

.nis-gallery {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.nis-gallery img {
    max-width: 100%;
    border-radius: 8px;
}

.nis-btn {
    display: inline-block;
    background-color: #007bff;
    color: #fff;
    padding: 10px 20px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    margin-top: 15px;
}

.nis-btn:hover {
    background-color: #0056b3;
}

.nis-map-view {
    height: 300px;
    width: 100%;
    background-color: #e5e5e5;
    border-radius: 8px;
}

.nis-h3 {
    font-size: 22px;
    margin-top: 30px;
}

.nis-muted {
    font-size: 14px;
    color: #777;
}

.nis-surface {
    padding: 20px;
    background: #f9f9f9;
    border-radius: 8px;
}

.nis-meta span {
    display: block;
    font-size: 14px;
    margin: 8px 0;
}
