/* Workspace refresh: shared seller experience across every vertical. */
.dashboard-shell{align-items:stretch}
.dashboard-main{max-width:none;min-width:0}
.dashboard-main.seller-workspace{width:100%}

.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 24px}
.metric-card{position:relative;display:grid;gap:7px;min-width:0;min-height:132px;padding:19px 20px;border:1px solid #e5ebf4;border-radius:18px;background:linear-gradient(145deg,#fff,#f7faff);overflow:hidden;box-shadow:0 8px 22px rgba(23,43,77,.04)}
.metric-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(#57b9e5,#2465cb)}
.metric-card:nth-child(2):before{background:linear-gradient(#e3ad59,#d7802a)}
.metric-card:nth-child(3):before{background:linear-gradient(#fb9b77,#df5c47)}
.metric-card:nth-child(4):before{background:linear-gradient(#4ec58b,#16845b)}
.metric-card small{color:#6b7890;font-size:12px;font-weight:800}
.metric-card strong{color:#13244a;font-size:26px;line-height:1.25;letter-spacing:-.4px;overflow-wrap:anywhere}
.metric-card span{color:#7b879a;font-size:11px;font-weight:700}

.workspace-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;margin:16px 0}
.workspace-grid>.seller-block{height:100%;margin:0}
.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}
.section-heading span{display:block;color:#d18e2c;font-size:11px;font-weight:800;margin-bottom:3px}
.section-heading h2{margin:0!important;font-size:20px}
.section-heading p{max-width:480px;margin:0!important}

.dashboard-main .workspace-quick-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px;width:100%}
.dashboard-main .workspace-quick-form input,.dashboard-main .workspace-quick-form select,.dashboard-main .workspace-quick-form textarea{width:100%;min-width:0;min-height:42px;border:1px solid #d9e1ec;border-radius:10px;background:#fff;padding:10px 12px;color:#17233a;font:inherit}
.dashboard-main .workspace-quick-form label{display:flex;align-items:center;gap:7px;min-height:42px;color:#4f5e73;font-size:12px;font-weight:700}
.dashboard-main .workspace-quick-form label input{width:auto;min-height:0}
.dashboard-main .workspace-quick-form button,.inline-row button{min-height:42px;border:0;border-radius:10px;background:#2465cb;color:#fff;padding:10px 15px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}
.erp-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}
.erp-tags span{max-width:100%;padding:7px 10px;border:1px solid #dce6f4;border-radius:999px;background:#f7faff;color:#3c5579;font-size:11px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.empty-state{padding:15px!important;border-radius:11px;background:#fff8e8;color:#8f661f!important}
.table-wrap{overflow-x:auto;margin:0 -3px;padding:0 3px}
.table-wrap table{width:100%;min-width:570px;border-collapse:collapse}
.table-wrap th{color:#69778c;font-size:11px;font-weight:800;padding:11px 10px;text-align:right;background:#f7f9fc;border-bottom:1px solid #e7edf5}
.table-wrap td{padding:12px 10px;border-bottom:1px solid #edf1f6;color:#24324a;font-size:12px;vertical-align:middle}
.table-wrap tr:last-child td{border-bottom:0}
.dash-panel{min-width:0}
.dash-panel>h2{font-size:18px;margin:0 0 15px}

/* Catalog editors must consume the workspace width instead of becoming a thin rail. */
.seller-workspace .seller-block{width:100%;box-sizing:border-box}
.seller-workspace .menu-admin-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important;gap:16px!important;width:100%!important;align-items:start}
.seller-workspace .menu-admin-card{display:flex!important;flex-direction:column;align-items:stretch;gap:9px;width:auto!important;min-width:0;padding:14px!important;border:1px solid #e4ebf4;border-radius:16px!important;background:#fff!important;box-shadow:0 6px 16px rgba(27,49,85,.04)}
.seller-workspace .menu-admin-card img{width:100%!important;height:150px!important;object-fit:cover;border-radius:12px!important;background:#edf2f8}
.seller-workspace .menu-admin-card b{font-size:16px;line-height:1.4}
.seller-workspace .menu-admin-card p{min-height:36px;margin:0;font-size:12px;line-height:1.6}
.seller-workspace .menu-admin-card .inline-row{width:100%;box-sizing:border-box}
.seller-workspace .item-options{grid-column:1/-1!important;width:100%!important;box-sizing:border-box;margin:0!important;padding:12px!important;border-radius:12px!important;background:#fbfdff}
.seller-workspace .item-options .compact-form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%;box-sizing:border-box}
.seller-workspace .item-options .compact-form textarea,.seller-workspace .item-options .compact-form button,.seller-workspace .item-options .compact-form .check{grid-column:1/-1}
.seller-workspace .listing-form{width:100%!important;max-width:none!important}
.seller-workspace .listing-form:not(.ops-fields){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.seller-workspace .listing-form:not(.ops-fields)>h2,.seller-workspace .listing-form:not(.ops-fields)>h3,.seller-workspace .listing-form:not(.ops-fields)>textarea,.seller-workspace .listing-form:not(.ops-fields)>button,.seller-workspace .listing-form:not(.ops-fields)>.form-grid{grid-column:1/-1}

@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-main .workspace-quick-form{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.dashboard-main{padding:24px 14px}.workspace-grid,.metric-grid,.workspace-grid-3{grid-template-columns:1fr}.dashboard-main .workspace-quick-form,.seller-workspace .listing-form:not(.ops-fields),.seller-workspace .item-options .compact-form{grid-template-columns:1fr}.section-heading{flex-direction:column;gap:5px}.seller-workspace .menu-admin-grid{grid-template-columns:1fr!important}.metric-card{min-height:110px}.business-workspace-head{margin-top:0}}

/* Modern ERP UI Design System */
.erp-container {
    width: 100%;
    margin-top: 15px;
}

.erp-metrics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
    margin: 18px 0 28px;
}
.erp-metric-box {
    position: relative;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 18px 20px;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04);
    display: flex;
    flex-direction: column;
    gap: 6px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.erp-metric-box:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(15, 23, 42, 0.08);
}
.erp-metric-box::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 4px;
    border-radius: 14px 14px 0 0;
}
.erp-metric-box.metric-sales::before { background: linear-gradient(90deg, #2563eb, #38bdf8); }
.erp-metric-box.metric-cogs::before { background: linear-gradient(90deg, #f59e0b, #fbbf24); }
.erp-metric-box.metric-expenses::before { background: linear-gradient(90deg, #ef4444, #f87171); }
.erp-metric-box.metric-profit::before { background: linear-gradient(90deg, #10b981, #34d399); }
.erp-metric-box.metric-receivables::before { background: linear-gradient(90deg, #6366f1, #818cf8); }
.erp-metric-box.metric-payables::before { background: linear-gradient(90deg, #d97706, #fb923c); }

.erp-metric-title {
    font-size: 12px;
    font-weight: 700;
    color: #64748b;
    margin: 0;
}
.erp-metric-val {
    font-size: 24px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.2;
    margin: 0;
}
.erp-metric-sub {
    font-size: 11px;
    color: #94a3b8;
    margin: 0;
}

.erp-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    padding: 24px;
    margin-bottom: 24px;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.03);
}
.erp-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #f1f5f9;
    padding-bottom: 14px;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 12px;
}
.erp-card-header h2, .erp-card-header h3 {
    margin: 0;
    font-size: 17px;
    font-weight: 800;
    color: #1e293b;
    display: flex;
    align-items: center;
    gap: 8px;
}
.erp-card-header p {
    margin: 4px 0 0;
    font-size: 12px;
    color: #64748b;
}

.erp-split-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin-bottom: 24px;
}
@media (max-width: 992px) {
    .erp-split-grid {
        grid-template-columns: 1fr;
    }
}

.erp-form {
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
}
.erp-form-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: 100%;
}
.erp-form-group label {
    font-size: 12px;
    font-weight: 700;
    color: #334155;
    margin-bottom: 2px;
}
.erp-form-group input,
.erp-form-group select,
.erp-form-group textarea {
    width: 100%;
    min-height: 42px;
    padding: 8px 12px;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    font-size: 13px;
    color: #1e293b;
    background: #ffffff;
    box-sizing: border-box;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.erp-form-group input:focus,
.erp-form-group select:focus,
.erp-form-group textarea:focus {
    outline: none;
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.erp-row-2 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.erp-row-3 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.erp-row-4 {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
@media (max-width: 768px) {
    .erp-row-2, .erp-row-3, .erp-row-4 {
        grid-template-columns: 1fr;
    }
}

.erp-checkbox-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 600;
    color: #475569;
    cursor: pointer;
    margin-top: 6px;
}
.erp-checkbox-label input[type="checkbox"] {
    width: 18px;
    height: 18px;
    accent-color: #2563eb;
    margin: 0;
}

.erp-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 18px;
    font-size: 13px;
    font-weight: 700;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.15s ease, transform 0.1s ease;
    white-space: nowrap;
}
.erp-btn-primary {
    background: #2563eb;
    color: #ffffff !important;
}
.erp-btn-primary:hover {
    background: #1d4ed8;
}
.erp-btn-success {
    background: #10b981;
    color: #ffffff !important;
}
.erp-btn-success:hover {
    background: #059669;
}
.erp-btn-secondary {
    background: #f1f5f9;
    color: #334155 !important;
    border: 1px solid #cbd5e1;
}
.erp-btn-secondary:hover {
    background: #e2e8f0;
}
.erp-btn-sm {
    padding: 5px 12px;
    font-size: 11px;
}
.erp-actions-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
    flex-wrap: wrap;
}

/* Styled tables & badges */
.styled-table{width:100%;min-width:620px;border-collapse:collapse}
.styled-table th{background:#f8fafc;padding:12px 14px;font-size:12px;font-weight:800;color:#556987;border-bottom:2px solid #e2e8f0;text-align:right}
.styled-table td{padding:12px 14px;border-bottom:1px solid #edf2f7;font-size:13px;color:#2d3748;vertical-align:middle}
.styled-table tr:hover td{background:#fbfcfe}

.badge-type{display:inline-block;padding:3px 9px;border-radius:20px;background:#e9f2ff;color:#1d68cd;font-size:11px;font-weight:700}
.badge-debt{display:inline-block;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700}
.badge-danger{background:#fee2e2;color:#b91c1c}
.badge-warning{background:#fef3c7;color:#92400e}
.badge-success{background:#dcfce7;color:#15803d}
.badge-info{background:#e0f2fe;color:#0369a1}
.badge-default{background:#f1f5f9;color:#475569}

.badge-receipt{display:inline-block;padding:3px 9px;border-radius:6px;background:#dcfce7;color:#166534;font-size:11px;font-weight:700}
.badge-payment{display:inline-block;padding:3px 9px;border-radius:6px;background:#fee2e2;color:#991b1b;font-size:11px;font-weight:700}

.doc-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700}
.badge-draft{background:#f1f5f9;color:#64748b}
.badge-posted-paid{background:#dcfce7;color:#166534}
.badge-posted-partial{background:#fef3c7;color:#854d0e}
.badge-posted-unpaid{background:#fee2e2;color:#991b1b}

.inline-post-form{display:inline-flex;align-items:center;gap:6px}
.inline-post-form select{padding:5px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:11px;background:#fff}
.btn-post-doc{padding:5px 12px;background:#059669;color:#fff;border:none;border-radius:6px;font-size:11px;font-weight:700;cursor:pointer}
.btn-post-doc:hover{background:#047857}
.btn-verify-link{display:inline-block;padding:5px 12px;background:#2563eb;color:#fff!important;border-radius:6px;font-size:11px;font-weight:700;text-decoration:none}
.btn-verify-link:hover{background:#1d4ed8;color:#fff!important}
.actions-group{display:flex;align-items:center;gap:8px}

.payment-action-block{background:linear-gradient(135deg,#f8faff 0%,#f0f5ff 100%);border:1px solid #c7d9fc}
.btn-pay-submit{background:#1d4ed8;color:#fff;border:none;border-radius:8px;padding:10px 18px;font-weight:700;font-size:13px;cursor:pointer}
.btn-pay-submit:hover{background:#1e40af}
.btn-create-doc{background:#0d9488;color:#fff;border:none;border-radius:8px;padding:12px 24px;font-weight:800;font-size:14px;cursor:pointer}
.btn-create-doc:hover{background:#0f766e}
.check-label{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#475569;cursor:pointer}

/* Public Invoice Verification & Paper Layout */
.invoice-verify-container{max-width:850px;margin:35px auto;padding:0 15px}
.invoice-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.invoice-print-btn{display:inline-flex;align-items:center;gap:8px;background:#1e293b;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer}
.invoice-print-btn:hover{background:#0f172a}
.invoice-verified-badge{font-size:13px;font-weight:800;color:#059669;display:inline-flex;align-items:center;gap:6px;background:#d1fae5;padding:6px 14px;border-radius:20px}

.invoice-paper{background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 12px 35px rgba(15,23,42,.06);padding:36px;font-family:'Cairo',sans-serif}
.invoice-header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:24px;border-bottom:2px solid #f1f5f9;gap:20px}
.invoice-tag{display:inline-block;font-size:11px;font-weight:800;color:#6366f1;background:#eef2ff;padding:4px 10px;border-radius:6px;margin-bottom:8px}
.invoice-num{font-size:26px;font-weight:800;color:#0f172a;margin:0 0 6px}
.invoice-meta-date{font-size:13px;color:#64748b;margin:0 0 10px}
.invoice-type-pill{display:inline-block;padding:3px 10px;border-radius:6px;background:#f1f5f9;color:#334155;font-size:12px;font-weight:700}
.invoice-qr-box{text-align:center;background:#fafafa;padding:12px;border:1px solid #e2e8f0;border-radius:12px}
.invoice-qr-img{width:130px;height:130px;display:block;margin:0 auto 6px}
.invoice-qr-hint{font-size:10px;color:#64748b;display:block}

.invoice-parties-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:24px 0;border-bottom:1px solid #f1f5f9}
.party-col small{display:block;font-size:11px;font-weight:800;color:#94a3b8;margin-bottom:6px;text-transform:uppercase}
.party-col b{display:block;font-size:15px;color:#1e293b;margin-bottom:4px}
.party-col p{font-size:12px;color:#475569;margin:2px 0}
.status-col{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.pay-badge{padding:6px 14px;border-radius:20px;font-size:12px;font-weight:800}
.pay-badge-paid{background:#dcfce7;color:#15803d}
.pay-badge-partial{background:#fef3c7;color:#92400e}
.pay-badge-unpaid{background:#fee2e2;color:#b91c1c}
.doc-status-badge{font-size:11px;color:#64748b;font-weight:600}

.invoice-table-wrap{margin:28px 0;overflow-x:auto}
.invoice-table{width:100%;border-collapse:collapse}
.invoice-table th{background:#f8fafc;padding:12px 14px;font-size:12px;font-weight:800;color:#475569;border-bottom:2px solid #e2e8f0;text-align:right}
.invoice-table td{padding:14px;border-bottom:1px solid #f1f5f9;font-size:13px;color:#1e293b}
.item-sku{color:#64748b;font-size:11px;margin-right:6px}

.invoice-summary-grid{display:grid;grid-template-columns:1fr 340px;gap:30px;padding-top:16px;border-top:2px solid #f1f5f9}
.invoice-notes-block{font-size:12px;color:#475569}
.invoice-payment-history{margin-top:16px;padding:12px 16px;background:#f8fafc;border-radius:10px}
.invoice-payment-history h4{font-size:12px;font-weight:800;margin:0 0 8px;color:#334155}
.invoice-payment-history ul{margin:0;padding-right:18px;font-size:12px;color:#475569}
.invoice-payment-history li{margin-bottom:4px}

.invoice-totals-box{background:#f8fafc;padding:18px 20px;border-radius:12px;border:1px solid #e2e8f0}
.total-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;font-size:13px;color:#475569}
.total-row.grand-total{font-size:16px;padding:12px 0;border-top:1px dashed #cbd5e1;border-bottom:1px dashed #cbd5e1;margin:6px 0;color:#0f172a}
.total-row.grand-total strong{font-size:18px;color:#2563eb}
.total-row.paid-row{color:#15803d}
.total-row.balance-row{font-weight:800;font-size:14px}

.invoice-footer{margin-top:35px;padding-top:18px;border-top:1px solid #f1f5f9;text-align:center;font-size:11px;color:#94a3b8}
.invoice-footer code{background:#f1f5f9;padding:2px 6px;border-radius:4px;color:#475569}

/* ERP Tabs Navigation */
.erp-tabs-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 6px;
    margin: 16px 0 24px;
    overflow-x: auto;
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.03);
}
.erp-tab-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 10px;
    border: none;
    background: transparent;
    color: #64748b;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
    text-decoration: none;
}
.erp-tab-btn:hover {
    color: #1e293b;
    background: #f8fafc;
}
.erp-tab-btn.active {
    background: #2563eb;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.25);
}

.erp-tab-pane {
    display: none;
    animation: fadeIn 0.2s ease-in-out;
}
.erp-tab-pane.active {
    display: block;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Statement and Report Styles */
.statement-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 20px;
}
.statement-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px dashed #e2e8f0;
    font-size: 14px;
    color: #334155;
}
.statement-row.statement-header {
    font-size: 15px;
    font-weight: 800;
    color: #0f172a;
    border-bottom: 2px solid #cbd5e1;
    padding-bottom: 12px;
}
.statement-row.statement-highlight {
    background: #f8fafc;
    margin: 8px -12px;
    padding: 12px;
    border-radius: 8px;
    border-bottom: none;
    font-weight: 800;
    font-size: 15px;
}
.statement-row.statement-total {
    border-top: 2px solid #0f172a;
    border-bottom: 2px solid #0f172a;
    margin-top: 12px;
    padding: 14px 0;
    font-size: 17px;
    font-weight: 800;
    color: #0f172a;
}

@media print {
  .no-print, header, footer:not(.invoice-footer), .desktop-nav, .city-header, .mega-wrap, .city-footer, .erp-tabs-bar {
    display: none !important;
  }
  body, html {
    background: #fff !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .invoice-verify-container {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .invoice-paper {
    box-shadow: none !important;
    border: none !important;
    padding: 10px !important;
    border-radius: 0 !important;
  }
}
