/* JF Creations Costing System - Global Styles */

/* Hide scrollbars for clean modern look */
::-webkit-scrollbar {
    display: none;
}

* {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

@keyframes slideInRight {
    from {
        transform: translateX(100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes fadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

.toast-enter {
    animation: slideInRight 0.3s ease-out forwards;
}

.toast-exit {
    animation: fadeOut 0.3s ease-out forwards;
}

#error-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fee;
    border-bottom: 2px solid red;
    color: red;
    padding: 15px;
    z-index: 9999;
    font-weight: bold;
    font-family: monospace;
}

input:focus,
select:focus,
textarea:focus {
    outline: none;
    box-shadow: none;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}

/* Tooltip & embed viewer styles */
.attachment-frame {
    width: 100%;
    height: 100%;
    min-height: 480px;
    border: none;
    background: #ffffff;
}

@media print {
    .no-print {
        display: none !important;
    }
    .print-only {
        display: block !important;
    }
    body {
        background: white !important;
    }
    * {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
    @page {
        margin: 10mm;
    }
}
