/* Explain: Base reset and typography defaults */
* {
    box-sizing: border-box;
}

html {
    background: var(--background-color);
}

body {
    overflow-x: hidden;
    background-image: 
        linear-gradient(to right, rgba(128, 128, 128, 0.07) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(128, 128, 128, 0.07) 1px, transparent 1px);
    background-size: 40px 40px;
}

[x-cloak] {
    display: none !important;
}

/* Print optimizations for PDF Exports */
@media print {
    aside, header, nav, .btn, button, select {
        display: none !important;
    }
    body, main, .flex-1, .overflow-y-auto {
        overflow: visible !important;
        height: auto !important;
        background: white !important;
        color: black !important;
        display: block !important;
    }
    .shadow-sm, .shadow-md, .shadow-lg, .shadow-xl {
        box-shadow: none !important;
        border-color: #e2e8f0 !important;
    }
    .bg-\[var\(--surface-color\)\] {
        background: white !important;
    }
    canvas {
        max-width: 100% !important;
    }
}
