﻿/* ============================================================
   LureWire accent variables - always loaded regardless of theme.
   Keeps inline styles on Default.aspx working in light and dark
   themes where lurewire.css is disabled.
   ============================================================ */
:root {
    --lw-orange:      #ff7d2e;
    --lw-orange-core: #f36d21;
    --lw-grey:        #8a8a8a;
    --lw-grey-dim:    #555049;
}

.toast-notification {
    position: fixed;
    top: 20px;
    right: 20px;
    padding: 12px 20px;
    border-radius: 4px;
    color: white;
    opacity: 0;
    transform: translateY(-20px);
    transition: all 0.3s ease;
    z-index: 9999;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    font-weight: 500;
}

    .toast-notification.show {
        opacity: 1;
        transform: translateY(0);
    }

    .toast-notification.success {
        background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
    }

    .toast-notification.error {
        background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
    }

    .toast-notification.info {
        background: linear-gradient(135deg, #17a2b8 0%, #138496 100%);
    }

    .toast-notification.warning {
        background: linear-gradient(135deg, #fd7e14 0%, #e8590c 100%);
    }

/* =============================================================
   Shared admin utilities
   Centralised so pages don't define their own conflicting copies.
   ============================================================= */

/* ---- Order-status badges (OrderList, ReceiveGoods) ---- */
.badge-status {
    font-size: 0.8rem;
    padding: 0.35em 0.65em;
}
.badge-pending      { background: linear-gradient(45deg, #f9a825, #fbc02d); color: #333; }
.badge-ordered      { background: linear-gradient(45deg, #1565c0, #1e88e5); color: #fff; }
.badge-partreceived { background: linear-gradient(45deg, #6a1b9a, #8e24aa); color: #fff; }
.badge-received     { background: linear-gradient(45deg, #2e7d32, #43a047); color: #fff; }
.badge-cancelled    { background: linear-gradient(45deg, #c62828, #e53935); color: #fff; }

/* ---- Quantity input (Receive, Order, BreakdownProduct, Transfer) ---- */
.qty-input {
    width: 80px;
    text-align: center;
}

/* ---- Row-state highlights for grids ---- */
tr.below-minimum,
.below-minimum {
    background-color: #fff3cd !important;
}
tr.out-of-stock {
    background-color: #f8d7da !important;
}

/* ---- Print helpers for report pages ---- */
@media print {
    body * { visibility: hidden; }
    .card,
    .card * { visibility: visible; }
    .card {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
    }
    .no-print { display: none !important; }
    .table { page-break-inside: auto; }
    .table tr {
        page-break-inside: avoid;
        page-break-after: auto;
    }
    .table thead { display: table-header-group; }
    @page {
        size: landscape;
        margin: 1cm;
    }
}
