@font-face {
    font-family: 'Fuente-CMC7';
    src: url('../fonts/Cmc7.ttf') format('truetype'); 
}

.gc-main-container { max-width: 850px; margin: 20px auto; font-family: Arial, sans-serif; }

.gc-panel-control { 
    background: #f8f8f8; padding: 15px; border: 1px solid #ddd; 
    margin-bottom: 15px; display: flex; flex-wrap: wrap; gap: 12px;
    justify-content: space-between; border-radius: 8px;
}

.gc-seccion-titulo {
    width: 100%; font-size: 13px; font-weight: bold; color: #fff;
    background: #2c3e50; padding: 6px 12px; margin-top: 5px; border-radius: 4px;
}

.gc-grupo-inputs { display: flex; flex-direction: column; }
.gc-grupo-inputs label { font-size: 11px; font-weight: bold; margin-bottom: 4px; color: #444; }
.gc-grupo-inputs input, .gc-grupo-inputs select { border: 1px solid #ccc; font-size: 14px; padding: 6px; height: 38px; }

.gc-botones { width: 100%; display: flex; gap: 10px; margin-top: 15px; flex-wrap: wrap; }
.btn-verde { background: #27ae60; color: white; border: none; padding: 12px 18px; cursor: pointer; font-weight: bold; border-radius: 4px; }
.btn-azul { background: #2980b9; color: white; border: none; padding: 12px 18px; cursor: pointer; font-weight: bold; border-radius: 4px; }
.btn-naranja { background: #e67e22; color: white; border: none; padding: 12px 18px; cursor: pointer; font-weight: bold; border-radius: 4px; }

.gc-canvas {
    position: relative; width: 800px; height: 350px; 
    border: 1px solid #444; overflow: hidden; background-color: #fff;
    box-sizing: border-box; 
}

.gc-img-fondo {
    position: absolute; top: 0; left: 0; width: 800px; height: 350px;
    z-index: 1; pointer-events: none;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
}

.draggable {
    position: absolute; cursor: move; font-family: 'Courier New', Courier, monospace;
    white-space: nowrap; border: 1px dashed rgba(255,0,0,0.5);
    background: rgba(255,0,0,0.05); z-index: 10; line-height: 1;
}

/* CONFIGURACIÓN DE NEGRO TOTAL PARA CMC7 */
.font-cmc7 {
    font-family: 'Fuente-CMC7', sans-serif !important;
    /* Forzamos al navegador a no diluir el negro con suavizados */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: geometricPrecision;
}

.ui-resizable-handle {
    position: absolute; width: 10px; height: 10px; background-color: #007bff;
    bottom: -5px; right: -5px; cursor: se-resize; z-index: 100;
}

@media print {
    @page { margin: 0; size: auto; }
    body * { visibility: hidden; }
    #cheque_canvas { 
        visibility: visible !important;
        position: absolute !important; 
        left: 0 !important; top: 0 !important; 
        margin: 0 !important; padding: 0 !important;
        border: none !important; width: 800px !important; height: 350px !important;
    }
    #cheque_canvas * { visibility: visible; }
    .gc-img-fondo { display: block !important; width: 800px !important; height: 350px !important; }
    .draggable { position: absolute !important; border: none !important; background: transparent !important; box-shadow: none !important; }
    .ui-resizable-handle { display: none !important; visibility: hidden !important; }
}